Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Восстановление информации.doc
Скачиваний:
130
Добавлен:
10.12.2013
Размер:
893.95 Кб
Скачать

Анализ зарезервированных секторов

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

Количество секторов, зарезервированных на логическом диске, можно узнать из блока параметров BIOS (BPB или Extended BPB, в зависимости от версии операционной системы). Искомое значение находится в поле этого блока со смещением 3. При форматном просмотре количество зарезервированных секторов указано в строке Reserved sectors at beginning.

Если зарезервирован только один сектор, то первая копия таблицы размещения файлов FAT располагается сразу вслед за загрузочным сектором. Именно загрузочный сектор в данном случае и является зарезервированным.

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

Таблицы размещения файлов FAT

Операционная система объединяет отдельные секторы диска в так называемые кластеры. При создании новых каталогов и непустых файлов для них выделяется один или несколько кластеров. Если размер файла увеличивается, для него выделяются дополнительные кластеры.

Размер кластера в секторах (то есть количество секторов в одном кластере) нетрудно узнать из поля блока параметров BIOS BPB со смещением 2. При форматном просмотре содержимого загрузочного сектора размер кластера отображается в строке Sectors per cluster.

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

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

Где же хранятся списки кластеров?

Эти списки хранятся в таблице размещения файлов FAT (File Allocation Table), к анализу которой мы скоро приступим.

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

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

Таким образом, зная имя файла и каталог, где этот файл расположен, операционная система MS-DOS может определить номер первого кластера, распределенного файлу, а затем, проследив список кластеров по таблице FAT, определить и номер остальных кластеров, занятых этим файлом.

Программа FORMAT, предназначенная для форматирования диска и некоторые специальные программы аналогичного назначения проверяют логический диск на предмет наличия дефектных областей. Кластеры, расположенные в этих дефектных областях, отмечаются в FAT как плохие и не используются операционной системой.

Для примера на рис. 6 показаны упрощенные дескрипторы корневого каталога диска C:. В них описаны файлы MYFILE1.DOC и MYLETTER.DOC, а также элементы таблицы размещения файлов FAT, выделенные для этих файлов.

Рис. 6. Пример распределения кластеров для файлов MYFILE1.DOC и MYLETTER.DOC

Файл MYFILE1.DOC занимает три кластера с номерами 11, 17 и 18, а файл MYLETTER.DOC - два кластера с номерами 12 и 13. В каталоге указаны номера первых кластеров, распределенных этим файлам (соответственно 11 и 12). Последние ячейки, соответствующие последним кластерам, распределенным файлам, содержат специальное значение - признак конца цепочки кластеров. Для 16-разрядного формата FAT это 0xFFFF, а для 12-разрядного - 0xFFF.

Соседние файлы в предмете Защита информации