Bellek kartını performans ve kötü sektörler için nasıl test edebilirim?


10

DSLR cihazım için yeni bir CF kart satın aldım. Xbench (Mac OS X) kullanarak test ettim ve beklendiği gibi çalışıyor. Ancak, "kötü sektörleri" (hareketli tabak terimi) kontrol etmek için bir "yüzey taraması" (hareketli tabak terimi) yapmak istiyorum. Ben dd kullanarak bir süreçleri bash olabilir, ama ben orada daha iyi bir yol olduğunu hissediyorum. Amacım, bir bellek kartının (CF, SD, vb.) Bir fotoğraf çekimi için güvenli olduğunu ve 30 günlük tedarikçi politikası penceresinin süresi dolmadan iade edilmesi gerekmediğini kesin olarak bilmek.

Kesinlikle burada Mac çözümleri verilmesini istiyorum. Ayrıca birkaç Linux önerisi almak istiyorum. Bu sorunun herkesin ihtiyaçlarını karşılayabilmesi için Windows kullanıcılarına bile bir kemik atalım.


Katı hal belleğinin dönen plakalardan farklı olduğunu anlıyorum. Bu konuda bir derse ihtiyacım yok. İhtiyacım olan, sahip olduğum cihazları doğrulamanın bir yoludur. İşlem basittir: Cihazı bilinen içerikle doldurun. Cihazdan okuyun ve içeriği doğrulayın. Okuma veya yazma hataları alıyorsanız, açıkça başarısız olur. Okuduğunuz içerik yazdıklarınızdan farklıysa, bu daha az belirgin bir başarısızlıktır. Tarih rastgele olmalı ve birden çok döngü kullanılmalıdır. İhtiyacım olan şey bunu yapan bir araç. Bir tane yazdım ama bu bir hack.
Bruno Bronosky

Yanıtlar:


8

Kontrolör blokları istediği yere hareket ettirebildiğinden (aşınma seviyelendirmesine bakın), tüm okuma / yazma testinin diski doldurup karşılaştırması için tek şans. Tabii ki farklı desenlerle birkaç kez emin olun.

Ve hala yedekleri olduğu sürece kontrolör tarafından gizlendikleri için hatalı bölgeleri yakalamayacaksınız.


6

Flash bellek, plakalı disklerle aynı şekilde çalışmaz. "Kötü sektör" kavramı, flash bellekte gerçekten mevcut değildir. Bu günlerde, flash bellek ve SSD'lerle, dahili denetleyici, kullanılamaz bellek bloklarını tanımlamaya ve işaretlemeye, blok yazma sınırlamalarını vb. Azaltmak için verileri dinamik olarak hareket ettirmeye özen gösterir. Bu özellikler SSD'lerde çok daha yaygındır, ancak bazıları kaliteli flash kartlarda bulunur (SanDisk gibi).

Çoğu dosya sistemi kontrol aracı, depolama aygıtının fiziksel yapısı hakkında özel varsayımlar yapar (yani, fiziksel silindirler, sektörler, kümeler vb. İçeren tabla tabanlı) veya soyutlanmış bir düzeyde çalışır ve dosya veya dizin kullanarak "neredeyse" onarımlar yapar tablolar. Başka bir şey daha fazla soruna neden olacağından (sorunları plakalı bir aygıtla aynı şekilde çözebileceğini varsayarak) veya sanal hale getireceğinden, flash bellek aygıtındaki kötü blokları işaretlemek için özel olarak tasarlanmış bir araca ihtiyacınız olacaktır. Flash'ın donanım düzeyinde dinamik özelliklerini dikkate almayan düzeltmeler. Belirli bir "sektörü" veya "kümeyi" "kötü" olarak işaretleyebilseniz bile, bu fiziksel kavramlar aslında flash bellekte bulunmadığından, mutlaka iyi olmaz. Flash aygıtı daha gelişmişse ve kötü blokları otomatik olarak atlamak ve yazma sınırlamalarını azaltmak için verileri dinamik olarak hareket ettirirse, verilerin fiziksel konumu bir anda kötü bir blokta ve bir süre sonra iyi bir blokta bulunabilir. (Flash bellekte "kötü" bir blok fikrinin plakalı disklerde olduğundan çok daha bulanık olduğunu unutmayın ... flash bellek bloğu aniden ziyade yavaşça ölme eğilimindedir ve okunabilir / okunamaz durumda "titreyebilir" tamamen kullanılamaz hale gelmeden önce biraz.)

Genel olarak, flaş söz konusu olduğunda, cihazın kendisini kötü bir blok perspektifinden yönetmesine izin verin. Farklı üreticiler verileri farklı şekillerde yapılandırır ve depolar ve her biri, flash belleğin bazı sınırlamalarından kaçınmak için verileri hareket ettiren farklı düzeylerde ve miktarlarda dinamik davranışa sahip olabilir. Bunu kendiniz yönetmeye çalışmak büyük olasılıkla çözdüğünden daha fazla soruna neden olabilir ve flash disklerinizi uzun vadede işe yaramaz hale getirebilir.

Kötü flash kartlardan kaçınmak istiyorsanız, saygın markaları kullanmanızı tavsiye ederim. Geçmişte çeşitli flash kartlar denedim, ancak SanDisk, en azından bugüne kadar hiç başarısız olmamıştı kullandığım tek markadır. Oldukça ağır kullandığım 4, 8 ve 16 gig SDHC kartım var ve düzenli olarak kameramdan çıkarıyorum ve dizüstü bilgisayarıma veya bilgisayarıma takıyorum ve hala mükemmel çalışıyorlar. (Bazıları birkaç yaşındadır.)


1
Herhangi bir blok cihazında bozuk bloklar olabilir: belirli bir bloğa bazı veriler yazarsam, ancak onu tekrar okuyamazsam, bu kötü bir bloktur. Denetleyici, verileri başka bir yere yazarak yazma için bu sorunu gizleyebilir, ancak okumalar için gizleyemez.
Vaddadi Kartick

3

Linux'ta istediğiniz komut badblocks. Bu OS2 için bu ext2-os-x bağlantı noktasının bir parçası olarak Mac OS X için bir bağlantı noktası var gibi görünüyor - her şeyi yükleyin ve /usr/local/sbin/badblockskomut dışında her şeyi göz ardı edin .

Bununla birlikte, bu teste yardımcı olacaktır, ancak bunun kesin olacağını düşünmüyorum, çünkü ilk olarak Leonidas'ın dediği gibi, flash belleğe gerçekten ham erişim elde edemezsiniz, bu yüzden tam bir tarama yapmak zordur ve ayrıca yeni başarısızlıklar testten sonra ortaya çıkabilir, belki de testle tetiklenebilir.


1

Sorunun altındaki yorumunuzu okurken, F3'ün tam olarak ne istediğinizi yaptığını düşünüyorum. Linux / Mac OS X üzerinde derlenir ve Homebrew üzerinden de kullanılabilir.


-1

Bunu Google'da buldum, kameraların saklanması için sd kart kullanmıyorum, ancak bunun yerine samsung galaxy S2'de 2 yıldan daha az bir süre sonra 2 sınıfım 32 gd sdhc sandisk'i tamamen bozuk aldım.

İlk badblock'ların nerede başladığını görmek için badblock'ları kullanıyorum ve sonra mümkünse bu alanın etrafında bölümler yapacağım. şu anki, çok çok kötü çözümüm: /


cevabınızı biraz açıklayabilir misiniz? Hızlı bir arama dayanarak, "badblocks" bir Linux programı sanırım? OP'nin gerektirdiği şeyi yapıyor mu?
MikeW
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.