Perintah trim (dikenal sebagai TRIM di set perintah ATA, dan UNMAP di set perintah SCSI) memungkinkan sistem operasi untuk menginformasikan solid-state drive (SSD) blok data mana yang tidak lagi dianggap 'sedang digunakan' dan oleh karena itu dapat dihapus secara internal.[1]

Trim diperkenalkan segera setelah SSD diperkenalkan. Karena operasi SSD tingkat rendah berbeda secara signifikan dari hard drive, cara umum sistem operasi menangani operasi seperti penghapusan dan format mengakibatkan penurunan kinerja progresif yang tidak terduga dari operasi tulis pada SSD[2]. Pemangkasan memungkinkan SSD menangani pengumpulan sampah secara lebih cepat, yang sebaliknya akan memperlambat operasi penulisan di masa mendatang ke blok yang terlibat.[3]

Meskipun alat untuk "mengatur ulang" beberapa kandar ke keadaan baru sudah tersedia sebelum pemangkasan diperkenalkan, alat tersebut juga menghapus semua data pada drive, yang membuatnya tidak praktis digunakan untuk pengoptimalan berkelanjutan. Pada tahun 2022, banyak SSD dan kandar kilas USB memiliki mekanisme pengumpulan sampah internal untuk sistem file tertentu (seperti FAT32, NTFS, APFS) yang bekerja secara terpercaya dari pemangkasan. Meskipun ini berhasil mempertahankan masa pakai dan kinerjanya bahkan di bawah sistem operasi yang tidak mendukung trim, dia memiliki kelemahan terkait peningkatan amplifikasi tulis dan keausan sel kilat.[4]

TRIM juga banyak digunakan[butuh rujukan] pada kandar keras shingled magnetic recording (SMR).

Latar belakang

sunting

Karena cara banyak sistem berkas menangani operasi penghapusan, dengan menandai blok data sebagai "tidak digunakan", media penyimpanan (SSD, tetapi juga cakram keras) umumnya tidak mengetahui sektor/halaman mana yang benar-benar digunakan dan mana yang dapat digunakan. dianggap ruang kosong. Berlawanan dengan (misalnya) operasi penimpaan, penghapusan tidak akan melibatkan penulisan fisik ke sektor yang berisi data. Karena SSD umum tidak memiliki pengetahuan tentang struktur sistem berkas, termasuk daftar blok/sektor yang tidak digunakan, media penyimpanan tetap tidak menyadari bahwa blok telah tersedia. Meskipun ini sering memungkinkan alat yang tidak terhapus untuk memulihkan file dari hard disk elektromekanis, meskipun file dilaporkan sebagai "dihapus" oleh sistem operasi, itu juga berarti bahwa ketika sistem operasi kemudian melakukan operasi tulis ke salah satu sektor, yang dianggapnya ruang kosong, secara efektif menjadi operasi penimpaan dari sudut pandang media penyimpanan. Untuk disk magnetik, penimpaan data yang ada tidak berbeda dengan penulisan ke sektor kosong, tetapi karena beberapa SSD berfungsi pada tingkat terendah, penimpaan menghasilkan overhead yang signifikan dibandingkan dengan penulisan data ke halaman kosong, yang berpotensi melumpuhkan kinerja penulisan.

SSD menyimpan data dalam sel memori flash yang dikelompokkan ke dalam halaman yang biasanya berukuran 4 hingga 16 kiB, dikelompokkan bersama ke dalam blok yang biasanya terdiri dari 128 hingga 512 halaman. Contoh: 512 kiB blok yang mengelompokkan 128 halaman masing-masing 4 kiB. Sel memori kilat NAND dapat langsung ditulisi hanya jika kosong. Jika kebetulan berisi data, konten harus dihapus sebelum operasi tulis. Operasi penulisan SSD dapat dilakukan pada satu halaman tetapi, karena keterbatasan perangkat keras, perintah hapus selalu memengaruhi seluruh blok; akibatnya, menulis data ke halaman kosong pada SSD sangat cepat, tetapi sangat melambat setelah halaman yang ditulis sebelumnya perlu ditimpa. Karena penghapusan sel di halaman diperlukan sebelum dapat ditulis lagi, tetapi hanya seluruh blok yang dapat dihapus, penimpaan akan memulai siklus baca-hapus-ubah-tulis: isi seluruh blok disimpan di cache, kemudian seluruh blok dihapus dari SSD, kemudian halaman yang ditimpa ditulis ke dalam blok yang di-cache, dan hanya dengan demikian seluruh blok yang diperbarui dapat ditulis ke media flash. Fenomena ini dikenal sebagai amplifikasi tulis.

