Dateisysteme dienen als Ordnungs- und Zugriffssysteme für Dateien. Sie speichern Dateien geordnet ab und greifen auf den entsprechenden Speicherplatz zu, wenn diese Dateien wieder geöffnet werden sollen. Es gibt verschiedene Arten von Dateisystemen:
Die FAT selbst ist am Anfang der zugehörigen Partition gespeichert, direkt nach dem Bootblock und gefolgt von einer Kopie dieser.
Mit FAT gespeicherte Dateien müssen nicht unbedingt zusammenhängend gespeichert werden, sie können auch aufgeteilt werden (Fragmentierung).
Der Aufbau einer FAT ist im folgenden Bild zu sehen:
Die Partition des FAT-Dateisystems ist in Tabelle 1 zu sehen.
Will man auf eine Datei C zugreifen, wird im Root Directory (Tabelle 2) nach der Anfangsadresse der Datei C gesucht. Dort steht, dass sie im Cluster 5 anfängt.
Der passende Eintrag in der FAT verrät nun, wo der nächste Cluster zu finden ist: 11. Dies geht so lange, bis in der FAT der Eintrag FF
gefunden wird:
Die Datei ist zu Ende. Alle Cluster, an denen vorbeigegangen wurde, werden eingelesen: 5, 11, 18, 17.
Das Root Directory (Tabelle 2) ist, wie bereits gesagt, eine Liste aller im System vorhandenen Dateien. Ein Dateieintrag ist 32 Byte groß und folgendermaßen aufgebaut:
Dateiname | Endung | Attribute | Reserviert | Zeit | Datum | Adresse | Größe |
---|---|---|---|---|---|---|---|
8 Byte | 3 Byte | 1 Byte | 10 Byte | 2 Byte | 2 Byte | 2 Byte | 4 Byte |
Die Maximale Partitionsgröße eines FAT-Systems wird wie folgt berechnet:
Bei einem System mit 16 Bit-Adressraum (FAT16) und einer Clustergröße (Sektorgröße * Anzahl Sektoren pro Cluster) von 512 Byte ergibt sich folgende maximale Partitionsgröße.
Nachteile von FAT:
Vorteile von FAT:
NTFS hat folgende Eigenschaften:
Die Partition des NTFS Dateisystems ist wie in Tabelle 1 zu sehen aufgebaut. Die Einträge in der MFT sind wie in Tabelle 2 & Tabelle 3 zu sehen aufgebaut:
Wenn Daten >= 1,4 kB wieder ausgelesen werden sollen, werden im externen Verzeichniseintrag nacheinander die logischen Clusternummern
ermittelt und die zusammenliegenden Cluster in je einem RUN abgefahren. Ein RUN zeigt auf ein Startcluster und den Bereich dahinter mit einer gewissen Größe.
Der MFT - Eintrag liegt hier etwa in der Mitte der Partition. Das bedeutet, dass beim Lesen weniger Kopfbewegungen (da nicht immer zum Start der Partition)
gemacht werden müssen → schneller.
Da sich Dateien >= 1,4 kB an verschiedenen Stellen im logischen Speicher befinden, können dadurch Lücken entstehen (Fragmentierung).
Doch: Beim NTFS Dateisystem wird der Verzeichniseintrag automatisch, dynamisch und konstant optimiert (Defragmentierung).
Die Informationen, wo die Dateien gespeichert sind, sind beim EXT - Dateisystem nicht direkt in der Verzeichnisdatei (Tabelle 1)
sondern in einer separaten Datenstruktur, der Inode (Grafik 1) gespeichert.
Eine Inode hat 12 direkte Blockadressen und jeweils eine einfach indirekte, eine zweichfach indirekte und eine dreifach indirekte Adresse.
Die direkten Blockadressen zeigen jeweils auf einen Datenblock. Die indirekten Adressen zeigen jeweils auf einen weiteren Adressblock,
der dann entweder auf 256 Blockadressen zeigt (einfach indirekt) oder auf 256 weitere Adressblöcke (zwei- und dreifach indirekt).
So kann man mit einer Inode auf bis zu 16843020 Datenblöcke zugreifen. (256*256*256 + 256*256 + 256 + 12).