#2 19.07.06 11:38
Re: Очень нужна какая-нибудь документация по файловой системе FAT
Это немного конечно, но всёже вдруг пригодится...
FAT12
ФС FAT (File Allocation Table) получила свое название по способу организации данных — таблицы размещения файлов. Она ориентирована на небольшие диски и простые структуры каталога. FAT12 является 12-битной верcией FAT, соответственно она может адресовывать 212 кластеров (минимальных логически адресуемых единиц данных на диске). Это ограничение и небольшое количество вхождений в корневой каталог определяет использование этой ФС. Сейчас она применяется на дискетах, раньше ее использовали на винчестерах, эта ФС была вытеснена улучшенной версией — FAT16. Диск с использованием любой FAT имеет следующую структуру (см. рис).
Корневой каталог имеет фиксированный размер. Каталоги — специальные файлы с элементами для каждого файла, содержащегося в этом каталоге. Эти элементы включают:
• Имя файла (8+3 символа).
• Байт атрибута (8 бит).
• Время модификации (16 бит).
• Дату модификации (16 бит).
• Первый размещаемый блок (12 бит для FAT12).
• Размер файла (32 бита).
Специальная надстройка над FAT, называемая VFAT (Virtual FAT), обеспечивает поддержку длинных имен файлов. Это следует учесть, так как некоторые старые DOS-утилиты могут запороть диск с длинными именами файлов, считая поврежденной структуру FAT. Все версии FAT не обладают функциями защиты данных и автоматического восстановления, посему я рекомендую их применять только для обеспечения совместимости.
FAT16
Улучшенная версия FAT. Максимальный размер тома равен 4095 Мб, размер кластера определяется размером тома и находится в диапазоне от 512 байт до 64 Кб. Число кластеров не превышает 216.
FAT32
Модифицированная версия FAT. Размер тома увеличен до 127 Гб, число кластеров — до 232. Позволяет использовать при одинаковых размерах томов кластеры меньшего размера, чем FAT16, что увеличивает эффективность организации данных. Впервые поддержка этой ФС появилась в Windows 95 OSR2. Все версии NT до 4.0 включительно ее не поддерживают (для поддержки в NT 4.0 нужен соответствующий Service Pack).
Offline
#4 19.07.06 11:46
Re: Очень нужна какая-нибудь документация по файловой системе FAT
Кроме того полезно знать устройство разделов диска :)
Жесткий Диск (винчестер) представляет собой блок из нескольких дисков/блинов (Disks) по поверхностям (Sides) которых перемещаются (плавают в воздушном потоке) головки (Heads). Позиционируются головки по концентрическим дорожкам/трекам/цилиндрам (Cilinders), каждый из которых разделен на сектора (Sectors). Сектор является минимальным адресуемым блоком данных для диска и его размер равен 512 байтам. Логическое строение жесткого диска отличается от его настоящей (физической) геометрии и это необходимо учитывать при восстановлении информации. Как правило, современные диски (в режиме адресации LBA) представляют собой несколько сот цилиндров имеющих 63-254 поверхностей по 63 сектора данных на каждой.
В самом начале диска (в секторе 0/0/1) находится PT (Partition Table) - таблица разделов и MBR (Master Boot Record) - главная загрузочная запись.
На следующем треке в первом(ых) секторе(ах) (начиная с 0/1/1) расположена BA (Boot Area) - загрузочная область операционной системы и BR (Boot Reco rd) - загрузочная запись OC.
Далее на этом же треке расположена 1-я копия FAT (File Allocation Table) - таблица размещения файлов. Сразу за ней - 2-я копия FAT. Размер копии FAT (в секторах) определяется размером раздела диска.
После 2-й копии FAT расположены сектора ROOT (Root directory) - корневого каталога, за которой начинается DA (Data Area) - область данных.
PT - состоит из 4-х строк описывающих 4-е возможных раздела диска. Описание каждого раздела диска содержит информацию о типе файловой системы, признаке того, что раздел является загрузочным, о первых и последних головках, дорожках, секторах раздела, количестве секторов смещения начала раздела от начала диска и об общем количестве секторов в разделе.
MBR - находится в том же секторе что и PT. Данные в MBR представляют собой код процессора необходимый для дальнейшей загрузки операционной системы. В последних двух байтах сектора MBR находится сигнатура 55AAh, которую можно использовать как маску при поиске PT и MBR.
BR - содержит массу данных и служит для описания параметров файловой системы. В отличие от диска, минимальным адресуемым блоком данных для операционной системы служит кластер, объединяющий определенное количество секторов. В BR нам интересны такие данные как размер кластера, размер и количество копий FAT. BR для раздела FAT16 размещается в одном секторе, в случае FAT32 Boot Record состоит из нескольких секторов.
FAT - Состоит из 12, 16 или 32 битных элементов, описывающих номера кластеров или их признаки (BAD). Количество элементов соответствует количеству кластеров раздела диска. Из этих элементов образуются цепочки номеров кластеров, описывающих расположение файлов на диске.
ROOT - Корневой каталог диска. Содержит записи описывающие файлы (дескрипторы файлов) в корневом каталоге. Такая запись описывает имя, тип, дату создания, размер, атрибуты файла, и т.п., а так же содержит указатель на первый кластер файла.
Каталоги представляют собой сектора идентичные по структуре корневому каталогу. Каталог, кроме описаний файлов, в самом начале содержит две записи, первая из которых содержит указатель на первый кластер самого каталога, вторая на первый кластер родительского каталога.
%)
Offline
#6 19.07.06 13:43
Re: Очень нужна какая-нибудь документация по файловой системе FAT
Комиссар написал(а):
поделитесь ссылками, где сие можно почитать
Offline
#8 19.07.06 14:24
Re: Очень нужна какая-нибудь документация по файловой системе FAT
http://mp3vkarmane.nm.ru/mmc.html
тут фат16, описывается на примере флешек (ММС и SD)
Offline