Operasi

sunting

Perintah TRIM memungkinkan sistem operasi untuk memberi tahu SSD tentang halaman yang tidak lagi berisi data yang valid. Untuk operasi penghapusan berkas, sistem operasi akan menandai sektor file sebagai bebas untuk data baru, kemudian mengirim perintah TRIM ke SSD. Setelah pemangkasan, SSD tidak akan menyimpan konten apa pun dari blok saat menulis data baru ke halaman memori flash, menghasilkan amplifikasi penulisan yang lebih sedikit (penulisan lebih sedikit), throughput penulisan yang lebih tinggi (tidak perlu urutan baca-hapus-modifikasi), sehingga meningkatkan umur kandar.

SSD yang berbeda menerapkan perintah dengan agak berbeda, sehingga kinerjanya dapat bervariasi.[5][6]

TRIM memberi tahu SSD untuk menandai wilayah LBA sebagai tidak valid dan pembacaan selanjutnya pada wilayah tersebut tidak akan mengembalikan data yang berarti. Untuk waktu yang sangat singkat, data masih dapat berada di flash secara internal. Namun, setelah perintah TRIM dikeluarkan dan pengumpulan sampah telah dilakukan, sangat tidak mungkin bahwa bahkan seorang ilmuwan forensik dapat memulihkan data.

Penerapan

sunting

Operating system support

sunting

Perintah TRIM hanya bermanfaat jika kandar menerapkannya dan sistem operasi memintanya. Tabel di bawah ini mengidentifikasi setiap sistem operasi terkenal dan versi pertama yang mendukung perintah tersebut. Selain itu, solid-state drive lama yang dirancang sebelum penambahan perintah TRIM ke standar ATA akan memerlukan pembaruan firmware, jika tidak, perintah baru akan diabaikan. Namun, tidak setiap drive dapat ditingkatkan untuk mendukung pemangkasan.

Dukungan untuk TRIM juga bervariasi berdasarkan kemampuan kandar sistem berkas tertentu pada sistem operasi, karena hanya program dengan pemahaman tentang bagian disk mana yang merupakan ruang kosong yang dapat dengan aman mengeluarkan perintah, dan pada tingkat sistem kemampuan ini cenderung terletak pada driver sistem file itu sendiri.

Sistem operasi Didukung sejak Catatan
DragonFly BSD 2011-05 Mei 2011 [7]
GratisBSD 2010-07 8.1 – Juli 2010 [8] Dukungan ditambahkan pada lapisan perangkat blok di 8.1. Dukungan sistem file telah ditambahkan di FreeBSD 8.3 dan FreeBSD 9, dimulai dengan UFS .[9] Dukungan pemangkasan ZFS telah ditambahkan di FreeBSD 9.2.[10] [11] FreeBSD 10 mendukung pemangkasan pada konfigurasi RAID perangkat lunak.[12]
NetBSD 2012-10 Oktober 2012 [13]
Linux 2008-12-25 2.6.28–25 Desember 2008 [14] Dukungan awal untuk operasi pembuangan telah ditambahkan untuk perangkat flash FTL NAND di 2.6.28. Dukungan untuk perintah ATA TRIM ditambahkan di 2.6.33.[15] Tidak semua sistem file menggunakan trim. Di antara sistem file yang dapat mengeluarkan permintaan trim secara otomatis adalah ext4, [16] Btrfs, [17] FAT, GFS2, JFS, [18] XFS, [19] dan NTFS-3G . Namun, di beberapa distribusi, ini dinonaktifkan secara default karena masalah kinerja, [20] mendukung pemangkasan terjadwal pada SSD yang didukung.[21] Ext3, NILFS2 dan OCFS2 menawarkan ioctls untuk melakukan pemangkasan offline. Spesifikasi TRIM meminta untuk mendukung daftar rentang trim, tetapi pada kernel 3.0 trim hanya dipanggil dengan satu rentang yang lebih lambat.[22]

Di banyak distribusi Linux yang lebih baru, systemd menyediakan unit fstrim.timer .[23]

macOS 23-06-2011 10.6.8–23 Juni 2011 [24] Meskipun driver perangkat blok AHCI memperoleh kemampuan untuk menampilkan apakah perangkat mendukung operasi TRIM di 10.6.6 (10J3210), [25] fungsionalitas itu sendiri tetap tidak dapat diakses hingga 10.6.8, ketika operasi TRIM diekspos melalui IOStorageFamily dan sistem file (HFS+) dukungan telah ditambahkan.  Hingga 10.10.4, Mac OS X secara native mengaktifkan TRIM hanya untuk SSD bermerek Apple; utilitas pihak ketiga tersedia untuk mengaktifkannya untuk merek lain. Driver TRIM pihak ketiga yang lama berhenti berfungsi sejak pembaruan Yosemite.[26] Driver yang diperbarui sekarang ada yang berfungsi dengan OS X Yosemite.[27] [28] Dalam pembaruan Mac OS X 10.10.4, Apple menambahkan utilitas baris perintah, trimforce, yang dapat digunakan untuk mengaktifkan TRIM pada SSD pihak ketiga.[29]
Microsoft Windows 2009–10 Windows 7 dan Windows Server 2008 R2 – Oktober 2009 [30] [31] Windows 7 awalnya mendukung TRIM hanya untuk drive dalam keluarga AT Attachment termasuk Parallel ATA dan Serial ATA, dan tidak mendukung perintah ini untuk perangkat lain termasuk Storport PCI-Express SSD meskipun perangkat itu sendiri akan menerima perintah tersebut.[32] Dipastikan bahwa dengan driver Microsoft asli, perintah TRIM berfungsi pada Windows 7 dalam AHCI dan Mode IDE / ATA lama.[33] Windows 8 dan yang lebih baru Sistem operasi Windows mendukung trim untuk PCI Express SSD berdasarkan NVMe, dan perintah unmap yang merupakan analog lengkap dari perintah TRIM dari Serial ATA untuk perangkat yang menggunakan tumpukan driver SCSI, termasuk USB Attached SCSI Protocol (UASP) . Microsoft telah merilis pembaruan untuk Windows 7 yang menambahkan dukungan NVM Express termasuk TRIM untuk PCIe SSD.[34] [35] TRIM diketahui didukung untuk ReFS dan NTFS, keduanya mengimplementasikan sakelar DisableDeleteNotify untuk menonaktifkannya.[36] Sumber tidak setuju apakah ada dukungan TRIM untuk sistem file lain.
OpenSolaris 2010-07 Juli 2010 [37]
Android 2013-7 4,3 [38] – 24 Juli 2013 [39] Menjalankan fstrim secara otomatis hingga satu kali setiap 24 jam jika perangkat telah menganggur setidaknya selama satu jam dan setidaknya terisi 80% (30% jika terhubung ke pengisi daya). [38]

masalah RAID

sunting

Hingga Januari 2017, dukungan untuk perintah TRIM tidak diterapkan di sebagian besar teknologi RAID berbasis perangkat keras. Namun, implementasi RAID perangkat lunak sering kali menyertakan dukungan untuk TRIM.

Windows

sunting

Windows 10 menawarkan dukungan untuk TRIM dalam volume ID SSD menggunakan opsi "optimalkan drive" saat mengonfigurasi volume RAID.

Driver RAID macOS tidak mendukung TRIM. Ini berlaku untuk semua versi Mac OS X dari 10.7 hingga macOS 10.12.x.

