Wie funktioniert FAT (File Allocation Table)?

4705
gonnabe

Ich habe die folgende Beschreibung von FAT von einer PowerPoint-Folie erhalten:

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) 

Durch die Suche im Internet kann ich vor allem den Hauptinhalt der FAT-Funktionen ermitteln. Aber wenn ich auf Details wie die oben genannten eingehen möchte, verstehe ich nicht die Funktionalität jedes Teils wie gezeigt.

Kann jemand die Eigenschaften jedes Abschnitts in der obigen FAT-Struktur erklären?

2
Ein guter Tipp ist die google "FAT32-Spezifikation". Cole Johnson vor 11 Jahren 1
Oder lesen Sie den Wikipedia-Artikel zu FAT32: http://en.wikipedia.org/wiki/FAT32#Technical_design Indrek vor 11 Jahren 1

1 Antwort auf die Frage

0
MaQleod

Wikipedia hat eine gute Erklärung:

Ein FAT-Dateisystem besteht aus vier verschiedenen Abschnitten:

Die reservierten Sektoren befinden sich ganz am Anfang. Der erste reservierte Sektor (Sektor 0) ist der Boot-Sektor (auch bekannt als Volume Boot Record (VBR)). Es enthält einen Bereich namens BIOS-Parameterblock (mit einigen grundlegenden Dateisysteminformationen, insbesondere Typ und Zeiger auf die Position der anderen Abschnitte) und enthält normalerweise den Bootloader-Code des Betriebssystems. Wichtige Informationen aus dem Boot-Sektor sind über eine Betriebssystemstruktur mit dem Namen Drive Parameter Block (DPB) in DOS und OS / 2 verfügbar. Die Gesamtzahl der reservierten Sektoren wird durch ein Feld im Boot-Sektor angezeigt. Bei FAT32-Dateisystemen umfassen die reservierten Sektoren einen Sektor für Dateisysteminformationen in Sektor 1 und einen Backup-Boot-Sektor in Sektor 6.

Die FAT-Region.

Diese enthält in der Regel zwei Kopien (kann variieren) der Dateizuordnungstabelle, um die Redundanz zu überprüfen, obwohl sie selbst von Festplatten-Reparaturprogrammen nur selten verwendet wird. Dies sind Karten des Datenbereichs, die angeben, welche Cluster von Dateien und Verzeichnissen verwendet werden. In FAT12 und FAT16 folgen sie sofort den reservierten Sektoren. Normalerweise werden die zusätzlichen Kopien beim Schreiben eng synchronisiert und beim Lesen nur dann verwendet, wenn Fehler in der ersten FAT auftreten. In FAT32 ist es möglich, vom Standardverhalten umzuschalten und aus den verfügbaren FAT eine einzige für die Diagnose zu verwendende auszuwählen.

Die Root-Verzeichnisregion.

Dies ist eine Verzeichnis-Tabelle, in der Informationen zu den Dateien und Verzeichnissen im Stammverzeichnis gespeichert werden. Es wird nur mit FAT12 und FAT16 verwendet und erzwingt im Stammverzeichnis eine feste Maximalgröße, die bei der Erstellung dieses Volumes vorbelegt wird. FAT32 speichert das Stammverzeichnis im Datenbereich zusammen mit Dateien und anderen Verzeichnissen, sodass es ohne eine solche Einschränkung wachsen kann. Daher beginnt für FAT32 der Datenbereich hier.

Der Datenbereich.

Hier werden die eigentlichen Datei- und Verzeichnisdaten gespeichert und beanspruchen den größten Teil der Partition. Traditionell werden die nicht verwendeten Teile des Datenbereichs auf IBM-kompatiblen Maschinen beim Formatieren mit einem Füllwert von 0xF6 initialisiert, aber auch im Atari-Portfolio verwendet. 8-Zoll-CP / M-Disketten wurden normalerweise mit einem Wert von 0xE5 vorformatiert; [9] wurde mit Digital Research auch für Atari ST-formatierte Disketten verwendet. [Anmerkung 3] Einige moderne Formatierer löschen Festplatten mit einem Wert von 0x00, während auf Flash-Festplatten der Wert 0xFF verwendet wird, um den Verschleiß zu reduzieren. Der letztere Wert wird normalerweise auch auf ROM-Platten verwendet. (Einige erweiterte Formatierungswerkzeuge ermöglichen die Konfiguration des Formatfüllbytes. [Nb 4])

Die Größe von Dateien und Unterverzeichnissen kann beliebig erhöht werden (sofern freie Cluster vorhanden sind), indem einfach weitere Verknüpfungen zur Dateikette in der FAT hinzugefügt werden. Beachten Sie jedoch, dass Dateien in Clustereinheiten zugewiesen werden. Wenn sich also eine 1-KB-Datei in einem 32-KByte-Cluster befindet, werden 31 KB verschwendet.

FAT32 beginnt in der Regel mit der Root-Verzeichnis-Tabelle in Cluster Nummer 2: dem ersten Cluster des Datenbereichs.