The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Рекомендации по восстановлению данных со сбойного накопителя"
Отправлено Аноним, 03-Мрт-18 14:50 
> Хоть раз такое встречал? ЕМНИП на каждый сектор идет несколько байт CRC,
> если совпадения не произойдет, то контроллер выдаст ошибку, а не данные.
> Теоретически конечно возможны изменения в данных, которые дадут такой же CRC,
> но маловероятны.

Сейчас там чаще всего не CRC а FEC - код коррекции ошибок. Поэтому ошибка чтения всего нескольких битиков не ведет к завалу чтения всего сектора. Вместо этого FEC корректирует ошибки и на гора отдаются исправные данные. А накопитель пытается исправить проблемный сектор. Если не получается и после перезаписи исправными данными все-равно не читается - фирмвара переназначит проблемный сектор в grown defect list.

По той же причине в новых дисках сектора сделали 4096 байтов вместо 512. Так соотношение служебных данных FEC и данных сектора лучше. Поскольку данные FEC не входят в емкость накопителя заявляемые на этикетке, производителей душила жаба: место есть, но на этикетке не декларируется. Придумали как тратить меньший процент места на FEC не в ущерб результату. Для более крупных блоков соотношение между FEC и данными лучше при прочих равных. Но слишком крупные блоки с другой стороны дольше ворочать при мелких операциях. Ограничились компромиссом.

При чтении важно использовать размер блока чтения как блок FEC. Нет смысла насиловать 4096-байтный накопитель с Advanced Format 512-байтовыми чтениями - фирмварь читает 4096 байтов, испправляет FEC если надо, а потом отбрасывает все кроме запрошенных 512 байтов. В результате только чтение тормозится, а ничего нового не прочтется. А для 512-байтового накопителя читать 4096 байтов чревато тем что из-за проблем с 1 сектором потеряется и еще до 7 секторов. Возможно читаемых.

SMART зачастую ведет статистику "soft" read errors - это то что при чтении не прочлось но FEC выдюжил и данные не потерялись. Еще обычно ведется статистика "pending sectors" - накопитель заметил что сектор сбойнул при чтении. При попытке записи в него накопитель проверит читается ли записаное и если нет - решит что сектор проблемный и переназначит его. Эти параметры помогают понять насколько дохлый у вас экспонат и чего от него ждать.

Это в теории. На практике фирмвари могут откалывать чудеса налетая на проблемные секторы и картина может несколько отличаться от идеала.

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру