Präsentation herunterladen
1
6.2 Repräsentation auf Platten
Treiber sieht den Datenträger als Folge von Sektoren/Blöcken/Rahmen/... , typischerweise mit fester Größe 1-8 KB, durchnumeriert 0, 1, 2, ... und auf Zylinder/Spuren verteilt Merke: Gelesen/geschrieben werden nie einzelne Bytes, sondern nur komplette Blöcke („block device“). ( Interne Fragmentierung unvermeidlich.) bs-6.2
2
Auf dem Datenträger werden untergebracht:
Allgemeine Verwaltungsdaten (Zauberwort, Platten-Bezeichner, Layout-Beschreibung, ...) Freispeicherlisten Dateiattribute Dateiinhalte Die Dateien auf einem Datenträger sind durchnumeriert, d.h. bei Nichtberücksichtigung der Verzeichnisinhalte liegt ein flaches Dateisystem (flat file system) ohne strukturierten Namensraum vor. bs-6.2
3
6.2.1 Lagebeschreibung einer Datei
Für die Lagebeschreibung (file map) der Inhalte einer Datei gibt es 2 Alternativen: fortlaufende Speicherung gestreute Speicherung bs-6.2
4
fortlaufende Speicherung, beschrieben durch
Index des ersten Blocks, Anzahl der Blöcke Vorteile: - einfach - schnelles Programmladen bzw. sequentieller Zugriff - gute Restaurierungsmöglichkeiten bei Plattenschäden Nachteile: - nichttriviale Speicherverwaltung - externe Fragmentierung - Dateierweiterung problematisch bs-6.2
5
gestreute Speicherung, beschrieben durch
Liste der Nummern der gewählten Blöcke Vorteile: - einfache Speicherverwaltung - Dateierweiterung unproblematisch - keine externe Fragmentierung Nachteile: - Platzbedarf für Lagebeschreibung - schnelles Programmladen ? Einheit der Speicherverwaltung u.U. auch ein Vielfaches eines Blocks (Minix: „Zone“) bs-6.2
6
Unix/Linux/Minix/... praktizieren üblicherweise
gestreute Speicherung, z.B. so: file map Blöcke: 10 10 KB 256 256 KB 2562 64 MB Nummern der ersten 10 Blöcke indirekt doppelt indirekt dreifach indirekt . Block: 1 KB Einträge à 4 Bytes. double: . . . 2563 16 GB bs-6.2
7
6.2.2 Dateitabelle Dateideskriptor (Unix: „i-node“) enthält
Attribute der Datei Lagebeschreibung evtl. den ersten Datenblock („immediate file“) und wird identifiziert durch Index in Dateitabelle (Unix: „i-node list“) , die alle Deskriptoren enthält. ( Flaches Dateisystem mit Indizes als Dateinamen) bs-6.2
8
Dateitabelle: 1 MB 64 KB Einträge
Typische Größen: Index: 2 B 64 KB Dateien Deskriptor: 32 B Dateitabelle: 1 MB 64 KB Einträge Typisches Layout: Erster Eintrag ist Deskriptor des Wurzelverzeichnisses Dateitabelle ist in fortlaufenden Blöcken untergebracht Verwaltungsdaten enthalten Nummer des ersten Blocks bs-6.2
9
Beispiel Minix: Deskriptor mit 64 Bytes
Typ, Schutzstatus, Verweiszähler (4 Bytes je Zeile) Eigner, Eignergruppe Größe Letzte Zugriffszeit Letzte Änderungszeit Letzte Attributänderungszeit Lagebeschreibung: Zone 0 Zone 1 Zone 2 Zone 3 Zone 4 Zone 5 Zone 6 indirekt doppelt indirekt unbenutzt bs-6.2
10
6.2.3 Verwaltungsdaten Typisches Layout am Beispiel Minix:
Datenbereich Dateitabelle Bitmap für Datenbereich Bitmap für Dateitabelle Super Block – Zauberwort, Beschreibung des Layouts Boot Block – für Datenträger, die BS enthalten (auch mit Zauberwort) bs-6.2
11
Sei B die Blockgröße und D die Deskriptorgröße.
Im Deskriptor beginne die Lagebeschreibung beim Byte m. Wie gelangt man an das b-te Byte der d-ten Datei ? Dateitabelle beginnt am Anfang von Block 4. Deskriptor befindet sich im Block d*D div B der Dateitabelle, also im Block 4 + d*D div B auf der Platte. Deskriptor beginnt dort beim Byte d*D mod B , die Lagebeschreibung also bei d*D mod B + m . Das gesuchte Byte befindet sich im Block b div B der Datei an der Stelle b mod B . Mit der Lagebeschreibung erfährt man die reale Blocknummer. bs-6.2
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.