Мы на связи:
+7 (351) 751-16-68

Мы находимся:
Челябинск, Гагарина, 9, оф. 417

Восстановление данных

О медленной работе дисков Western Digital

Проблема

Поговорим немного о Pending у Western Digital. Что же это такое?

Жесткий диск - сложное техническое устройство, где программная часть нисколько не меньше аппаратной.

Рано или поздно случается так, что на диске образуются дефекты (причиной может являться поверхность диска или состояние головок). Сначала они проявляются в виде нестабильной записи, потом и вовсе превращаются в "полноценный" дефект.

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

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

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

Как правило, нет смысла ждать, пока он освободится, образование дефектов - процесс лавинообразный, диск начинает "сыпаться".

Как же решают данную проблему специалисты?

Старое решение

Конечно, логичным решением является очистка RELO-list. Для этого надо прочитать таблицу из служебной зоны, очистить данные, оставив заголовок, пересчитать контрольную сумму и записать модуль на место. Звучит легко? Но не так просто на практике. 

Чтобы диск не тормозил, нам нужно запретить читать ему RELO-list. Делается это обычно смещением адресов служебной зоны, в результате чего диск вообще не читает служебную зону.

Не секрет, что для полноценной возможности работы диска Western Digital со служебной зоной требуются загруженные оверлеи (исполняемого файла) в ОЗУ.

Ранее было достаточно одного только 11 модуля (permanent overlay), сейчас же этот оверлей может быть поделен на части (например, 13 модуль может быть не в составе 11, а отдельно), и в новых семействах добавляются новые, критичные для работы со служебной зоной оверлеи, которые далеко не всегда известны (и как работать с ними - тоже). 

В итоге изменения координат, диск не загружает ничего из служебной зоны, и доступ к таблице RELO-list мы не имеем. Что делать в этом случае?

Обычно специалист ищет совместимые оверлеи в своей базе ресурсов, в интернете, у коллег, но это не самый быстрый и эффективный метод, а иногда и вовсе тяжело найти редкую firmware.

Решение

Мы же предлагаем другой способ получения оверлеев и вообще всех модулей из служебной зоны.

Заключается он в том, что после сдвига координат старта служебной зоны (координат регионов, если говорить о терминологии распространенного в странах СНГ программно-аппаратного комплекса от Acelab ), и рестарта диска (когда он не прочитал служебную зону), мы сдвигаем регионы в ОЗУ на исходную позицию.

Так устроен диск, что процедуры чтения служебных модулей есть в ПЗУ, а запись - только в оверлеях. И мы можем, сдвинув в ОЗУ координаты на место, читать модули по их идентификатору.

Одного возврата координат на место недостаточно - нужно загрузить каталог модулей в ОЗУ, после чего можно будет прочитать любой модуль с диска.

После всего этого все нужные оверлеи будут у специалиста, он сможет вручную загрузить их в ОЗУ и использовать все возможности записи модулей, чтобы исправить проблему пендинга.

В итоге, с данной методикой при пендинге больше не требуется просить и искать совместимые оверлеи по всему интернету - достаточно спросить их у самого диска.

Второй способ - более интересный, мы уже писали про него на основном сайте фирмы, и о нем можно рассказать лишь вкратце, так как он является нашим ноу-хау. Заключается он в блокировке в ПЗУ инициализации трансляции (и загрузки RELO-list) и полноценной работе со служебной зоной без дополнительных загрузок оверлеев, без их поиска. Диск сам загружает все нужное для работы, кроме поврежденных или заполненных таблиц.

И, конечно, все вышенаписанное актуально для тех случаев, когда диск способен самостоятельно прочитать все необходимые модули с поверхности.

Надеемся, что данный текст хоть немного поможет коллегам справляться с пендинг у Western Digital самостоятельно.