TRIM didukung untuk volume RAID (0,1,4,5 & 10) saat menggunakan aplikasi SoftRAID® pihak ketiga, termasuk dukungan TRIM dengan perangkat SSD non-Apple. (Catatan: TRIM untuk perangkat SSD non-Apple harus diaktifkan secara khusus menggunakan perintah terminal "sudo trimforce enable")

TRIM tersedia dengan volume RAID dalam rilis dmraid kernel Linux pasca-Januari-2011, yang mengimplementasikan dukungan "RAID perangkat keras palsu" berbantuan BIOS, dan yang sekarang melewati semua permintaan TRIM dari sistem file yang berada di larik RAID.[40]

Jangan bingung dengan dmraid, sistem RAID perangkat lunak serba guna Linux, mdraid, memiliki dukungan eksperimental untuk TRIM berbasis batch (bukan langsung, setelah penghapusan file) pada array RAID 1 ketika sistem dikonfigurasikan untuk menjalankan utilitas mdtrim secara berkala pada sistem file (bahkan yang menyukai ext3 tanpa dukungan TRIM asli). Di versi Linux yang lebih baru, mis. Red Hat Enterprise Linux 6.5 dan seterusnya, mdraid mendukung benar-benar melewati perintah TRIM secara real-time, bukan hanya sebagai pekerjaan batch.[41]

Namun, Red Hat menyarankan untuk tidak menggunakan perangkat lunak RAID level 1, 4, 5, dan 6 pada SSD dengan sebagian besar teknologi RAID, karena selama inisialisasi, sebagian besar daya guna pengelolaan RAID (misalnya mdadm Linux) menulis ke semua blok pada perangkat untuk memastikan bahwa checksum ( atau verifikasi drive-to-drive, dalam kasus RAID 1 dan 10) beroperasi dengan benar, menyebabkan SSD percaya bahwa semua blok selain di area cadangan sedang digunakan, menurunkan kinerja secara signifikan.[42]

Di sisi lain, Red Hat merekomendasikan penggunaan RAID 1 atau RAID 10 untuk LVM RAID pada SSD, karena level ini mendukung TRIM ("buang" dalam terminologi Linux), dan utilitas LVM tidak menulis ke semua blok saat membuat RAID 1 atau RAID 10 volume.[41]

RAID berdasar perangkat tegar

sunting

Untuk waktu yang singkat pada bulan Maret 2010, pengguna dituntun untuk percaya bahwa driver Intel Rapid Storage Technology (RST) 9.6 mendukung TRIM pada volume RAID, tetapi Intel kemudian mengklarifikasi bahwa TRIM didukung untuk pengaturan BIOS mode AHCI dan mode RAID, tetapi tidak jika drive tersebut merupakan bagian dari volume RAID.[43]

Mulai Agustus 2012, Intel mengonfirmasi bahwa chipset seri 7 dengan driver Rapid Storage Technology (RST) 11.2 mendukung TRIM untuk RAID 0 di Microsoft Windows 7. Meskipun Intel tidak mengonfirmasi dukungan untuk chipset seri 6, TRIM pada volume RAID 0 telah terbukti bekerja pada chipset Z68, P67, dan X79 oleh penggemar perangkat keras dengan ROM opsi RAID yang dimodifikasi. Diperkirakan bahwa kurangnya dukungan resmi untuk chipset 6-series adalah karena biaya validasi atau upaya untuk mendorong konsumen untuk meningkatkan, bukan karena alasan teknis.

Pengecualian untuk kebutuhan ROM opsi yang dimodifikasi pada motherboard dengan chipset X79 adalah jika pabrikan telah menambahkan sakelar ROM; ini memerlukan ROM RST dan RST-E berada di dalam BIOS/UEFI. Ini memungkinkan ROM RST untuk digunakan sebagai pengganti ROM RST-E, memungkinkan TRIM berfungsi. Intel mencatat bahwa kinerja terbaik dapat dicapai dengan menggunakan driver dengan versi yang sama dengan ROM; misalnya, jika BIOS/UEFI memiliki ROM opsi 11.0.0.0m, driver versi 11.x harus digunakan.[44]

