TRIM

De Viquipèdia
Jump to navigation Jump to search

La comanda trim (Conegut com TRIM en el ATA command set, i UNMAP en el SCSI command set) permet a un sistema operatiu d'informar a una unitat d'estat sòlid (SSD) de quins blocs de dades ja no es consideren en ús i es poden netejar internament.[1]

TRIM es va introduir poc després que els SSD apareguessin. A causa de que l'operació de baix nivell dels SSD difereix significativament dels discs durs, la forma típica en què els sistemes operatius manegen operacions com les eliminacions i els formats va donar lloc a una degradació del rendiment progressiva i inesperada de les operacions d'escriptura en els SSD. [2] El trimming permet al SSD de gestionar més eficientment la Recollida d'Escombraries, que si no alentiria les operacions d'escriptura futures als blocs implicats.[3]

Tot i que les eines per "resetejar" alguns discos a un estat "net" ja estaven disponibles abans de la introducció del trimming, també eliminaven totes les dades del disc, cosa que les feia poc pràctiques per utilitzar per una optimització constant.[4] En 2014, molts discos SSD tenien mecanismes de recollida d'escombraries de fons interns que treballaven independentment del trimming. Encara que aquest va mantenir amb èxit el seu rendiment fins i tot en sistemes operatius que no van recolzar el TRIM, tenia els inconvenients associats de l'augment de l'amplificació d'escriptura i el desgast de les cel·les flaix.[5]

Qüestions específiques d'unitat de flash[modifica]

A causa de la forma en què molts sistemes d'arxius manegen operacions d'eliminació, marcant els blocs de dades com "fora d'ús",[6][7]mitjans d'emmagatzematge (discs SSD, sinó també discos durs tradicionals) en general no saben quins sectors / pàgines estan realment en ús i que pot considerar l'espai lliure. Al contrari de, per exemple, una operació de sobreescriptura, una eliminació no implicarà una escriptura física dels sectors que contenen les dades. Ja que un SSD comú no té coneixement de les estructures del sistema d'arxius, incloent la llista dels no utilitzats blocs / sectors, el mitjà d'emmagatzematge no és conscient que els blocs s'han fet disponibles. Si bé això permet sovint eines de "recuperació" a recuperar arxius de discs durs electromecànics,[7][8] tot i els arxius que es presenten com "eliminats" pel sistema operatiu, sinó que també significa que quan el sistema operatiu posterior porta a terme una operació d'escriptura en un dels sectors, que considera espai lliure, aquest es converteix efectivament en una operació de sobreescriptura des del punt de vista del medi d'emmagatzematge. Per als discs magnètics això no és diferent a escriure un sector buit, però a causa de com funcionen algunes unitats SSD en el nivell més baix, un sobreescriptura produeix una sobrecàrrega significativa en comparació amb l'escriptura de dades en una pàgina en blanc, el que potencialment paralitza el rendiment de l'escriptura.[7][9] emmagatzemar dades SSD en les cèl·lules de memòria flaix que s'agrupen en pàgines típicament de 4 a 16 kB, agrupats en blocs de típicament 128 a 512 pàgines, per exemple, 512 kB per bloc amb pàgines de 4 KB en 128 pàgines blocs.[6][10] memòria flash NAND cèl·lules només es pot escriure directament a quan estan buits. Si ells poden contenir dades, els continguts han de ser esborrats abans d'una operació d'escriptura. Una operació d'escriptura SSD es pot fer en una sola pàgina, però, a causa de les limitacions de maquinari, comandaments d'esborrar sempre afecten blocs sencers;[10] en conseqüència, l'escriptura de dades en les pàgines buides en un SSD és molt ràpid, però s'alenteix considerablement una vegada que les pàgines escrites amb anterioritat han de ser sobrescrites. Atès que es necessita un procés d'esborrat de les cèl·lules a la pàgina abans que es pogui escriure de nou, però només es pot esborrar blocs sencers, una sobreescriptura iniciarà un cicle de lectura-esborrat-modificació-escriptura: [6] [11] el contingut de tot el bloc s'emmagatzemen a la memòria cau, a continuació, tot el bloc s'esborra de la SSD, la pàgina sobreescriu s'escriu al bloc de memòria cau, i només llavors es pot tot el bloc actualitzat pot escriure al medi flaix. Aquest fenomen es coneix com amplificació d'escriptura .[12][13]

