TRIM: Porovnání verzí

Z Wikipedie, otevřené encyklopedie
Smazaný obsah Přidaný obsah
Roman3349Bot (diskuse | příspěvky)
m WPCleaner v1.34 - Opraveno pomocí WP:WCW (Externí odkaz bez popisu - Opravy pravopisu a typografie)
Formulce, styl, rozšíření
Řádek 1: Řádek 1:
'''TRIM''' je v [[Informatika|informatice]] označení příkazu umožňujícího, aby [[operační systém]] mohl informovat [[Solid-state drive|SSD]] disk o tom, které datové bloky jsou volné a nejsou dále využívány. Označují se tak nejtypičtěji datové bloky smazaného souboru (data nejsou nulována, jejich místo je k dispozici pro přepsání jinými daty). Příkaz TRIM slouží k tomu, aby SSD disk mohl správně alokovat rozložení zápisů a docházelo tak k rovnoměrnému opotřebení datových buněk v SSD disku. Částečně také snižuje počet I/O operací nutných v okamžiku potřeby zápisu nových dat na SSD.
'''TRIM''' je v [[Informatika|informatice]] označení příkazu umožňujícího, aby [[operační systém]] mohl informovat [[Solid-state drive|SSD]] disk o tom, které datové bloky obsahují dále již nepoužívaná data. Nejčastěji jsou tak označovány datové bloky právě smazaného souboru. Díky příkazu TRIM může být SSD disk rychlejší při zápisu dat a při správě opotřebení datových buněk pomocí mezivrstvy FTL (''Flash Translation Layer'').

== Popis činnosti ==
Při smazání souboru je obvyklé, že [[Kernel|jádro]] [[Operační systém|operačního systému]] smaže pouze [[metadata]], ale vlastní obsah souboru ponechá na disku. Z hlediska disku se jedná o stále platná data, které lze dokonce ''obnovit'' (tj. ''obnovení smazaných souborů''). U klasického [[Pevný disk|pevného disku]] to nevadí, protože operace zápisu je spojena se smazáním předchozích dat (čtecí hlava je kombinována s mazací hlavou), takže obě operace (mazání a nový zápis) proběhnou najednou. U SSD disků je však před zápisem nových dat nutné původní data nejprve smazat pomocí speciální operace a teprve pak je možné do „vyčištěného“ prostoru zapsat nová data. Nelze tedy spojit obě operace do jedné, a proto je operace zápisu navenek pomalejší. Předběžné smazání dat (jako reakce na příkazu TRIM) tedy částečně snižuje počet I/O operací nutných v okamžiku zápisu nových dat na SSD.

Příkazem TRIM informuje jádro systému SSD disk, která datové bloky už nejsou potřeba (obsahují již nepotřebná data) a mohou být proto smazány. Obvykle je operace TRIM prováděna v čase, kdy se neočekává od SSD disku žádná další činnost. Například v roce 2013 byla vydán verze 4.3 systému [[Android]], která přinesla podporu příkazu TRIM tak, že je prováděn typicky v noci, když není systém aktivní, je nabitý a je připojen k nabíječce.

Příkaz TRIM umožňuje též mezivrstvě FTL (''Flash Translation Layer''), aby mohla lépe pracovat tím, že ji označuje místa, která je v SSD disku možné přepsat a použít pro jiná data. Mezivrstva FTL se stará o to, aby všechny zápisové buňky flash paměti byly opotřebovány rovnoměrně, protože jejich životnost je omezena pouze na několik tisíc změn obsahu. Přesměrovává proto zápisy na méně opotřebené buňky. Díky příkazu TRIM získává informace o tom, které buňky jsou volné a je možné je použít.


Příkaz TRIM není možné podle normy zařadit do fronty, což znamená, že nejprve je nutné dokončit všechny operace, pak provést TRIM a pak teprve pokračovat. Tím může dojít k dost velké časové prodlevě. Příkaz TRIM by se tak neměl rutinně používat mezi jednotlivými diskovými operacemi.
Příkaz TRIM není možné podle normy zařadit do fronty, což znamená, že nejprve je nutné dokončit všechny operace, pak provést TRIM a pak teprve pokračovat. Tím může dojít k dost velké časové prodlevě. Příkaz TRIM by se tak neměl rutinně používat mezi jednotlivými diskovými operacemi.

Verze z 25. 11. 2014, 15:26

TRIM je v informatice označení příkazu umožňujícího, aby operační systém mohl informovat SSD disk o tom, které datové bloky obsahují dále již nepoužívaná data. Nejčastěji jsou tak označovány datové bloky právě smazaného souboru. Díky příkazu TRIM může být SSD disk rychlejší při zápisu dat a při správě opotřebení datových buněk pomocí mezivrstvy FTL (Flash Translation Layer).

Popis činnosti

