Файловая система FAT . Структура и расположение системной информации файловой системы.



FAT (от англ. File Allocation Table — «таблица размещения файлов») — файловая система, используемая в операционных системах DOS и Windows. Логический диск, отформатированный в системе FAT, имеет следующие разделы:

загрузочный сектор;

таблица размещения файлов — собственно FAT (традиционно в двух экземплярах);

корневой каталог;

файлы.

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

Существует три версии FAT — FAT12, FAT16 и FAT32. Они отличаются количеством бит, отведённых для хранения номера кластера. FAT12 применяется в основном для дискет, FAT16 — для дисков малого объёма.

 

Структура BOOT

Сектор, содержащий загрузочную запись, является самым первым на логическом диске. Boot Record состоит из двух частей – disk parameter block (DPB) и system bootstrap (SB). Структура блоков параметров диска служит для идентификации физического и логического форматов логического диска, а загрузчик system bootstrap играет существенную роль в процессе загрузки DOS.

MBR (Master Boot) расположен в нулевом секторе (цилиндр 0, сторона 0, сектор 1). Здесь содержится информация о разделах диска – их количестве, типе (первичный или расширенный) и адресе начального сектора. Каждый логический раздел начинается с BR (Boot Record) – загрузочной записи, которая указывает на адрес сектора, содержащего загрузочный файл операционной системы.

 

Таблица расположения файлов FAT

При использовании дисковых накопителей возникает проблема: как операционной системе определить, в каких кластерах размещается файл, в какой последовательности эти кластеры располагаются, а также какие кластеры на диске свободны? Для решения этой проблемы на диске организуется специальная табличная структура, называемая таблицей размещения файлов или FАТ (File Allocation Table).

Основной принцип организации FАТ заключается в создании таблицы, каждый элемент которой соответствует одному кластеру. В зависимости от формата диска FАТ состоит из 12-битовых или 16-битовых элементов. Более современной системой является FAT32.

В качестве примера рассмотрим возможные значения элементов FAT12:

• 000h — соответствующий такому элементу кластер свободен и ранее не использовался для хранения файлов;

• 0FF8h до 0FFFh — кластер, соответствующий этому элементу, является последним в файле, т. е. служит идентификатором конца цепочки кластеров ЕОС (Еnd of Chain);

• 0FF7h—свидетельствует о том, что соответствующий кластер дефектен;

• ХХХh — любые 16-ичные цифры, задающие номер следующего кластера в цепочке кластеров.

 

Структура корневого директория ROOT

ROOT – корневой каталог – вершина иерархии дисковой системы. В отличие от всех остальных каталогов, он имеет фиксированный размер, то есть в нем нельзя располагать сколько угодно файлов или каталогов. Ко всем прочим каталогам это не относится, они могут содержать неограниченное число подэлементов.

Элемент оглавления представляет собой 32-байтную запись следующего формата:

Байты 0—7. Имя файла.

Байты 8—10. Расширение имени

Байт 11. Атрибут файла.

Байты 12—21. Обычно содержат нули. Зарезервированы

Байты 22—23. Время последнего доступа к файлу.

Байты 24—25. Дата последнего доступа к файлу.

Байты 26—27. Номер начального кластера.

Байты 28—31. Размер файла.

 

Структура директория

Любой директорий, отличный от корневого, может иметь неограниченное число подэлементов. Структура системы файлов является иерархической. Элементом каталога может быть такой файл, который сам, в свою очередь является каталогом, разница определяется атрибутом. Все каталоги, не являющиеся корневыми, содержат два элемента с зарезервированными именами «.» и «..», помещаемыми в каталог при его создании. Элемент с именем «..» устанавливает связь с каталогом-родителем (parent directory), то есть того, в котором зарегистрирован данный каталог в качестве каталога-сына. Элемент с именем «.» связывает данный каталог с областью дискового пространства, где размещается файл данного каталога: поле начального кластера этого элемента содержит номер первого кластер в файла данного каталога.

 


Дата добавления: 2019-02-13; просмотров: 361; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!