Dateisysteme im Vergleich: FAT16, FAT32, ext2 und ext3
Eingeordnet in Informatik
Geschrieben am in
Deutsch mit einer Größe von 6,48 KB
Bereiche des FAT-Dateisystems
- Boot-Sektor: Der erste Sektor des Volumes. Er enthält Informationen über die Größe und Struktur der Dateien sowie Informationen zum Booten von MS-DOS.
- Erste FAT: Jeder FAT-Eintrag entspricht einer Reihe von Clustern, die logisch im Volume benachbart sind. Sie enthält eine Tabelle, die jedem Cluster auf der Festplatte entspricht.
- Zweite FAT (Kopie): Eine oder mehrere Kopien der FAT. Dies ist eine Sicherheitskopie des FAT-Systems, falls die primäre FAT beschädigt wird.
- Root-Verzeichnis (Wurzelverzeichnis): Es setzt sich aus 32-Byte-Einträgen zusammen und enthält alle Informationen über Dateien und Unterverzeichnisse. Es ist eine Tabelle, in der der Dateiname, die Erweiterung, Attribute, das Datum, die Größe und der Start-Cluster gespeichert sind.
- Datenbereich für Dateien und Unterverzeichnisse: Wird genutzt, um Dateien und Unterverzeichnisse für jeden Cluster zu speichern. Für jeden Cluster in diesem Bereich gibt es einen entsprechenden Eintrag in der FAT.
Schritte zum Anzeigen einer Datei im FAT-Dateisystem
Beispiel für die Anzeige einer Datei wie bla.txt:
Zuerst wird im Root-Verzeichnis nach dem Dateinamen und dem Start-Cluster gesucht. Anschließend wird in der FAT nachgeschaut, um die weiteren Cluster zu finden. Je nach Größe der Datei wird diese ausgelesen. Wenn die Datei größer als ein Cluster ist, wird in der FAT nach dem nächsten Cluster gesucht, wodurch eine Verkettung (Gliederkette) entsteht, bis alle notwendigen Informationen gelesen sind.
Root-Verzeichnis vs. Unterverzeichnis
Ein Unterverzeichnis ist eine besondere Art von Index, der in Form von Unterordnern und Dateien gespeichert wird. Das Root-Verzeichnis hingegen ist einzigartig im Dateisystem positioniert (im spezifischen Bereich des Root-Verzeichnisses), hat eine maximale Größe von 32 Sektoren und enthält Indizes anderer Ordner. Unterordner belegen den normalen Datenbereich und sind nicht auf dieselbe Weise in ihrer Größe beschränkt wie das Root-Verzeichnis.
Unterverzeichnis vs. Datei
- Unterverzeichnis: Es ist eine Möglichkeit zur logischen Strukturierung von Programmen und Dokumenten auf einem Datenträger. Es kann andere Dateien und Ordner enthalten. Technisch gesehen ist es eine Datei, die Informationen über andere Dateien enthält (genau wie das Root-Verzeichnis), und verweist auf den Beginn des entsprechenden Clusters auf der Festplatte.
- Datei: Dies ist die grundlegende Speichereinheit, die es einem Computer ermöglicht, eine Reihe von Daten von einer anderen zu unterscheiden.
Unterschiede zwischen FAT16 und FAT32
Der wesentliche Unterschied liegt in der Größe der Einträge, die von 16 auf 32 Bit erweitert wurde. Zudem ist das Root-Verzeichnis bei FAT32 als Kette (String) in der FAT angeordnet, und FAT32 verwendet kleinere Clustergrößen, was Speicherplatz spart.
Was ist ein Cluster und wofür wird er genutzt?
Ein Cluster ist ein Teil des Datenträgers, der aus mehreren Sektoren besteht. Cluster sind die kleinsten logischen Informationseinheiten, die auf die Festplatte geschrieben oder von ihr gelesen werden können.
Fragmentierung in FAT-Dateisystemen
Fragmentierung bedeutet, dass eine Datei aufgeteilt wird und nicht in aufeinanderfolgenden Sektoren auf der Festplatte liegt. In FAT-Systemen passiert dies, wenn auf einer Festplatte, die bereits Daten enthält, eine neue Datei gespeichert werden soll. Das System weist ihr die freien Lücken (Sektoren) zu. Diese Lücken sind oft nicht zusammenhängend, da sie durch bereits vorhandene Dateien unterbrochen werden. Dadurch muss die Datei aufgeteilt und an verschiedenen Orten gespeichert werden.
Durch das ständige Erstellen, Bearbeiten und Löschen von Dateien fragmentieren die Informationen im Laufe der Zeit immer mehr. Das System wird langsamer und benötigt schließlich eine Defragmentierung der Festplatte.
Der Superblock im ext2-Dateisystem
Der Superblock ist ein Block, der alle Informationen über die Struktur des Dateisystems und dessen Nutzung enthält. Ein Verlust des Superblocks bedeutet den Verlust aller Daten. Daher existiert für jeden Block eine Sicherheitskopie (Redundanz) davon.
Was ist ein Inode und was enthält er?
Ein Inode (i-Knoten) ist eine eindeutige Struktur für jedes Dateisystemobjekt. Er speichert Metadaten über reguläre Dateien wie Attribute (Berechtigungen, Eigentümer, Gruppe, Größe, Datum usw.), enthält jedoch nicht den Dateinamen selbst, sondern eine ID. Dies ermöglicht den Zugriff auf die Datei. Jede Datei hat genau einen Inode, kann aber über verschiedene Namen (Hardlinks) im selben oder in unterschiedlichen Verzeichnissen referenziert werden.
Was ist die Block-Bitmap?
Die Block-Bitmap ist ein Sektor, der steuert, welche Datenblöcke oder Inodes belegt und welche für die Nutzung frei sind. Für jeden Inode bzw. Datenblock gibt es ein entsprechendes Bit in der Tabelle, das den aktuellen Status (frei/belegt) anzeigt.
Bereiche des ext2-Dateisystems
Eine ext2-Festplatte wird in kleinere logische Einheiten, sogenannte "Blöcke", unterteilt. Mehrere aufeinanderfolgende Blöcke werden zu einer "Block-Gruppe" (Block Group, BG) zusammengefasst. Jede Block-Gruppe besteht aus:
- Kopie des Superblocks: Enthält Informationen über die Struktur des Dateisystems.
- Dateisystem-Deskriptoren: Enthalten die Adressen der Blöcke mit wichtigen Verwaltungsinformationen, wie z. B. den Bitmap-Blöcken und der Inode-Tabelle.
- Block-Bitmap: Eine Tabelle von Bits, die anzeigt, welche Blöcke leer oder belegt sind.
- Inode-Bitmap: Enthält eine Tabelle der Inodes des Dateisystems.
- Datenblöcke: Die eigentlichen Blöcke, in denen die Daten von Dateien und Verzeichnissen gespeichert sind.
Unterschiede zwischen ext2 und ext3
Nach einem fehlerhaften Herunterfahren des Rechners kann ein ext2-Dateisystem erst wieder gemountet werden, nachdem es durch das Programm "fsck" überprüft und repariert wurde. ext3 bietet durch Journaling wesentlich höhere Garantien bezüglich der Datenintegrität bei unvorhergesehenem Ausschalten. Zudem ist ext3 oft schneller, da das Journaling die Bewegungen des Schreib-Lese-Kopfes auf der Festplatte optimiert.