Flashnul - проверка работоспособности Flash-памяти

Все о софте.

Модератор: NetSkipper

Правила форума
Администрация не несет ответственности за размещенные на этом форуме сообщения.
Если сообщения как то ущемляют ваши права, обратитесь к администрации, и информация будет удалена с форума.
Аватара пользователя
igor7
Пользователь
Сообщения: 3182
Зарегистрирован: 13.01.2007, 11:43
smartphone: HTC ONE
Откуда: Israel

Даритель

Flashnul - проверка работоспособности Flash-памяти

Сообщение igor7 »

Всем привет!!
Поучаствовав в обсуждении этой проблемы, задался мыслью о необходимости програмки для диагностирования неполадок, возникающих при использовании Flash-памяти (USB-Flash, IDE-Flash, SecureDigital, MMC,MemoryStik, SmartMedia, XD, CompactFlash и т.д.).
Сменные носители на базе flash-памяти в силу ряда особенностей (hot-plug подключение, воздействие статики, влаги, температуры, механических воздействий при траспортировке, естественный износ из-за ограниченного числа циклов чтения/записи) относительно часто выходят из строя. И вот здесь возникает вопрос выкинуть или все таки попытаться исправить? И хотя данная програмка предназначена для диагностирования неполадок, ее результаты дают 90% уверенность что делать: выкидывать или исправлять. Все конечно же зависит от степени повреждения. И если простые дефекты вроде "не определяется", "ошибки записи", обнаруживаются относительно просто, то диагностика более сложных дефектов представляет из себя весьма нетривиальную задачу.
Вот ряд дефектов, которые характерны для flash-накопителей:
1. Флешка не определяется при подключении к компу( при подключении ничего не происходит). Вероятная причина,- сгоревший предохранитель или повреждается плата.
2. Флешка определяется неверно (windows при подключении пишет USB device not recognized) Вероятная причина,- повреждён контроллер устройства.
3. Ошибки записи/чтения (при записи выдаётся сообщения вида "error writing ...", "delayed writing failed", "i/o operation failed"). Вероятная причина,- Повреждение/износ flash-памяти, повреждение контроллера.
4. Флешка не форматируется (при попытке форматирования выдаётся сообщение об ошибке ). Вероятная причина,- сбой памяти, контроллера, логические ошибки.

Часть дефектов может быть устранена утилитами производителя (они доступны не всегда) путём низкоуровнего форматирования.
Однако существуют дефекты, целиком и полностью являющиеся "программными" - т.е. не связанными с аппаратными ошибками. К таким относятся неправильные размеры разделов, ошибки файловой системы. Некоторые особо удачные варианты partition table способны просто "завесить" windows при подключении устройства.
Так же существуют весьма специфические сбои контроллера памяти на устройстве, приводящие к записи данных в произвольные области памяти. (пишут в один файл, оказывается в другом). Такие дефекты сложно обнаружить простым копированием данных на устройство и обратно.
Для диагностики ряда дефектов и очистки устройства от программных сбоев и создана утилита flashnul.
Список выполняемых операций:
Тест чтения - проверка доступности каждого сектора носителя (дублирует функциональность обычных HDD-тестов)
Тест записи - проверка возможности записи каждого сектора носителя (дублирует функциональность большинства HDD-тестов)
Тест сохранности записанной информации - проверка соответствия записанной и прочитанной информации (аналогично функциональности memtest, но в отношении flash-накопителей).
Недеструктивная проверка чтения/записи позволяет проверить доступность на запись каждого сектора устройства, не теряя записанные данные (после проверки блока данные, содержащиеся в этом блоке, записываются обратно)
Сохранение образа содержимого устройства - посекторное сохранение всего (или части) содержимого в файл. (аналогично функциональности dd из UNIX).
Загрузка образа в устройство - посекторная запись образа в устройство (аналогично функциональности dd из UNIX).
Flashnul - это средство диагностики, а не лечения устройств, хотя некоторые тесты могут привести к полной потери данных. Если тест говорит, что устройство работает некорректно, значит, оно работает некорректно.
Приведу пару примеров как это работает. Проверял на своей флешке LG 256МБ.

Внимание: Большая часть тестов деструктивные - они уничтожают информацию с flash-устройства, перед использованием рекомендуется сделать резеврную копию данных. КАТЕГОРИЧЕСКИ запрещено отключение устройства во время выполнения теста, это может привести к физическому повреждению устройства.
Программа не имеет графического интерфейса, она работает из командной строки (cmd). Скачиваем последнюю версию программы ( забыл сказать, что программа бесплатна) с официального сайта:
[hide=0]http://shounen.ru/soft/flashnul/flashnul-0.9.zip[/hidden].
Распаковываем архив где-нибудь у себя на компе и затем копируем файл flashnul.exe в папку %systemroot%\system32. Для этого идем в Start > Run, в строке пишем %systemroot%\system32 и копируем flashnul.exe в открывсееся окно папки system32. Закрываем все окна, затем опять идем в Start > Run, и пишем в строке команду cmd.
Утилита работает с привязкой к букве, которая присваивается операционной системой флешке, или номеру, который также присваивается любому подключенному устройству. Изнать, какой номер присвоен нашей флешке можно запустив утилиту flashnul с ключем -p. Синтаксис команды такой: flashnul.exe -p:

