Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LEKTsII_obschie.doc
Скачиваний:
4
Добавлен:
01.07.2025
Размер:
1 Мб
Скачать
☆

3.2.22 Резюме

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

Наиболее распространенные способы выделения дискового пространства: непрерывное выделение, организация связного списка и система с индексными узлами.

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

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

Часть 3. Примеры файловых систем

3.2.23. Файловая система fat

Аббревиатура FAT (file allocation table) означает «таблица размещения файлов». Этот термин относится к линейной табличной структуре со сведениями о файлах – именами файлов, их атрибутами и другими данными, определяющими местоположение файлов или их фрагментов в среде FAT. Элемент FAT определяет фактическую область диска, в котором хранится начало физического файла.

В файловой системе FAT логическое дисковое пространство любого логического диска делится на две области: системную область и область данных.

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

Таблица размещения файлов представляет собой карту (образ) области данных, в которой описывается состояние каждого участка области данных. Область данных разбивается на кластеры. Кластер – один или несколько смежных секторов в логическом дисковом адресном пространстве (только в области данных). В таблице FAT кластеры, принадлежащие одному файлу (некорневому каталогу), связываются в цепочки. Для указания номера кластера в системе управления файлами FAT16 используется 16-битовое слово, следовательно, можно иметь до 216 = 65536 кластеров.

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

Так как FAT используется при доступе к диску очень интенсивно, она загружается в ОЗУ и находится там максимально долго.

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

  • имя файла или каталога – 11 байт;

  • атрибуты файла – 1 байт;

  • резервное поле – 1 байт;

  • время создания – 3 байта;

  • дата создания – 2 байта;

  • дата последнего доступа – 2 байта;

  • зарезервировано – 2 байта;

  • время последней модификации – 2 байта;

  • номер начального кластера в FAT – 2 байта;

  • размер файла – 4 байта.

Структура системы файлов является иерархической.