Как работает FAT (таблица размещения файлов)?

4598
gonnabe

Я получил следующее описание FAT со слайда PowerPoint:

Partition boot record(1 sector) ------------------------------- Main FAT (size is up to 2 clusters) ------------------------------- Backup FAT (sam size as main FAT) ------------------------------- Root directory ------------------------------- Data area(size varies) 

Выполняя поиск в Интернете, я в основном могу понять суть функций FAT. Но, вдаваясь в детали, подобные вышесказанному, я не понимаю функциональность каждой части, как показано.

Может кто-нибудь объяснить особенности каждого раздела в вышеупомянутой структуре FAT?

2
Хороший совет для Google "FAT32 спецификации" Cole Johnson 11 лет назад 1
Или прочитайте статью Википедии о FAT32: http://en.wikipedia.org/wiki/FAT32#Technical_design Indrek 11 лет назад 1

1 ответ на вопрос

0
MaQleod

Wikipedia has a good explanation:

A FAT file system is composed of four different sections:

The Reserved sectors, located at the very beginning. The first reserved sector (sector 0) is the Boot Sector (aka Volume Boot Record (VBR)). It includes an area called the BIOS Parameter Block (with some basic file system information, in particular its type, and pointers to the location of the other sections) and usually contains the operating system's boot loader code. Important information from the Boot Sector is accessible through an operating system structure called the Drive Parameter Block (DPB) in DOS and OS/2. The total count of reserved sectors is indicated by a field inside the Boot Sector. For FAT32 file systems, the reserved sectors include a File System Information Sector at sector 1 and a Backup Boot Sector at sector 6.

The FAT Region.

This typically contains two copies (may vary) of the File Allocation Table for the sake of redundancy checking, although rarely used, even by disk repair utilities. These are maps of the Data Region, indicating which clusters are used by files and directories. In FAT12 and FAT16 they immediately follow the reserved sectors. Typically the extra copies are kept in tight synchronization on writes, and on reads they are only used when errors occur in the first FAT. In FAT32, it is possible to switch from the default behaviour and select a single FAT out of the available ones to be used for diagnosis purposes.

The Root Directory Region.

This is a Directory Table that stores information about the files and directories located in the root directory. It is only used with FAT12 and FAT16, and imposes on the root directory a fixed maximum size which is pre-allocated at creation of this volume. FAT32 stores the root directory in the Data Region, along with files and other directories, allowing it to grow without such a constraint. Thus, for FAT32, the Data Region starts here.

The Data Region.

This is where the actual file and directory data is stored and takes up most of the partition. Traditionally, the unused parts of the data region are initialized with a filler value of 0xF6 during format on IBM compatible machines, but also used on the Atari Portfolio. 8-inch CP/M floppies typically came pre-formatted with a value of 0xE5;[9] by way of Digital Research this value was also used on Atari ST formatted floppies.[nb 3] Some modern formatters wipe hard disks with a value of 0x00, whereas a value of 0xFF is used on flash disks to reduce wear. The latter value is typically also used on ROM disks. (Some advanced formating tools allow to configure the format filler byte.[nb 4])

The size of files and subdirectories can be increased arbitrarily (as long as there are free clusters) by simply adding more links to the file's chain in the FAT. Note however, that files are allocated in units of clusters, so if a 1 KB file resides in a 32 KB cluster, 31 KB are wasted.

FAT32 typically commences the Root Directory Table in cluster number 2: the first cluster of the Data Region.

Похожие вопросы