Проверка работоспособности флэш-накопителя: работает ли накопитель до его отказа? - PullRequest
0 голосов
/ 24 июня 2009

Мне подарили дешевую, не брендовую флешку на 2 ГБ. Поскольку у меня есть флэш-накопитель большего размера, я решил использовать его для тестирования надежности флэш-технологии.

Я планирую написать 1 на всем диске, проверить правильность, написать 0, проверить и так далее. Я запишу результаты и буду искать ошибки позже.

Я ищу наиболее ресурсосберегающую технику для этого. Моя текущая стратегия включает использование команды linux dd для записи и чтения и сравнение результата с файлом из нулей и единиц. Другим подходом будет запись единиц и нулей на диск и вычисление md5 его содержимого. Это простой компромисс между интенсивным чтением ввода-вывода и высокой загрузкой процессора; Полагаю, я просто измерим время выполнения каждого метода и приму решение.

Есть ли лучшие, более элегантные способы сделать это?

Ответы [ 2 ]

2 голосов
/ 24 июня 2009

Вы также можете использовать команду linux 'badblocks', чтобы выполнить тесты за вас. При использовании с параметром -w он будет выполнять тест режима записи для вас, используя различные шаблоны, записывая блок и читая его обратно, чтобы проверить его успешность.

Вы можете запустить его непосредственно на устройстве, не подключая его, чтобы протестировать каждый блок физического устройства.

   -w     Use  write-mode  test. With this option, badblocks scans for bad
          blocks by writing some patterns  (0xaa,  0x55,  0xff,  0x00)  on
          every block of the device, reading every block and comparing the
          contents.  This option may not be combined with the  -n  option,
          as they are mutually exclusive.
1 голос
/ 24 июня 2009

Выберите случайное 32-битное число. Запишите это в каждом блоке. Прочитайте это из каждого блока. Новый 32-битный номер. Запустите диск снова. Алгоритмы хеширования, такие как MD5, интенсивно используют процессор Поскольку вы точно знаете схему и просто проверяете, что привод не портит биты, простое прямое сравнение является лучшим подходом. Не используйте DD ... пишите прямо с таких языков, как C или Perl (если рядом с апельсинами стояли яблоки ...)

Нет необходимости иметь файл сравнения ... шаблон помещается в память. На самом деле, весь тест, вероятно, помещается в кэш ЦП, если выполняется аккуратно, но флешка, очевидно, будет узким местом в любом случае. Найдите неправильный номер, вы знаете, что у вас плохой блок.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...