Menggunakan sistem berkas yang tidak didukung

sunting

Jika sistem file tidak secara otomatis mendukung TRIM, beberapa utilitas dapat mengirim perintah pemangkasan secara manual. Biasanya mereka menentukan blok mana yang gratis dan kemudian meneruskan daftar ini sebagai serangkaian perintah pemangkasan ke drive. Utilitas ini tersedia dari berbagai produsen (misalnya Intel, G.Skill), atau sebagai utilitas umum (misalnya "wiper" hdparm Linux sejak v9.17, atau mdtrim, seperti yang disebutkan di atas). Baik hdparm dan mdtrim menemukan blok gratis dengan mengalokasikan file besar pada sistem file dan menyelesaikan lokasi fisik yang ditetapkan.

Dukungan perangkat keras

sunting

Spesifikasi perintah TRIM [45] telah distandarisasi sebagai bagian dari standar antarmuka AT Attachment (ATA), yang dipimpin oleh Komite Teknis T13 dari Komite Internasional untuk Standar Teknologi Informasi (INCITS).[46] TRIM diimplementasikan di bawah perintah DATA SET MANAGEMENT (opcode 06h) dari rancangan spesifikasi ACS-2.[47] Standar ATA didukung oleh perangkat keras ATA paralel (IDE, PATA) dan serial (SATA).

Kelemahan dari perintah ATA TRIM asli adalah bahwa perintah tersebut didefinisikan sebagai perintah yang tidak dapat diantri dan oleh karena itu tidak dapat dengan mudah dicampur dengan beban kerja normal dari operasi baca dan tulis yang diantri. SATA 3.1 memperkenalkan perintah TRIM yang antri untuk mengatasi masalah ini.[48]

Ada berbagai jenis TRIM yang ditentukan oleh SATA Words 69 dan 169 yang dikembalikan dari perintah ATA IDENTIFY DEVICE:

  • TRIM non-deterministik: Setiap perintah baca ke alamat blok logis (LBA) setelah TRIM dapat mengembalikan data yang berbeda.
  • TRIM deterministik (DRAT): Semua perintah yang dibaca ke LBA setelah TRIM akan mengembalikan data yang sama, atau menjadi determinasi.
  • Read Zero deterministik setelah TRIM (RZAT): Semua perintah baca ke LBA setelah TRIM akan menghasilkan nol.

Ada informasi tambahan di SATA Word 105 yang menjelaskan jumlah maksimum blok 512-bita per perintah DATA SET MANAGEMENT yang dapat didukung oleh drive. Biasanya defaultnya adalah 8 (atau 4 kB) tetapi banyak drive menguranginya menjadi 1 untuk memenuhi Persyaratan Perangkat Keras Microsoft Windows untuk TRIM, waktu penyelesaian perintah tersebut tidak boleh melebihi 20 ms atau 8 ms × (jumlah entri rentang LBA), mana saja yang lebih besar, dan akan selalu kurang dari 600 ms.[49]

Rentang LBA individual disebut Entri Rentang LBA dan diwakili oleh delapan byte. LBA dinyatakan dengan enam byte pertama Entri Rentang LBA dan Panjang Rentang adalah penghitung berbasis nol (misalnya, 0=0 dan 1=1) yang diwakili oleh dua byte sisanya. Jika panjang rentang dua byte adalah nol, maka Entri Rentang LBA akan dibuang sebagai padding.[50] Artinya, untuk setiap blok TRIM 512 byte yang didukung perangkat, jumlah maksimumnya adalah 64 rentang 32 MB, atau 2 GB. Jika perangkat mendukung SATA Word 105 di 8 maka perangkat tersebut seharusnya dapat memangkas 16 GB dalam satu perintah TRIM (DATA SET MANAGEMENT).

NVM Ekspres

sunting

Disadvantages

