Як я можу перевірити карту пам'яті на продуктивність та поганий сектор?


10

Щойно я придбав нову карту CF для свого DSLR. Я перевірив його за допомогою Xbench (Mac OS X), і він працює як очікувалося. Однак я хотів би зробити "сканування поверхні" (зміна терміна "блюдо"), щоб перевірити наявність "поганих секторів" (переміщення термінальної форми). Я міг би зіпсувати сценарій процесів, використовуючи dd, але я відчуваю, що є кращий вихід там. Моя мета - остаточно знати, що карту пам'яті (CF, SD тощо) безпечно використовувати під час фотосесії, і це не потрібно повертати до закінчення 30-денного вікна політики щодо постачальників.

Я, безумовно, хочу, щоб рішення Mac тут були надані. Я також хотів би отримати кілька пропозицій Linux. Давайте навіть кинемо кістки користувачам Windows просто так, що це одне питання може задовольнити потреби кожного.


Я розумію, що твердотільна пам'ять відрізняється від обертання блюд. Мені цього не потрібно. Що мені потрібно - це спосіб перевірити власні пристрої. Процес простий: наповнити пристрій вмістом знань. Прочитайте з пристрою та перевірте вміст. Якщо у вас з’являються помилки читання чи письма, очевидний збій. Якщо зміст, який ви читаєте, відрізняється від написаного вами, це менш очевидний збій. Дата повинна бути випадковою і використовувати декілька циклів. Мені потрібно інструмент, який це робить. Я написав один, але це хак.
Бруно Броноський

Відповіді:


8

Оскільки контролер може переміщувати блоки куди хоче (див. Вирівнювання зносу), єдиний шанс для цілого тестування читання / запису ist заповнити диск і порівняти. Звісно, ​​кілька разів з різними моделями.

І все одно ви не будете ловити несправні регіони, оскільки вони теж приховані контролером, поки у нього є запасні частини.


6

Флеш-пам'ять працює не так, як диски з блюдами. Поняття "поганого сектора" насправді не існує з флеш-пам'яттю. Сьогодні за допомогою флеш-пам’яті та SSD вбудований контролер дбає про виявлення та маркування непридатних блоків пам’яті, динамічне переміщення даних навколо, щоб зменшити обмеження запису блоку тощо. Ці функції є набагато більш поширеними у SSD, але деякі також існують у якісних флеш-картах (наприклад, SanDisk).

Більшість інструментів перевірки файлової системи або роблять конкретні припущення щодо фізичної структури пристрою зберігання даних (тобто на базі пластин, з фізичними циліндрами, секторами, кластерами тощо), або працюють на абстрагованому рівні та роблять ремонт "практично" за допомогою файлу чи каталогу столи. Вам знадобиться інструмент, спеціально розроблений для позначення поганих блоків на пристрої флеш-пам’яті, оскільки будь-що інше буде спричиняти більше проблем (припускаючи, що це може виправити проблеми так само, як і з пристроєм на основі блюд) або зробити віртуальним виправлення, які не враховують динамічні функції апаратного рівня Flash. Навіть якщо ви могли б позначити певний "сектор" або "кластер" як "поганий", це не обов'язково принесе користь, оскільки ці фізичні поняття насправді не існують у флеш-пам'яті. Якщо флеш-пристрій більш досконалий і динамічно переміщує дані навколо, щоб автоматично обходити погані блоки та пом’якшувати обмеження запису, фізичне розташування даних може знаходитися в поганому блоці на одну мить, а в хорошому - через мить. (Зауважте, що ідея "поганого" блоку у флеш-пам'яті набагато нечіткіша, ніж це з блюдними дисками. Блок флеш-пам'яті має тенденцію вмирати повільніше, а не раптово, і може "мерехтіти" між читабельним / не читабельним біт, перш ніж він стане абсолютно непридатним.)

Взагалі кажучи, коли мова йде про спалах, нехай пристрій керує собою з поганої точки зору блоку. Різні виробники структурують і зберігають дані по-різному, і кожен може мати різний рівень і кількість динамічної поведінки, яка переміщує дані навколо, щоб уникнути деяких обмежень флеш-пам'яті. Спроба керувати нею самостійно, швидше за все, спричинить більше проблем, ніж це вирішує, і може змусити ваші флеш-диски непридатні з часом.

Якщо ви хочете уникнути поганих флеш-карт, настійно рекомендую використовувати авторитетні бренди. У минулому я пробував різноманітні флеш-карти, проте SanDisk - це єдиний бренд, який я використовував, що, принаймні на сьогоднішній день, ніколи не провалювався. У мене є декілька карток SDHC 4, 8 і 16 гіг, якими я досить активно користуюся, і регулярно виймаю з камери і вставляю в ноутбук або комп’ютер, і вони все ще працюють чудово. (Деяким кілька років.)


1
Погані блоки можуть існувати на будь-якому блоковому пристрої: якщо я записую деякі дані до певного блоку, але я не можу їх прочитати назад, це поганий блок. Контролер може приховати цю проблему для запису, записавши дані в іншому місці, але не для зчитування.
Ваддаді Картік

3

У Linux потрібна команда badblocks. Здається, що цей порт для Mac OS X є частиною цього порту ext2-for-os-x - встановіть усе та ігноруйте все, крім /usr/local/sbin/badblocksкоманди.

Це сказало, що це допоможе перевірити, але я не думаю, що це буде остаточним, тому що спочатку, як каже Леонідас, ви не отримуєте дійсного доступу до флеш-пам’яті, тому складно зробити повне сканування, а також тому, що нові відмови можуть з’явитися після тесту, можливо, навіть спровоковані ним.


1

Читаючи ваш коментар під питанням, я вважаю, що F3 робить саме те, що ви хочете. Він компілюється на Linux / Mac OS X, а також доступний через Homebrew.


-1

Я виявив це в google, я не використовую SD-карти для зберігання камер, але натомість я отримав моєму сандиску sdhc класу 10 32 повністю пошкоджений після менш ніж 2-х років використання моєї Samsung Galaxy галактики S2.

Я використовую блокові блоки, щоб побачити, з чого починаються перші погані блоки, і тоді, якщо можливо, я буду робити розділи навколо цієї області. це моє сьогоднішнє, дуже погане рішення: /


Ви могли б детальніше розказати свою відповідь? На основі швидкого пошуку, я гадаю, що "погані блоки" - це програма Linux? Чи робить це те, що вимагає ОП?
MikeW
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.