Аббревиатура FAT (File Allocation Table) означает «таблица размещения файлов». Этот термин относится к линейной табличной структуре со сведениями о файлах – именами файлов, их атрибутами и другими данными, определяющими местоположение файлов или их фрагментов в среде FAТ. Элемент FAТ определяет фактическую область диска, в котором хранится начало физического файла. В файловой системе FAT логическое дисковое пространство любого логического диска состоит из двух областей:
- системная область – создается при форматировании диска и обновляется при манипулировании файловой структурой;
- область данных – содержит файлы и каталоги, подчиненные корневому каталогу, доступна через пользовательский интерфейс.
Системная область состоит из следующих компонентов:
- загрузочной записи;
- зарезервированных секторов;
- таблицы размещения файлов (FAT);
- корневого каталога.
Таблица размещения файлов представляет собой карту (образ) области данных, в которой описывается состояние каждого участка области данных. Область данных разбивается на кластеры. Один или несколько смежных секторов в логическом дисковом адресном пространстве (только в области данных) объединяются в единый дисковый блок – кластер.
Кластер – минимальная адресуемая единица дисковой памяти, выделяемая файлу или некорневому каталогу. Например, в FAT16 размер кластера составляет 32 кбайт. Файл или каталог занимает целое число кластеров. Последний кластер при этом может быть задействован не полностью, что приведет к заметной потере дискового пространства при большом размере кластера.
В таблице FAT кластеры, принадлежащие одному файлу (некорневому каталогу), связываются в цепочки. Для указания номера кластера в системе управления файлами FAT16 используется 16-битовое слово, следовательно, можно хранить информацию максимум о 65536 кластерах. Так как FAT используется при доступе к диску очень интенсивно, она загружается в оперативную память и находится там максимально долго.
Корневой каталог отличается от обычного каталога тем, что он размещается в фиксированном месте логического диска и имеет фиксированное число элементов. Структура системы файлов является иерархической. Файлам присваиваются первые доступные адреса кластеров в томе. Номер начального кластера файла представляет собой адрес первого кластера, занятого файлом, в таблице размещения файлов. Каждый кластер содержит указатель на следующий кластер, использованный файлом, или индикатор (OxFFFF), указывающий, что данный кластер является последним кластером файла.
Файлы на дисках имеют 4 атрибута, которые могут сбрасываться и устанавливаться пользователем: Archive (архивный), System (системный), Hidden (скрытый) и Read-only (только чтение).
Файловая система FAT первоначально была ориентирована на небольшие диски и простые структуры каталога. Затем ее усовершенствовали для обеспечения работы с большими дисками и мощными персональными компьютерами. Windows XP и Windows Server 2003 поддерживают файловую систему FAT по трем причинам:
- для возможности обновления операционной системы с прежних версий Windows;
- для совместимости с другими операционными системами при многовариантной загрузке;
- как формат гибких дисков.
В название каждой версии FAT входит число, которое указывает разрядность, применяемую для идентификации кластеров на диске. Двенадцатиразрядный идентификатор кластеров в FAT12 ограничивает размер дискового раздела 212 (4096) кластерами. В Windows используются кластеры размером от 512 байт до 8 Кб, так что размер тома FAT12 ограничен 32 Мб. Поэтому Windows использует FAT12 как формат 5,25 и 3,5-дюймовых дискет, способных хранить до 1,44 Мб данных. FAT16 за счет 16-разрядных идентификаторов кластеров может адресовать до 216 (65536) кластеров. В Windows размер кластера FAT16 варьируется от 512 байт до 64 Кб, поэтому размер тома FАТ16 ограничен 4 Гб. Размер кластеров, используемых Windows, зависит от размера тома.
Таблица 1
Размеры кластеров в FAT16 по умолчанию (в Windows)
№ п/п
Размер тома (Мб)
Размер кластера
0-32
512 байт
33-64
1 Кб
65-128
2 Кб
129-256
4 Кб
257-511
8 Кб
512-1023
16 Кб
1024-2047
32Кб
2048-4095
64Кб
Файловая система FAT32 обеспечивает оптимальный доступ к жестким дискам, CD-ROM и сетевым ресурсам, повышая скорость и производительность всех операций ввода/вывода. FAТ32 представляет собой усовершенствованную версию FAT, предназначенную для использования на томах, объем которых превышает 2 Гбайта. Размер кластера в FAТ32 равен 4 кбайт. FAТ32 является полностью независимой 32-разрядной файловой системой и содержит многочисленные усовершенствования и дополнения по сравнению с FAT16. Принципиальное отличие FAТ32 заключается в более эффективном использовании дискового пространства за счет использования кластеров меньшего размера, что приводит к экономии дискового пространства. FAТ32 может перемещать корневой каталог и использовать резервную копию FAT вместо стандартной. Расширенная загрузочная запись FAТ32 позволяет создавать копии критических структур данных, что повышает устойчивость дисков к нарушениям структуры FAT по сравнению с предыдущими версиями. Корневой каталог представляет собой обычную цепочку кластеров, поэтому может находиться в произвольном месте диска, что снимает ограничение на размер корневого каталога.
FAT32 использует 32-разрядные идентификаторы кластеров, но при этом резервирует старшие 4 бита, так что эффективный размер идентификатора кластера составляет 28 бит. Поскольку максимальный размер кластеров FAT32 равен 32 Кб, теоретически FAT32 может работать с 8-терабайтными томами. Однако реализация FAT32 в Windows XP / Windows 2003 не позволяет создавать тома, превышающие 32 Гб, хотя операционная система может задействовать существующие тома FAT32 любого размера.
Таблица 2
Размеры кластеров в FAT32 по умолчанию (в Windows)
№ п/п
Размер тома (Мб)
Размер кластера
От 32 Мб до 8 Гб
8-16 Гб
16-32 Гб
32Гб
Файловая система FAT не обеспечивает функций защиты данных и автоматического восстановления. Поэтому она используется, только если альтернативной системой на компьютере является MS-DOS или Windows 95/98, а также для передачи данных на гибких дисках.