Восстановление служебной информации

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

Служебная информация накопителя (называемая еще микропрограммой, или микрокодом – firmware) – это набор программного обеспечения, управляющий работой накопителя как физически независимого устройства и обеспечивающий взаимодействие накопителя с операционной системой. Таким образом, микропрограмма четко разделяется на две чести – управляющая (managing microcode) и интерфейсная (interface microcode). Выход из строя любой из них может приводить к отказу накопителя работать в стандартном режиме и к необходимости ее ремонта.

Восстановление работоспособности служебной информации осуществляется специализированными программами (РС-3000, HRT, MRT и т.п.), умеющими «открывать» скрытые в нормальном режиме области поверхности накопителя. Организовано хранение микропрограммы по-разному: от нумерации цилиндров в обратную сторону от нуля (минус 1, минус 2 и т.п.) до разделения поверхности на ABA и LBA (ABA – Absolute Block Addressing, LBA – Logical Block Addressing) с выделением в служебную область только региона ABA. Вникать в эти тонкости нам не имеет смысла: главное знать, что ремонт служебной зоны возможен только специализированным ПО.

Для правильного ремонта микрокода требуется знать, за что отвечает каждая часть firmware. Обычно служебная информация разделена на модули по их назначению – таких модулей может быть два десятка (новые Seagate) а может быть и две тысячи (новые Western Digital). При ремонте служебной зоны часть модулей можно переписать от аналогичного накопителя, часть модулей – нельзя (они являются критичными для доступа к данным). Если такие модули (критичные для данных) выходят из строя, мы применяем различные алгоритмы их восстановления – от пересчета содержимого модуля средствами микропрограммы до ручной сборки модуля в шестнадцатеричном редакторе. Метод сборки модуля зависит от производителя и модели накопителя, типа повреждения оригинального модуля и наличия вспомогательных модулей, с помощью которых можно заново построить испорченный.

Микропрограмма, как мы уже писали выше, бывает двух типов. Однако устройство микропрограммы намного сложнее и может быть кратко описано так. Сначала вступает в работу инициализационный код микропрограммы, который по мере активации разных систем накопителя передает управление ими определенным частям микропрограммы. Когда накопитель инициализирован, управление им полностью передано операционной системе накопителя (у некоторых из них, таких как Seagate, она даже имеет собственное название – MOS (My Operating System)). Работа этой операционной системы обеспечивается тремя типами оверлеев: АТА-оверлеи, обеспечивающие работу накопителя по интерфейсу (причем для накопитля не важно – по АТА-интерфейсу или по внутреннему, физическому), серво-оверлеи, обеспечивающие работу системы позиционирования накопителя, и служебные оверлеи, обеспечивающие работу служебной информации в режиме функционирования микропрограммы. Кроме системы оверлеев, работает система трансляции, организующая интерпретацию физического пространства накопителя в логическое и обеспечивающая обход дефектных секторов. Наконец, работает некоторое число дополнительных систем: SMART, Automatic Acoustic Management, Security и т.п., которые также являются частями микропрограммы. Все эти системы имеют обновляемые модули – информация об их работе постоянно записывается в системные логи и может быть проанализирована.

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

Все эти типы неисправностей служебной информации мы умеем определять и устранять. Самостоятельный ремонт служебной зоны, даже если у вас имеется доступ к ПО, которое умеет его делать, мы строго не рекомендуем. Замена критичного для данных модуля, неправильные его пересчет, стирание – приводит к полной потере возможности восстановления данных с такого накопителя.

-5%