Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!

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


Проблемы спасения ценных файлов с современных жестких дисков.

Проблемы спасения ценных файлов  с современных  жестких дисков. 

Сравнительно недавно жесткие диски стоили достаточно дорого, и был «экономический» интерес в их ремонте. На плате электроники использовали целую россыпь микро­схем с низкой степенью интеграции и серийные комплектующие, над кото­рыми имело смысл поработать с осциллографом, выискивая неис­правный элемент. Но затем степень интеграции начала стремительно нарастать, производители перешли на заказные чипы, а цены на винчестеры упали, но сохранился большой  интерес к восстановлению данных.

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

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

Средства для написания специальных программ

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

                Программы BIOS подробно описаны (как говорят, хорошо документированы). По ним изданы  справочники в печатном и электронном виде. Набор, отладку и запуск программ на выполнение, удобно осуществлять с помощью специальных программ - профотладчиков (Debug, AFD и др.). Программы-профотладчики ориентированы на специалистов по ремонту и диагностированию персональных компьютеров, и хотя с точки зрения программистов, они обладают скромными функциональными возможностями, но для написания и выполнения небольших специальных программ их возможностей вполне достаточно.

                Материнским платам с UEFI, не нужна BIOS, потому что в ней есть своя встроенная BIOS, называется — модуль поддержки совместимости. Поэтому те программы, которым для работы нужен был BIOS,  спокойно могут работать и на компьютерах с UEFI.

Необходимый минимум знаний

Что же нужно знать для написания таких специальных программ?  Необходимо следующее:

 - знать примерно 10-20 простых команд ассемблера из базового набора команд семейства микропроцессоров (8086-Pentium 4) и наиболее простые виды адресации, используемые для указания операндов в командах;

 - уметь пользоваться справочником по функциям BIOS;

 - знать назначение основных программно-доступных регистров процессора, используемых при программировании;

 - уметь пользоваться профотладчиком AFD (уметь использовать основные команды и функциональные клавиши);

 - знать общую архитектуру IBM PC подобных компьютеров.

Прерывание Int 13h, функция 42h: расширенное чтение.

Функция осуществляет передачу секторов с заданной области диска в буфер памяти.

Перед вызовом прерывания требуется записать в регистры следующие значения:

•        в АН — значение 42h;

•        в DL — номер дисковода;

•        в DS: SI — пакет дискового адреса.

После завершения операции функция возвращает в регистре АН состояние дисковой системы. В случае аварийного завершения выполнения функции поле счетчика блоков в пакете дискового адреса содержит число блоков, которые были успешно прочитаны (прочитаны до того, как произошла ошибка).

 Прерывание Int 13h, функция 43h: расширенная запись.

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

Перед вызовом прерывания требуется записать в регистры следующие значения:

•        в АН — значение 43h;

•        в AL — код режима записи (0 или 1 — запись без верификации, 2 — запись с верификацией);

•        в DL — номер дисковода;

•        в DS: SI — пакет дискового адреса.

После завершения операции функция возвращает в регистре АН состояние дисковой системы. В случае аварийного завершения выполнения функции поле счетчика блоков в пакете дискового адреса содержит число блоков, которые были успешно записаны (записаны до того, как произошла ошибка). Причиной аварийного завершения , данной функции может быть отсутствие у заданного устройства поддержки команды записи данных с верификацией. Проверить наличие поддержки записи с верификацией можно при помощи функции BIOS (48h).

 etSMz6cc.png (922×689)

 

Какие проблемы решают за счет использования таких программ ?

1. Восстановление системных областей (MBR, BOOT и GPT-структур). После высокоуровнего форматирования разделов HDD, cтруктуры MBR и BOOT  являются константами. Их копируют в программки их восстановления (сектор в сектор).

2. С помощью таких программ можно «спасать» файлы используя знание структур файловых систем «вручную».

3. С помощью таких программ можно «вручную» восстанавливать правильность служебных структур файловых систем.

4. С помощью таких программ можно тестировать и проводить диагностику HDD и др. устройств, создавать условия для исследования процессов с помощью осцилографа и многое другое ...

 


Лицензия