Při smazání souboru je obvyklé, že jádro operačního systému smaže pouze metadata, ale vlastní obsah souboru ponechá na disku. Z hlediska disku se jedná o stále platná data, které lze dokonce obnovit (tj. obnovení smazaných souborů). U klasického pevného disku to nevadí, protože operace zápisu je spojena se smazáním předchozích dat (čtecí hlava je kombinována s mazací hlavou), takže obě operace (mazání a nový zápis) proběhnou najednou. U SSD disků je však před zápisem nových dat nutné původní data nejprve smazat pomocí speciální operace a teprve pak je možné do „vyčištěného“ prostoru zapsat nová data. Nelze tedy spojit obě operace do jedné, a proto je operace zápisu navenek pomalejší. Předběžné smazání dat (jako reakce na příkazu TRIM) tedy částečně snižuje počet I/O operací nutných v okamžiku zápisu nových dat na SSD.

Příkazem TRIM informuje jádro systému SSD disk, která datové bloky už nejsou potřeba (obsahují již nepotřebná data) a mohou být proto smazány. Obvykle je operace TRIM prováděna v čase, kdy se neočekává od SSD disku žádná další činnost. Například v roce 2013 byla vydán verze 4.3 systému Android, která přinesla podporu příkazu TRIM tak, že je prováděn typicky v noci, když není systém aktivní, je nabitý a je připojen k nabíječce.

Příkaz TRIM umožňuje též mezivrstvě FTL (Flash Translation Layer), aby mohla lépe pracovat tím, že ji označuje místa, která je v SSD disku možné přepsat a použít pro jiná data. Mezivrstva FTL se stará o to, aby všechny zápisové buňky flash paměti byly opotřebovány rovnoměrně, protože jejich životnost je omezena pouze na několik tisíc změn obsahu. Přesměrovává proto zápisy na méně opotřebené buňky. Díky příkazu TRIM získává informace o tom, které buňky jsou volné a je možné je použít.

Příkaz TRIM není možné podle normy zařadit do fronty, což znamená, že nejprve je nutné dokončit všechny operace, pak provést TRIM a pak teprve pokračovat. Tím může dojít k dost velké časové prodlevě. Příkaz TRIM by se tak neměl rutinně používat mezi jednotlivými diskovými operacemi.

Podpora TRIM

Linux

Jádro Linuxu podporuje příkaz TRIM od prosince 2008.[1] Podpora ATA TRIM příkazu byla přidána v jádře 2.6.33.[2] Automatické využítí příkazu TRIM je možné u souborových systémů Ext4,[3] Btrfs,[4] FAT, GFS2[5] a XFS.[6] Automatické použití TRIM však není implicitně aktivní kvůli možnému zpomalení práce s diskem.[7] Uživatel může podporu zapnout parametrem discard u příkazu mount. Ext3, NLFS2 a OCFS2 poskytují ioctl, která slouží pro offline použití TRIM.

Android

V systému Android je podpora standardně zahrnuta od verze 4.3 (červenec 2013). Příkaz TRIM je spuštěn jen tehdy, pokud je baterie nabita alespoň z 80 % nebo je baterie nabita alespoň z 30 % a systém je zároveň připojen k nabíječce (tj. nejspíše bude proveden při nočním nabíjení telefonu).[8]

Microsoft Windows

V systémech Windows NT je podpora příkazu TRIM od Windows 7 a Windows Server 2008 R2 (říjen 2009),[9][10] avšak podpora je omezena na klasická AHCI zařízení a nelze jej používat například pro SSD karty v PCI-Express slotech.[11]

Reference

  1. Block device changes in Linux 2.6.28 [online]. Dostupné online. 
  2. Storage changes in Linux 2.6.33 [online]. Kernel Newbies [cit. 2010-09-01]. Dostupné online. 
  3. HOWTO: Configure Ext4 to Enable TRIM Support for SSDs on Ubuntu and Other Distributions – Forked by Nicolay
  4. Btrfs improvements in Linux 2.6.32 [online]. Dostupné online. 
  5. Filesystem changes in Linux 2.6.30 [online]. [cit. 2012-03-28]. Dostupné online. 
  6. Filesystem changes in Linux 3.0 [online]. Dostupné online. 
  7. FREEMYER, Greg. OpenSUSE forum - SSD detection when creating first time fstab [online]. Dostupné online. 
  8. – Android 4.3 odhaluje další novinku – zrychluje I/O operace
  9. Support and Q&A for Solid-State Drives [online]. MSDN, 2009-05-09 [cit. 2010-08-12]. Dostupné online. 
  10. Windows 7 Enhancements for Solid-State Drives [online]. Microsoft Corporation, 2008-11-12 [cit. 2009-07-08]. Dostupné online. 
  11. Geoff Gasior (2012) OCZ's RevoDrive 3 X2 240GB solid-state drive