TRIM tam olarak nedir?


14

TRIM'in Wikipedia sayfasından, TRIM'in yazarları bir SSD'ye düşürmek için tanıtıldığı izlenimini edindim, ancak hangi blokların kullanılmadığı dikkate alındığında dosya sistemini mektupla.

Bu doğruysa, bu, TRIM kullanmayan SSD'lerin, bir dosya silindiğinde SSD'nin blokların ücretsiz olduğunu bildirmek için bloklara sıfırlar yazdığı anlamına mı geliyor?

Bunu okuyorum

Misafir içindeki dosya sistemleri blokları yeniden kullanma eğilimindedir, bu da bir dosya sistemi sanal görüntü boyutuna göre küçük kalsa bile, gerçek görüntü boyutunun maksimum boyuta ulaşana kadar büyüme eğiliminde olduğu anlamına gelir.

beni SSD'lerin sıfırlar üzerine yazmadığını mı düşündürüyor? Yoksa konuklardaki dosya sistemleri tamamen farklı mı?

Yanıtlar:


16

Flash bellek cihazları (günümüzün SSD'leri için kullanılanlar) herhangi bir anda rastgele veri yazamaz; önce bir hücreye (tipik olarak 4KB) yazmadan önce silinmelidir. Maalesef silme işlemi çok yavaş; bu yüzden hareketli cihazlar olmamasına rağmen flaş cihazlar manyetik sürücülerden çok daha yavaştı.

Modern SSD'ler, önceden silinmiş bir dizi hücreyi koruyarak silme süresini gizler, bu da bir yazma komutunun mevcut verilerin üzerine hemen yazılmayacağı anlamına gelir, bunun yerine sürücünün denetleyicisi silinmiş bir hücreyi alır, yeniden eşler ve yeni verilerle yazar. Bu (ve birkaç yazma-düşünce önbellek stratejisi) sürücüye büyük bir hızlanma sağlar, manyetik sürücüleri büyük ölçüde aşar.

Her zaman bir dizi önceden hazırlanmış hücre olduğundan emin olmak için, bir hücreye ihtiyaç duyulmadığında, sürücü bunu arka plan silinmesi için zamanlar ve ücret hücreleri listesine ekler.

Ne yazık ki, mevcut dosya sistemleri bir sektörün serbest olduğu zaman sürücüye söylemekten rahatsız olmadı. Her şeyden önce sürücünün sadece aptal bir bit deposu olması gerekiyordu. Bir kesimi, dosya sisteminin bakış açısından serbest olarak işaretleyen bir dosyayı veya başka bir işlemi silmek, yalnızca bazı meta veri yapısındaki bir işarettir. Sektörün kendisine dokunulmadı. Dosya sistemi üzerine sıfır yazarak temizlese bile, sürücü bunun sektörün serbest olup olmadığı veya kullanıcı bir dosyada sıfırlar olup olmadığını bilmiyordu. Bir süre sonra, sürücünün yazmadan önce silmek için boş bir hücresi olmazdı; ve performans trajik bir şekilde azaldı.

TRIM komutu, şu anda sürdürülen çoğu dosya sistemi tarafından hızlı bir şekilde hazırlanmış ve benimsenmiştir. Dosya sisteminin sürücüye bir sektörün içeriğinin artık önemli olmadığını söylemek için kullandığı basit bir sinyaldir. Bir hücrede eşlenen tüm sektörler serbest kaldığında, SSD denetleyicisi hücrenin eşlemesini kaldırır ve silinmek üzere zamanlar. Ev sahibi bu sektörleri okursa, SSD Flash'tan getirme zahmetine girmez, hemen sıfırlarla yanıt verir; ancak en önemli etki, önceden doldurulmuş hücrelerin listesini her zaman yenilenmiş halde tutmaktır.

Yine de, çoğu SSD Flash belleğin fiziksel boyutundan daha küçük bir kapasite ortaya çıkarır, bazen% 75 kadar düşüktür. Bu, kullanılmayan hücreleri% 100 tam sistemde bile tutmasını sağlar, böylece kullanılmış sektörleri (aşırı) yazmak hala hızlıdır.


İlginç. Kavramsal olarak TRIM'in nasıl çalıştığını biliyordum ama bir SSD'nin ne kadar depolama alanı açığa çıkaracağını merak ettim. Şimdi bu verilerin verilen SSD'ler için herhangi bir yerde yayınlanıp yayınlanmadığını görmek istiyorum ...
Michael B

Ayrılmış hücrelerin miktarı genellikle yayınlanır. Genellikle daha ucuz tüketici diskleri için% 5 ila 10, üst düzey tüketici diskleri için% 20 + arasındadır. Kurumsal Flash Sürücüler (EFD'ler),% 100 ila% 400 arasında herhangi bir yere sahip olma eğilimindedir; Bu yüzden neden bu kadar pahalılar, bu büyük rezervi koruyorlar, çünkü bir flash bellek konumuna yazmak her seferinde yerleri biraz yok ediyor. Genellikle sunucu ortamlarında bulunan ağır uygulamalar, çoğu tüketici SSD'sini hızlı bir şekilde öldürür.
Chris S

"bir hücreye yazma (tipik olarak 4KB)" - " Flash " kavramını, geleneksel flash bellek kullanımına kıyasla yanlış kullanıyorsunuz. Flash "hücresi" yalnızca bir (veya birkaç) bit depolar. "Hücre" kullanımınız, genellikle flash IC veri sayfalarında açıklandığı gibi, çok daha büyük (silme) bloğa (128K olabilir) karşılık gelir. Veri organizasyonu, hücre <sektör <sayfa <blok <düzlem <çipidir.
talaş

8

TRIM, bir İşletim Sistemi'nin (İşletim Sistemi içindeki Dosya Sistemi) ATA depolama ortamıyla iletişim kurabilmesi için bir sektörün dosya sistemi tarafından artık kullanılmadığını tanıttı. Bunun diske yazmakla ilgisi yoktur.

TRIM, sektörün medyada sıfırlandığını garanti etmez. Dosya sistemi söz konusu sektörden sıfırın döndürülmesini istediğinde garanti eder (SSD, sektörün medyada gerçekte ne saklandığına bakılmaksızın sektörün bunları sıfırlayacağını bilmesi nedeniyle, kurtarma işleminin mümkün olabileceğini unutmayın; basit olarak kesilmiş bir diskteki veriler, ancak genellikle SSD'ler gerçekten belleği siler).

Dosya sistemleri yazma işlemlerini dağıtma eğilimindedir (çeşitli nedenlerden dolayı, yazma seviyelendirme girişiminden çöp toplama, depolama konumlarını rastgele yerleştirme ve daha pek çok şey). Bu nedenle, medya dosya sisteminin hangi sektörleri kullanmadığını bilmiyorsa, sadece sıfır yazmak mutlaka sektörün kullanılmadığı anlamına gelmez, sonunda tüm diskin kullanımda olduğunu varsaymalıdır.

SSD'ler için bu varsayım, bir sektörün yazma zamanında silinerek yazma hızını düşürmesi gerektiği anlamına gelir; dosya silindiğinde bellek konumunu silmek yerine. Benzer şekilde sanallaştırma sistemlerindeki sanal disk dosyaları için, dinamik disk dosyası sonunda sanal diskin tüm kapasitesini kapsayacaktır. Sanallaştırma sistemi TRIM kullanıyorsa, bir sektörün artık ne zaman kullanılmadığını ve dolayısıyla dinamik diskin bu konumu izlemesi gerekmediğini bilecektir.


Bu, TRIM'in SSD'nin hangi sektörlerin kullanıldığını bilmesi için tanıtıldığı anlamına mı geliyor, böylece yeni verileri daha az kullanılan sektörlere koyabilir mi?
Sandra

1
SSD'ler, bir sektörün artık ne zaman gerekli olmadığını bilmek için TRIM'i kullanır. Yazma dengelemesini veya depolama ortamının uygulayabileceği diğer özellikleri garanti etmez. Bununla birlikte, SSD'lerin çoğu bunu yazma seviyelendirme, çöp toplama (flash medyada, kullanılmayan sektörleri silme) ve gelişmiş yazma performansı için serbest sektör listelerini tutmak için kullanır.
Chris S
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.