sunting
  • Some deniable encryption schemes involve making the whole disk look like random garbage. Using TRIM defeats this layer of plausible deniability as the all-zero (or all-one) blocks created easily indicate what blocks are used.[51] It has been argued disabling TRIM might be suspicious too.[52]
  • The original version of the TRIM command has been defined as a non-queued command by the T13 subcommittee, and consequently can incur massive execution penalty if used carelessly, e.g., if sent after each filesystem delete command. The non-queued nature of the command requires the driver to first wait for all outstanding commands to be finished, issue the TRIM command, then resume normal commands. TRIM can take a lot of time to complete, depending on the firmware in the SSD, and may even trigger a garbage collection cycle.[butuh rujukan] This penalty can be minimized in solutions that periodically do a batched TRIM, rather than trimming upon every file deletion, by scheduling such batch jobs for times when system utilization is minimal. This TRIM disadvantage has been overcome in Serial ATA revision 3.1 with the introduction of the Queued TRIM Command.[53][54]
  • Faulty drive firmware that misreports support for queued TRIM or has critical bugs in its implementation has been linked to serious data corruption in several devices, most notably Micron and Crucial's M500[55] and Samsung's 840 and 850 series.[56] The data corruption has been confirmed on the Linux operating system (the only OS with queued trim support as of 1 July 2015).[57]

Perangkat ini masuk daftar hitam di kernel Linuxlibata-core.c untuk memaksa pengiriman perintah TRIM yang tidak antri (ATA_HORKAGE_NO_NCQ_TRIM ) ke drive ini alih-alih perintah TRIM yang diantri: [58]

  • Micron/Crucial M500 menggunakan semua versi firmware termasuk SSD yang disertifikasi ulang oleh pabrik
  • Micron M510 menggunakan firmware versi MU01
  • Micron/Crucial M550 menggunakan firmware versi MU01
  • Krusial MX100 menggunakan firmware versi MU01
  • SSD Samsung seri 840 dan 850 menggunakan semua versi firmware

File ini juga memasukkan SuperSSpeed S238 ke dalam daftar hitam terhadap TRIM secara umum karena menyebabkan blok yang salah kehilangan data saat TRIM dikeluarkan. [58] [59]

libata-core.c also memiliki daftar putih ke SSD:[58]

  • SSD penting
  • Intel SSD tidak termasuk Intel SSD 510
  • SSD mikron
  • SSD Samsung
  • SSD Seagate [60]

Lihat juga

sunting
  • Remanensi data

Referensi

