Файловая система fat (file allocation table — таблица размещения файлов) получила свое название благодаря простой таблице, в которой указываются:
· Непосредственно адресуемые участки логического диска, отведенные для размещения в них файлов или их фрагментов;
· Свободные области дискового пространства;
· Дефектные области диска (эти области содержат дефектные участки и не гарантируют чтение и запись данных без ошибок).
В файловой системе fat дисковое пространство любого логического диска делится на две области (рис. 7.1): системную область и область данных.
Системная область логического диска создается и инициализируется при форматировании, а в последующем обновляется при работе с файловой структурой. Область данных логического диска содержит обычные файлы и файлы-каталоги; эти объект образуют иерархию, подчиненную корневому каталогу. Элемент каталога описывает файловый объект, который может
Рис. 7.1. Структура логического диска в fat
быть либо обычным файлом, либо файлом-каталогом. Область данных, в отличие от системной области, доступна через пользовательский интерфейс операционной системы. Системная область состоит из следующих компонентов (расположенных в логическом адресном пространстве друг за другом):
Таблица размещения файлов является очень важной информационной структурой. Можно сказать, что она представляет собой адресную карту области данных, в которой описывается и состояние каждого участка области данных, и принадлежность его к тому или иному файловому объекту.
Всю область данных разбивают на так называемые кластеры. Кластер представляет собой один или несколько смежных секторов в логическом дисковом адресном пространстве (точнее — только в области данных). Кластер — это минимальная адресуемая единица дисковой памяти, выделяемая файлу (или некорневому каталогу). Кластеры введены для того, чтобы уменьшить количество адресуемых единиц в области данных логического диска.
Одной из важнейших характеристик исходной файловой системы fat было использование имен файлов формата 8.3. К стандартной системе fat (имеется в виду прежде всего реализация fat16) добавились еще две разновидности, используемые в широко распространенных ос от microsoft (конкретно — в windows 95 и windows nt): vfat (виртуальная система fat) и система fat32, используемая в одной из редакций ос windows 95 и windows 98. Ныне файловая система fat32 поддерживается и такими последними системами, как windows millennium edition, windows 2000 и windows xp. Имеются реализации fat32 и для windows nt, и для linux.
Основными недостатками файловых систем fat и vfat, которые привели к разработке новой реализации файловой системы, основанной на той же идее (таблице размещения файлов), являются большие потери на кластеризацию при больших размерах логического диска и ограничения на сам размер логического диска. Поэтому в microsoft windows 95 oem service release 2 на смену системе vfat пришла файловая система fat32, которая является полностью самостоятельной 32-разрядной файловой системой и содержит многочисленные усовершенствования и дополнения по сравнению с предыдущими реализациями fat. Самое принципиальное отличие заключается в том, что fat32 намного эффективнее расходует дисковое пространство.