Operació[modifica]

La comanda TRIM permet a un sistema operatiu notificar a la SSD les pàgines que ja no contenen dades vàlides. Per a una operació d'eliminació de l'arxius, el sistema operatiu marcarà els sectors arxius lliures per a noves dades, a continuació, enviarà una comanda TRIM per al SSD. Després del trimming, el SSD no conservarà cap contingut del bloc quan escrigui noves dades en una pàgina de memòria flash, el que resulta en menys d'amplificació d'escriptura (un menor nombre d'escriptures), un major rendiment d'escriptura (sense necessitat d'una seqüència de lectura i esborrat de modificar), augmentant així la vida de la unitat.

Diferents unitats SSD implementen la comanda de una manera una mica diferent, de manera que el rendiment pot variar.[3][8]

Trim de forma irreversible esborra les dades, sense possibilitats de recuperació.[14] això és la diferència d'una unitat magnètica de la qual les dades eliminades pot recuperar-se.

Implementació[modifica]

Sistemes operatius suportats[modifica]

Trimming només és eficaç en sistemes operatius que hi donen suport. La següent taula identifica cada sistema operatiu i la primera versió de prova de la comanda. A més, les unitats d'estat sòlid més antigues, dissenyades abans de l'addició del comando TRIM amb l'estàndard ATA necessitaran actualitzacions de firmware, en cas contrari no es tindrà en compte el nou comandament. No obstant això, no totes les unitats poden ser actualitzades per donar suport trimming.

Operating System Supported since Notes
DragonFly BSD 2011-05Maig 2011[15]
FreeBSD 2010-078.1 - Juliol 2010[16] El suport es va afegir a la capa del dispositiu de bloc a partir de 8.1. S'ha afegit suport del sistema de fitxers en FreeBSD 8.3 i FreeBSD 9, a partir de UFS [17] ZFS suportar trimming es va afegir en FreeBSD 9.2 [18] [19] FreeBSD 10 suports de trimming en el programari RAID configuracions.[20]
NetBSD 2012-10Octubre 2012[21]
Linux 2008-12-252.6.28–25 Desembre 2008[22] S'ha afegit suport inicial per a operacions de descart per flash NAND FTL dispositius a 2.6.28. Es va agregar el suport per la comanda TRIM ATA a 2.6.33.[23]

No tots els sistemes de fitxers fan ús de TRIM. Entre els sistemes d'arxius que pot emetre sol·licituds d'equipament automàticament són Ext4,[24] Btrfs,[25] FAT, GFS2, JFS,[26] i XFS.[27] No obstant això, això està desactivat per defecte a causa de problemes de rendiment,[28] a favor de trimming programat en els SSD compatibles.[29] Ext3, NILFS2 i OCFS2 oferir ioctl per dur a terme fora de línia de trimming. L'especificació TRIM demana el suport a una llista de rangs trim, però a partir de nucli 3.0 ajust només s'invoca amb un únic rang que és més lent.[30]

Mac OS X 2011-06-2310.6.8–23 Juny 2011[31] Tot i que el controlador AHCI dispositiu de bloc va guanyar la capacitat per mostrar si un dispositiu suporta l'operació TRIM a 10.6.6 (10J3210),[32] la funcionalitat en si segueix sent inaccessible fins 10.6.8, quan l'operació TRIM s'exposa a través de la IOStorageFamily i sistema d'arxius (HFS +) es va afegir suport Plantilla:Cita requerida. Fins 10.10.4, Mac OS X de forma nativa TRIM està habilitat només per als SSD marca Apple .; utilitats de tercers estan disponibles per permetre que per a altres marques. els controladors TRIM de terceres parts van deixar de funcionar com de l'actualització de Yosemite.[33] Updated drivers now exist that work with OS X Yosemite.[34][35] En Mac OS X actualitzar 10.10.4, Apple ha afegit una utilitat de línia d'ordres, trimforce, que es pot utilitzar per activar TRIM en els SSD de tercers.[36]
Microsoft Windows 2009-10Windows 7 i Windows Server 2008 R2 - Octubre 2009[37][38] Windows 7 recolza inicialment TRIM només per a les unitats de la família AT Attachment incloent Parallel ATA i Serial ATA, i no va donar suport aquesta comanda per a altres dispositius, incloent Storport PCI-Express SSDs encara que el propi dispositiu accepta la comanda. [39] es confirma que amb controladors nadius de Microsoft el obres de comandament TRIM de Windows 7 en AHCI i IDE legal / mode ATA.[40] Els sistemes operatius Windows 8 i versions posteriors de Windows suporten TRIM per PCI Express en els SSD basat en NVMe, i la comanda unmap que és un anàleg completa de la comanda TRIM de Serial ATA per als dispositius que utilitzen la pila de controlador SCSI. Microsoft ha publicat una actualització per a Windows 7, KB2990941, que quan s'integren en el programa d'instal·lació de Windows 7 mitjançant DISM, afegeix suport NVM Express, que inclouen TRIM dels SSD PCIe.
OpenSolaris 2010-07Juliol 2010[41]
Android 2013-74.3[42] - 24 Juliol 2013[43] S'executa fstrim automàticament una vegada cada 24 hores si el dispositiu ha estat inactiu durant almenys una hora i és almenys 80% de la càrrega (30% si està connectat a un carregador). [42]

Qüestions RAID[modifica]

A data de Gener 2017, el suport per la comanda TRIM no està implementat en la majoria de les tecnologies basades en maquinari RAID. No obstant això, les implementacions de programari RAID sovint inclouen suport per TRIM.

Windows:

Windows 10 ofereix suport per TRIM en volums RAID SSD utilitzant l'opció de "optimitzar unitats" en configurar un volum RAID.

Mac OS:

El controlador RAID MacOS no suporta TRIM. Això és cert per a totes les versions de Mac OS X 10.7 fins al MacOS 10.12.x.

TRIM és compatible amb volums quan s'utilitza l'aplicació SoftRAID® de tercers, incloent suport TRIM amb dispositius SSD no són d'Apple RAID (10) i 0,1,4,5.(Nota: TRIM per a dispositius SSD no són d'Apple ha d'estar habilitat específicament amb la comanda terminal "sudo trimforce enable")

Linux:

TRIM està disponible amb volums RAID en comunicats de post-gener-2011 de del nucli de Linux dmraid, que implementa BIOS-assistida "RAID fals maquinari" de suport, i que ara passa a través de totes les sol·licituds de retoc des del sistema d'arxius que es troba en la matriu RAID.[44]

No s'ha de confondre amb dmraid, sistema RAID de programari de propòsit general de Linux, mdraid, que té suport experimental per a (en lloc de en viu, a causa de la supressió de fitxers) basat en lots TRIM en matrius RAID1 quan els sistemes estan configurats perquè periòdicament executi la utilitat mdtrim en sistemes d'arxius (fins i tot els que són com ext3 sense suport TRIM natiu).[45] In later versions of Linux, e.g. Red Hat Enterprise Linux 6.5 and beyond, mdraid supports actually passing through TRIM commands in real-time, rather than just as a batch job.[46]

No obstant això, tingui en compte que Red Hat desaconsella l'ús de nivells de programari RAID1, 4, 5, i 6 en els SSD amb la majoria de les tecnologies RAID, ja que durant la inicialització, la majoria de les utilitats d'administració de RAID (per exemple, de Linux mdadm) escriuen a tots els blocs en els dispositius per assegurar que les sumes de comprovació (o unitat-a-unitat verifica, en el cas de RAID 1/10) funciona correctament, fent que el SSD cregui que tots els blocs que no siguin en l'àrea de recanvi estan en ús, degradan significativament rendiment.[47]

D'altra banda, Red Hat recomana l'ús de RAID1 o RAID 10 per LVMen els SSD, ja que aquests nivells suporten TRIM ("discard" en la terminologia de Linux), i les utilitats de LVM no escriuen a tots els blocs en crear un volum RAID1 o RAID 10.[46]

Per un curt temps al març de 2010, als usuaris se'ls va fer creure que ela drivers Rapid Storage Technology d'Intel (RST) 9.6 soportaven TRIM en volums RAID, però Intel més tard van aclarir que TRIM va ser recolzada per la configuració del BIOS en mode [Interface [Advanced Host Controller | AHCI]] i RAID, però no si la unitat era part d'un volum RAID.[48]

A partir d'agost de 2012, Intel confirma que els chipsets de la sèrie 7 amb Rapid Storage Technology (RST) 11.2 suporten TRIM per a RAID 0 a Microsoft Windows 7.[49] While Intel did not confirm support for 6-series chipsets, TRIM on RAID 0 volumes has been shown to work on Z68, P67, and X79 chipsets by hardware enthusiasts with a modified RAID option ROM.[50] S'especula que la manca de suport oficial per als xipsets sèrie 6 és a causa dels costos de validació[51] o un intent d'encoratjar als consumidors a actualitzar,[52] més que per raons tècniques.

Una excepció a la necessitat d'una opció en la ROM modificada en les plaques base amb un chipset X79 és si el fabricant ha afegit un interruptor ROM; això implica tant la RST i ROM RST-I dins de la BIOS / UEFI. Això permet que la ROM RST per ser utilitzat en lloc de la ROM RST-I, el que permet TRIM per funcionar.[53] Intel assenyala que el millor rendiment es pot aconseguir mitjançant l'ús d'un conductor amb la mateixa versió que la ROM; per exemple, si la BIOS / UEFI té una opció ROM 11.0.0.0m, un controlador de versió 11.x potser ser utilitzat.[54]

Determinació de sistemes de fitxers no suportats[modifica]

Quan el sistema de fitxers no admet automàticament TRIM, algunes empreses de serveis públics poden enviar comandaments trimming manualment. En general, ells determinen quins blocs estan lliures i després passen a aquesta llista com una sèrie d'ordres trimming a la unitat. Aquestes utilitats estan disponibles de diversos fabricants (per exemple, Intel,[55] G.Skill),[56] o com a serveis d'utilitat general (per exemple de Linux hdparm des de v9.17,[57][58] o mdtrim, com es va esmentar dalt).

Maquinari que suporta[modifica]

ATA[modifica]

Les especificacions de la comanda TRIM[59] s'ha normalitzat com a part de l'estàndard d'interfície AT Attachment (ATA), dirigit pel Comitè Tècnic T13 del Comitè Internacional de Normes de Tecnologia d'Informació (INCITS).[60]TRIM s'implementa sota el comandament DATA SET MANAGEMENT (06h opcode) el projecte d'especificació ACS-2.[61] L'estàndard ATA és recolzada per tant paral·lel (IDE, POTA) i (SATA) maquinari sèria ATA.

Un inconvenient de la comanda original d'ATA TRIM és que es va definir com una ordre no pot anar en cua i per tant no pot ser barrejada amb una càrrega de treball normal de les operacions en cua de llegir i escriure. SATA 3.1 va introduir una ordre TRIM en cua per remeiar això.[62]

Hi ha diferents tipus de TRIM definit per les Paraules SATA 69 i 169 que retornen una comanda ATA IDENTIFY DEVICE:

  • TRIM no determinista: Cada comanda de lectura a les Direcció lògica de blocs (LBA) després d'una TRIM pot retornar dades diferents.
  • Determinista TRIM (DRAT): Totes les ordres de lectura a la LBA després d'un TRIM haurà de tornar les mateixes dades, o pot ser determinat.
  • Determinista Lectura Zero després de TRIM (RZAT): Totes les ordres de lectura a la LBA després d'una TRIM tornaran a zero.

Aquí és la informació addicional en paraula SATA 105 que descriu el nombre màxim de blocs de 512 bytes per comandes DATA SET MANAGEMENT que una unitat pot suportar. Normalment el valor predeterminat és 8 (o 4 kB), però moltes unitats redueixen a 1 per complir amb els requisits de maquinari de Microsoft Windows per TRIM, que el temps total d'instrucció no excedirà de 20 ms o 8 ms x (nombre d'entrades d'interval LBA), el que sigui major, i sempre serà inferior a 600 ms.[63]

Un rang LBA individual es diu a una Entrada de Rang LBA i està representat per vuit bytes. El LBA s'expressa per sis primers bytes de l'entrada Rang de LBA i la Longitud Rang és un comptador de base zero (per exemple, 0 = 0 i 1 = 1) representat pels dos bytes restants. Si la longitud de rang de doble byte és zero, llavors l'entrada Rang LBA es descartarà com a afegit.[64] Això vol dir que per cada bloc de 512 bytes de rangs TRIM que el dispositiu suporta, el màxim és de 64 rangs de 32 MB, o 2 GB. Si un dispositiu suporta SATA Paraula 105-8 llavors hauria de ser capaç de retallar 16 GB en un sol comandament TRIM (DATA SET MANAGEMENT).

SCSI[modifica]

SCSI proporciona la comanda UNMAP (un anàleg ple de TRIM), i la comanda WRITE SAME (10 i 16 variants) amb l'indicador UNMAP.[65]

SD/MMC[modifica]

La comanda MultiMediaCard and SD ERASE (CMD38) proporciona una funcionalitat similar a la comanda TRIM ATA, encara que requereix que els blocs esborrats poden sobreescriure amb qualsevol de zeros o uns. EMMC 4.5 defineix més un "descarti" sub-operació que s'aproximi més ATA TRTM en què el contingut de blocs rebutjats poden considerar indeterminada (és a dir, "no importa").

Deficiències[modifica]

  • Si el xifrat està en ús, amb la comanda TRIM revela informació sobre quins blocs estan en ús i quines no ho són.[66]
  • La versió original de la comanda TRIM s'ha definit com una comanda no en cua pel T13 subcommittee, i per tant pot incórrer en una massiva penalització si s'utilitza sense cura, per exemple, si s'envia després de cada ordre d'eliminar arxius. La naturalesa no en cua de la comanda requereix que el conductor ha d'esperar primer a totes les ordres pendents d'acabar, executa l'ordre TRIM, a continuació, quan repren les ordres normals. TRIM pot trigar molt de temps a completar-se, depenent del microprogramari al SSD, i fins i tot pot desencadenar un cicle de recollida d'escombraries. Aquesta penalització pot ser minimitzat en solucions que fan periòdicament un TRIM per lots, en lloc de retallar sobre cada eliminació d'arxiu, mitjançant la programació d'aquests treballs per lots per als moments en què la utilització del sistema és mínim. Aquesta deficiència TRIM s'ha superat en Serial ATA revisió 3.1 amb la introducció de la cua de comandes TRIM.[67][68]
  • Les ordres TRIM en cua s'han relacionat amb la corrupció de dades importants en diversos dispositius, sobretot M500 de Micron,[69] els Crucial M500,[69] i la sèrie Samsung 8**.[70] La corrupció de les dades ha estat confirmada per al sistema operatiu Linux en aquests dispositius l'1 de juliol del 2015.[71]

Aquests dispositius estan en llistes negres en el nucli de Linux libata-core.c per forçar l'enviament de comandes TRIM no en cua a aquestes unitats en lloc de les comandes TRIM en cua:[72]

  • Micron M500 utilitzades a totes les versions de firmware (només aquells anteriors a MU07 tenen el problema, però Linux no ha posat al dia)
  • Crucial M500 utilitzades totes les versions de firmware incloent els SSD rectificats de fàbrica (només aquells anteriors a MU07 tenen el problema, però Linux no ha posat al dia)
  • Micron M510 utilitzant la versió de firmware MU01
  • Micron M550 utilitzant la versió de firmware MU01
  • Crucial M550utilitzant la versió de firmware MU01
  • Crucial MX100 utilitzant la versió de firmware MU01
  • Samsung SSD 8** series SSDs utilitzades totes les versions de firmware

Aquest arxiu també posa en la llista negra el S238 SuperSSpeed contra TRIM en general, pel fet que causen els blocs erronis que fan perdre dades quan s'emet TRIM.[72][73]

libata-core.c també té una llista blanca per veure els SSD que són coneguts de forma fiable als mantenidors del subsistema d'aplicar correctament les banderes DRAT i RZAT, en lloc d'ignorar-les, ja que moltes unitats ho fan. Les unitats de la llista blanca són els següents:[72]

  • Crucial SSDs
  • Intel SSDs excloent el Intel SSD 510
  • Micron SSDs
  • Samsung SSDs
  • Seagate SSDs[74]

Mireu també[modifica]

Referències[modifica]

  1. «Intel High Performance Solid State Drive - Advantages of TRIM». Intel, 14-09-2010. [Consulta: 21 febrer 2012].
  2. Shimpi, Anand Lal. «The SSD Anthology», 18-03-2009. [Consulta: 19 juny 2010].
  3. 3,0 3,1 Shimpi, Anand Lal. (2009-03-18). p. 10.
  4. Shimpi, Anand Lal. (2009-03-18). pàg. 11.
  5. «Kingston SSDNow V Plus 100 Review». Anand Lal Shimpi, 11-11-2010. [Consulta: 10 desembre 2010].
  6. 6,0 6,1 6,2 Savill, John. «I heard solid-state disks (SSDs) suffer from a decline in write performance as they're used. Why?». WindowsITPro, 21-04-2009. [Consulta: 19 juny 2010].
  7. 7,0 7,1 7,2 Shimpi, Anand Lal. (2009-03-18). p. 7.
  8. 8,0 8,1 Savill, John. «What is the TRIM function for solid-state disks (SSDs) and why is it important?». WindowsITPro, 22-04-2009. [Consulta: 19 juny 2010].
  9. Malventano, Allyn. «Long-term performance analysis of Intel Mainstream SSDs». PC Perspective, 13-02-2009. [Consulta: 10 febrer 2012].
  10. 10,0 10,1 Shimpi, Anand Lal. (2009-03-18). p. 5.
  11. Shimpi, Anand Lal. (2009-03-18). pàg. 8.
  12. «Write Amplification: Intel's Secret Sauce». ExtremeTech.com. [Consulta: 6 novembre 2010].
  13. «Inside the X25-M Controller: Wear Leveling, Write Amplification Control». TomsHardware.com, 08-09-2008. [Consulta: 6 novembre 2010].
  14. «Too TRIM? When SSD Data Recovery is Impossible». TechGage. TechGage, 05-03-2010. [Consulta: 16 abril 2010].
  15. «Preliminary TRIM support».
  16. «FreeBSD 8.1-RELEASE Release Notes: Disks and Storage». [Consulta: 1r setembre 2010].
  17. «Afegir suport lateral del nucli per BIO_DELETE / TRIM en UFS». [Consulta: 1r febrer 2011].
  18. «vista = versió i revisió = 251419 agregat ZFS suport TRIM que està habilitat per defecte». [Consulta: 2013 -06-05].
  19. «FreeBSD 9.2-RELEASE Anunci». [Consulta: 2013 -10-04].
  20. «Base revision 242323 – Add basic BIO_DELETE support to GEOM RAID class for all RAID levels». [Consulta: 30 octubre 2012].
  21. «TRIM support in NetBSD», 19-10-2012.
  22. «Block device changes in Linux 2.6.28».
  23. «Storage changes in Linux 2.6.33». Kernel Newbies. [Consulta: 1r setembre 2010].
  24. «HOWTO: Configure Ext4 to Enable TRIM Support for SSDs on Ubuntu and Other Distributions - Forked by Nicolay».
  25. «Btrfs improvements in Linux 2.6.32».
  26. «JFS Filesystem can now handle trim». [Consulta: 28 març 2012].
  27. «Filesystem changes in Linux 3.0».
  28. Freemyer, Greg. «OpenSUSE forum - SSD detection when creating first time fstab», 2010.
  29. «How to enable TRIM?». [Consulta: 11 novembre 2015].
  30. «SDB:SSD discard (trim) support».
  31. «Mac OS X 10.6.8 Brings TRIM Support for Apple SSDs, Graphics Improvements», 24-02-2012.
  32. «Macbook Pros ship with active SSD TRIM support», 04-03-2011.
  33. «Yosemite kills third-party SSD support».
  34. «Chameleon SSD Optimizer».
  35. «Cindori Software».
  36. «Latest OS X update allows you to enable TRIM for third-party SSDs». Condé Nast, Jun 30, 2015. [Consulta: 1r juliol 2015].
  37. «Support and Q&A for Solid-State Drives». MSDN, 09-05-2009. [Consulta: 12 agost 2010].
  38. «Windows 7 Enhancements for Solid-State Drives». Microsoft downloads. Microsoft Corporation, 12-11-2008. [Consulta: 8 juliol 2009].
  39. Geoff Gasior (2012) RevoDrive de OCZ 3 X2 unitat d'estat sòlid de 240 GB
  40. Coles, Olin. «SSD Benchmark Tests: SATA IDE vs AHCI Mode - AHCI vs IDE Final Thoughts». BenchmarkReviews, 15-04-2010. [Consulta: 20 agost 2013].
  41. «SATA TRIM support in OpenSolaris», 29-07-2010.
  42. 42,0 42,1 «Android 4.3 Update Brings TRIM to All Nexus Devices», 29-07-2013. [Consulta: 30 juliol 2013].
  43. "Android 4.3 announced, rolling out to Nexus devices today".The Verge. 24 Juliol 2013. Retrieved 24 Juliol 2013.
  44. «Possible to get SSD TRIM (discard) working on ext4 + LVM + software RAID in Linux? - Server Fault». [Consulta: 29 novembre 2011].
  45. «Cyberax/mdtrim - GitHub». [Consulta: 29 novembre 2011].
  46. 46,0 46,1 «Red Hat Enterprise Linux 6 Storage Administration Guide, Chapter 21. Solid-State Disk Deployment Guidelines». [Consulta: 9 març 2016].
  47. «Red Hat Enterprise Linux 7 Storage Administration Guide», 11-11-2015. [Consulta: 29 febrer 2016].
  48. «Is there TRIM support for RAID configurations?». Intel, 26-03-2010. [Consulta: 6 novembre 2010].
  49. «Intel Confirms RAID0 TRIM Support on 7-Series Chipsets», 19-08-2012. [Consulta: 14 gener 2013].
  50. «RAID0 trim and SRT seems possible on 6-series and 5-Series», 18-11-2012. [Consulta: 14 gener 2013].
  51. «TRIM & RAID-0 SSD Arrays Work With Intel 6-Series Motherboards Too», 28-11-2012. [Consulta: 14 gener 2013].
  52. «Intel Brings TRIM to RAID-0 SSD Arrays on 7-Series Motherboards, We Test It», 16-08-2012. [Consulta: 14 gener 2013].
  53. Anand Lal Shimpi. «Intel Brings TRIM to RAID-0 SSD Arrays on 7-Series Motherboards, We Test It».
  54. Doug Crowthers. «TRIM Command Confirmed With RAID 0 on Intel 7 Series». Tom's Hardware.
  55. «Intel SSD Optimizer White Paper». Intel Corporation. [Consulta: 23 gener 2010].
  56. «wiper.exe for Falcon Series». XtremeSystems. [Consulta: 23 gener 2010].
  57. «hdparm-9.17 released, with experimental trim/wiper scripts for SSDs». [Consulta: 14 agost 2010].
  58. «hdparm project page». sourceforge.net. [Consulta: 14 agost 2010].
  59. «Data Set Management Commands Proposal for ATA8-ACS2 (revision 6)». INCITS T13. INCITS, 12-12-2007. [Consulta: 8 juliol 2009]. (draft specification T13/e07154r6)
  60. «T13 documents referring to TRIM». INCITS T13. INCITS. [Consulta: 8 juliol 2009].
  61. «T13 ATA8 Draft Spec 1697-D». INCITS, 23-06-2010. [Consulta: 14 agost 2010].
  62. «SATA 6Gb/s». Serial ATA International Organization. [Consulta: 26 setembre 2012].
  63. «Device.Storage Requirements (Windows)». [Consulta: 29 febrer 2016].
  64. «T13/2161-D: Information technology - ATA/ATAPI Command Set - 3 (ACS-3)». [Consulta: 29 febrer 2016].
  65. «Note for SCSI UNMAP support in FreeBSD mailing list».
  66. «Milan Broz's blog: TRIM & dm-crypt ... problems?». Milan Broz. [Consulta: 1r octubre 2014].
  67. http://www.sata-io.org/technology/6Gbdetails.asp
  68. «SATA 3.1 spec brings swap standard, improved TRIM». The Tech Report.
  69. 69,0 69,1 «Bug 71371 – [PATCHCrucial M500, broken "queued TRIM" support]».
  70. «Bug #1449005 "trim does not work with Samsung 840 EVO after firm..." : Bugs : fstrim package : Ubuntu».
  71. torvalds. «linux/libata-core.c at e64f638483a21105c7ce330d543fa1f1c35b5bc7 · torvalds/linux · GitHub». GitHub.
  72. 72,0 72,1 72,2 torvalds. «linux/libata-core.c at master · torvalds/linux · GitHub». GitHub.
  73. torvalds. «libata: force disable trim for SuperSSpeed S238 · torvalds/linux@cda57b1». GitHub.
  74. «[1/3 libata: Llista blanca de SSD que se sap que retornen correctament zeros després TRIM]».

Enllaços externs[modifica]