sunting
  1. ^ "Intel High Performance Solid State Drive – Advantages of TRIM". Intel.com. Intel. 14 September 2010. Diakses tanggal 2012-02-21. 
  2. ^ Shimpi, Anand Lal (2009-03-18). "The SSD Anthology: Understanding SSDs and New Drives from OCZ". AnandTech.com. hlm. 4. Diakses tanggal 2010-06-19. 
  3. ^ Shimpi, Anand Lal. (18 March 2009). p. 10. TRIM is an ATA command (Advanced Technology Attachment Command) that allows an OS to inform SSD about the blocks of data no longer in use. The SSD then deletes such blocks of data to make a way for newer blocks of data. TRIM is basically used for enhancing the performance and life span of the SSD. Unfortunately, the boon of TRIM becomes a bane for data recovery from SSD. Therefore, it is strongly recommended to regularly make a backup copy of your data using a reliable tool (for example Disk Drill for Windows), especially if your OS is warning about SSD failing.
  4. ^ "Kingston SSDNow V Plus 100 Review". AnandTech.com. Anand Lal Shimpi. 2010-11-11. Diakses tanggal 2010-12-10. 
  5. ^ Shimpi, Anand Lal. (18 March 2009). p. 10. TRIM is an ATA command (Advanced Technology Attachment Command) that allows an OS to inform SSD about the blocks of data no longer in use. The SSD then deletes such blocks of data to make a way for newer blocks of data. TRIM is basically used for enhancing the performance and life span of the SSD. Unfortunately, the boon of TRIM becomes a bane for data recovery from SSD. Therefore, it is strongly recommended to regularly make a backup copy of your data using a reliable tool (for example Disk Drill for Windows), especially if your OS is warning about SSD failing.
  6. ^ Savill, John (2009-04-22). "What is the TRIM function for solid-state disks (SSDs) and why is it important?". WindowsITPro. Diarsipkan dari versi asli tanggal 2013-02-09. Diakses tanggal 2010-06-19. 
  7. ^ "Preliminary TRIM support". leaf.dragonflybsd.org. 
  8. ^ "FreeBSD 8.1-RELEASE Release Notes: Disks and Storage". Diakses tanggal 2010-09-01. 
  9. ^ "Add kernel side support for BIO_DELETE/TRIM on UFS". Diakses tanggal 2011-02-01. 
  10. ^ "Added ZFS TRIM support which is enabled by default". Diakses tanggal 2013-06-05. 
  11. ^ "FreeBSD 9.2-RELEASE Announcement". Diakses tanggal 2013-10-04. 
  12. ^ "Base revision 242323 – Add basic BIO_DELETE support to GEOM RAID class for all RAID levels". Diakses tanggal 2012-10-30. 
  13. ^ "TRIM support in NetBSD". 2012-10-19. 
  14. ^ "Linux_2_6_28 - Linux Kernel Newbies". kernelnewbies.org. 
  15. ^ "Storage changes in Linux 2.6.33". Kernel Newbies. Diakses tanggal 2010-09-01. 
  16. ^ "Forked by Nicolay - HOWTO: Configure Ext4 to Enable TRIM Support for SSDs on Ubuntu and Other Distributions". sites.google.com. 
  17. ^ "Linux_2_6_32 - Linux Kernel Newbies". kernelnewbies.org. 
  18. ^ "JFS Filesystem can now handle trim". Diakses tanggal 2012-03-28. 
  19. ^ "Linux_3.0 - Linux Kernel Newbies". kernelnewbies.org. 
  20. ^ Freemyer, Greg (2010). "OpenSUSE forum – SSD detection when creating first time fstab". 
  21. ^ "How to enable TRIM?". Ask Ubuntu. Diakses tanggal 11 November 2015. 
  22. ^ "SDB:SSD discard (trim) support - openSUSE Wiki". en.opensuse.org. 
  23. ^ "Changes/EnableFSTrimTimer - Fedora Project Wiki". fedoraproject.org. Diakses tanggal 2020-12-10. 
  24. ^ "Mac OS X 10.6.8 Brings TRIM Support for Apple SSDs, Graphics Improvements". 2012-02-24. 
  25. ^ "Macbook Pros ship with active SSD TRIM support". 2011-03-04. 
  26. ^ "Yosemite kills third-party SSD support". ZDNet. 
  27. ^ "Chameleon SSD Optimizer". chameleon.alessandroboschini.com. 
  28. ^ "You searched for Trim enabler". Cindori.org. Diakses tanggal 7 November 2021. 
  29. ^ Lee Hutchinson (30 June 2015). "Latest OS X update allows you to enable TRIM for third-party SSDs". Ars Technica. Condé Nast. Diakses tanggal 2015-07-01. 
  30. ^ Fortin, Michael (2009-05-09). Sinofsky, Steven, ed. "Support and Q&A for Solid-State Drives". Engineering Windows 7 blog. Microsoft. Diarsipkan dari versi asli tanggal 2010-04-25.  Alt URL
  31. ^ "Windows 7 Enhancements for Solid-State Drives" (PDF). Microsoft downloads. Microsoft Corporation. 2008-11-12. Diakses tanggal 2009-07-08. 
  32. ^ Geoff Gasior (2012) OCZ's RevoDrive 3 X2 240GB solid-state drive
  33. ^ Coles, Olin (15 April 2010). "SSD Benchmark Tests: SATA IDE vs AHCI Mode – AHCI vs IDE Final Thoughts". BenchmarkReviews. Diakses tanggal 20 August 2013. 
  34. ^ "Update to add native driver support in NVM Express in Windows 7 and Windows Server 2008 R2". Support. Microsoft. 8 September 2015. 
  35. ^ "What is the TRIM Command on Solid State Drives?". datarecovery.com. 30 January 2017. Microsoft added the feature in a Windows 7 update known as KB2990941 
  36. ^ "Fsutil behavior". Microsoft Documentation (dalam bahasa Inggris). Diakses tanggal 17 November 2019. 
  37. ^ "SATA TRIM support in OpenSolaris". 2010-07-29. 
  38. ^ a b "Android 4.3 Update Brings TRIM to All Nexus Devices". 2013-07-29. Diakses tanggal 2013-07-30. 
  39. ^ "Android 4.3 announced, rolling out to Nexus devices today".The Verge. 24 July 2013. Retrieved 24 July 2013.
  40. ^ "Possible to get SSD TRIM (discard) working on ext4 + LVM + software RAID in Linux? – Server Fault". Diakses tanggal 2011-11-29. 
  41. ^ a b "Red Hat Enterprise Linux 6 Storage Administration Guide, Chapter 21. Solid-State Disk Deployment Guidelines". Diakses tanggal 2016-03-09. 
  42. ^ "Red Hat Enterprise Linux 7 Storage Administration Guide". 2015-11-11. Diakses tanggal 2016-02-29. 
  43. ^ "Is there TRIM support for RAID configurations?". Intel. 2010-03-26. Diakses tanggal 2010-11-06. 
  44. ^ Doug Crowthers (17 August 2012). "TRIM Command Confirmed With RAID 0 on Intel 7 Series". Tom's Hardware. 
  45. ^ "Data Set Management Commands Proposal for ATA8-ACS2 (revision 6)". INCITS T13. INCITS. 2007-12-12. Diakses tanggal 2009-07-08.  (draft specification T13/e07154r6)
  46. ^ "T13 documents referring to TRIM". INCITS T13. INCITS. Diakses tanggal 2009-07-08. 
  47. ^ "T13 ATA8 Draft Spec 1697-D" (PDF). INCITS. 2010-06-23. Diakses tanggal 2010-08-14. 
  48. ^ "SATA 6Gb/s". Serial ATA International Organization. Diakses tanggal 2012-09-26. 
  49. ^ "Device.Storage Requirements (Windows)". Diakses tanggal 2016-02-29. 
  50. ^ "T13/2161-D: Information technology – ATA/ATAPI Command Set – 3 (ACS-3)" (PDF). T13.org. Diakses tanggal 2016-02-29. 
  51. ^ "Milan Broz's blog: TRIM & dm-crypt ... problems?". Milan Broz. 14 August 2011. Diakses tanggal 2014-10-01. 
  52. ^ "Perfectly Deniable Steganographic Disk Encryption" (PDF). I.blackhat.com. Diakses tanggal 7 November 2021. 
  53. ^ "The Path from 3Gb/s to SATA 6Gb/s: How to Migrate Current Designs to the SATA Revision 3.0 Specification". Sata-io.org. May 27, 2009. Diakses tanggal November 7, 2021. 
  54. ^ "SATA 3.1 spec brings swap standard, improved TRIM". The Tech Report. 18 July 2011. 
  55. ^ "71371 [PATCH]Crucial M500, broken "queued TRIM" support". bugzilla.kernel.org. 
  56. ^ "Bug #1449005 trim does not work with Samsung 840 EVO after firm... : Bugs : fstrim package : Ubuntu". Launchpad. 
  57. ^ torvalds. "linux/libata-core.c at e64f638483a21105c7ce330d543fa1f1c35b5bc7 · torvalds/linux · GitHub". GitHub. 
  58. ^ a b c torvalds. "linux/libata-core.c at master · torvalds/linux · GitHub". GitHub. 
  59. ^ torvalds. "libata: force disable trim for SuperSSpeed S238 · torvalds/linux@cda57b1". GitHub. 
  60. ^ "[1/3] libata: Whitelist SSDs that are known to properly return zeroes after TRIM - Patchwork". patchwork.ozlabs.org. 

Pranala luar

sunting