Изображение

Теперь, зная какой номер соответствует нашей флешке, можно вывести всю информацию о ней, запустив команду flashnul.exe 1:

Изображение

Я не стану описывать, что означает та или иная строчка в рамках этого поста. Кому интересно, проходим по линку, который я привожу в конце моей писанины на сайт автора, там все подробно расписано.

Ну, и теперь самое время проверить нашу флешку на читабельность:
flashnul.exe 1 -R:

Изображение

Как видно из этого скриншота, информация считывается с каждой физической ячейки,- адрес ячейки отображается как 0х1500000. В моем случае ошибок чтения обнаружено не было. Но если ошибка обнаруживается, то на экран выводится инфа об адресе проблемной ячейки. И здесь теперь два варианта,- или битая информация или же адрес ячейки, в которой хранится информация не соответствует тому, что прописано в файловой таблице на флешке. Как такое возможно,- это отдельный разговор. Вылечить подобную проблемму вполне реально (правда информация будет утеряна) заполнением этого сектора 0. Как я уже говорил, в моем случае ошибок обнаружено не было и в конце теста на экране появилась информация с результатами:

Изображение

Теперь более агрессивный вид теста: flashnul.exe 1 -Т. Внимание! Выполнение этого теста приводит к полной потере информации.. Суть этого теста состоит в том, что сначала информация записывается на флешку, а затем считывается. При этом проверяется соответствие физических адресов, в которых записана информация, с записями в файловой таблице:

Изображение

Также как и в первый раз, по окончании теста, на экран выводится собранная информация:

Изображение

Это лишь небольшая часть из того, что может эта маленькая и очень полезяя програмка. Все остальные ее возможности и способы применения очень хорошо описаны на сайте автора:

[hide=0]http://shounen.ru/soft/flashnul/readme.rus.html[/hidden]

Я со временем перенесу это дело в нашу ВИКИ, так как считаю эту инфу очень нужной и полезной. Если у кого возникнут трудности с использованием програмки (еще раз подчеркиваю: неправильное использование может полностью повредить устройство или привести к полной потери информации) обращайтесь,- помогу по мере возможностей...
Последний раз редактировалось igor7 05.10.2007, 11:31, всего редактировалось 2 раза.
Homo hominis lupus est. Ipso factum!
dilirom
Друг форума
Сообщения: 5850
Зарегистрирован: 20.08.2005, 00:32
smartphone: Нет
Откуда: Internet

Участник покетовки

Сообщение dilirom »

igor7
Нужная вещь в хозяйстве, +1 однозначно!
Аватара пользователя
misteri
Пользователь
Сообщения: 235
Зарегистрирован: 22.12.2006, 09:30
smartphone: Galaxy S8
Откуда: Северная паутина

Участник покетовки

Даритель

Сообщение misteri »

Очень хорошая статья. Подробно и без рассусоливания.
В хозяйстве вещь, конечно, нужная, но :!: я пользовался ею по работе и ни разу не удалось исправить флешку (CF). Как я писал уже в другой (похожей) теме - это были проблемы контроллера. После моего заключения флэшки возвращались поставщикам и от них ни разу небыло нареканий по поводу диагностики, для чего, собственно, эта утилита и предназначена.
Согласен с dilirom +1 :P
Боишься - не лезь! Лезешь - не бойся!!!
GALAXY S8 + Galaxy A5 (17).
Ещё: Samsung S T700, SM T310
xlib
Пользователь
Сообщения: 58
Зарегистрирован: 29.05.2007, 17:14

Сообщение xlib »

Немного комментариев:
КАТЕГОРИЧЕСКИ запрещено отключение устройства во время выполнения теста, это может привести к физическому повреждению устройства.
Свежо предание, но верится с трудом. USB интерфасе что называется "hot-pluggable", а программа делает только общие операции чтение/запись (не "device-specific").
я пользовался ею по работе и ни разу не удалось исправить флешку
Ничего удивительного. Припарками перелом не лечат.

В остальном - то же самое что и форматирование. Бесполезный мусор.
dilirom
Друг форума
Сообщения: 5850
Зарегистрирован: 20.08.2005, 00:32
smartphone: Нет
Откуда: Internet

Участник покетовки

Сообщение dilirom »

xlib писал(а):В остальном - то же самое что и форматирование. Бесполезный мусор.
А кроме форматирования можешь что-то предложить?
Ответить

Вернуться в «Софт (SOFTWARE)»