Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Systeme 1 Kapitel 3 Dateisysteme WS 2009/101. Letzte Vorlesung Dateisysteme – Hauptaufgaben – Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien.

Ähnliche Präsentationen


Präsentation zum Thema: "Systeme 1 Kapitel 3 Dateisysteme WS 2009/101. Letzte Vorlesung Dateisysteme – Hauptaufgaben – Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien."—  Präsentation transkript:

1 Systeme 1 Kapitel 3 Dateisysteme WS 2009/101

2 Letzte Vorlesung Dateisysteme – Hauptaufgaben – Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien – Kleinste logische Einheit eines Dateisystems – Dateitypen – Dateiattribute Besitzer Zugriffsrechte Rechteverwaltung – Dateien – Verzeichnisse – Sonderrechte (SUID, SGID, SVTX) WS 2009/102

3 Letzte Vorlesung Verzeichnisbaum – Absolute Pfade – Relative Pfade Dateizugriff – Sequentieller Zugriff – Random-Access Dateinoperationen – Create, Delete, Open, Close, … Verzeichnissoperationen – Kein Write WS 2009/103

4 Systeme 1 Kapitel 3.1 Implementierung von Dateisystemen WS 2009/104

5 Festplatten Dateisystem z.B. auf Festplatten Festplatten bestehen aus mehreren Platten Platte ist eingeteilt in Sektoren WS 2009/105

6 Festplatten Layout Sektor 0 der Platte enthält MBR (Master Boot Record). – Verwendet beim Booten – Partitionstabelle mit Anfangs- und Endadresse jeder Partition – Eine aktive Partition Bootvorgang: – BIOS liest MBR ein. – Lokalisierung der aktiven Partition – Einlesen und Ausführen des Bootblocks der aktiven Partition – Bootblock enthält den Bootloader, dieser lädt das Betriebssystem (-> hat Kenntnis über Dateisystem) WS 2009/106

7 Festplatten Layout Bootblock lädt Dateisystem der Partition. Superblock des Dateisystems enthält Schlüsselparameter des Dateisystems (z.B. Schreibschutzmarkierung, Name des Dateisystemtyps etc.). Freispeicherverwaltung: Informationen über freie Blöcke im Dateisystem I-Nodes: – Liste von Datenstrukturen – Eine Datenstruktur pro Datei mit wesentlichen Informationen über Datei Datenblöcke: Eigentliche Inhalte der Dateien. WS 2009/107

8 Realisierung von Dateien 3 verschiedene Alternativen zur Realisierung von Dateien: – Zusammenhängende Belegung – Belegung durch verkettete Listen – I-Nodes WS 2009/108

9 Realisierung von Dateien Abspeicherung von Dateien als zusammen- hängende Menge von Plattenblöcken: WS 2009/109

10 Realisierung von Dateien Abspeicherung von Dateien als zusammenhängende Menge von Plattenblöcken: Vorteil: schnelles sequentielles Lesen einfache Implementierung WS 2009/1010

11 Realisierung von Dateien Abspeicherung von Dateien als zusammenhängende Menge von Plattenblöcken: Problem: Löschen von Dateien D und F Fragmentierung der Platte! Verschiebung der Blöcke? Verwaltung der entstehenden Löcher in Freilisten? Was passiert, wenn man eine Datei erzeugt, deren Größe aber noch unbekannt ist? Zusammenhängende Belegung im Allgemeinen keine gute Idee! Aber: Benutzt bei Spezialfällen wie Dateisystemen für CD-ROMs WS 2009/1011

12 Realisierung von Dateien Speichere Dateien als verkettete Listen von Platten- blöcken – Dateiinhalt wird auf Blöcke gleicher Größer verteilt WS 2009/1012

13 Realisierung von Dateien Speichere Datei als verkettete Listen von Plattenblöcken – Dateiinhalt wird auf Blöcke gleicher Größer verteilt Vorteile – Keine Fragmentierung – Sequentielles Lesen Nachteile – Wahlfreier Zugriff Zugriff auf Block n: Starte bei Block 0 und verfolge alle Blöcke n-1 Blöcke => n-1 langsame Lesezugriffe auf die Platte WS 2009/1013

14 Realisierung von Dateien (FAT) Speichere Datei als verkettete Listen von Plattenblöcken Verbesserung: – Halte Information über Verkettung der Blöcke im Hauptspeicher – Ersetze bei wahlfreiem Zugriff Plattenzugriffe durch (schnellere) Hauptspeicherzugriffe Datei-Allokationstabelle bzw. FAT im Hauptspeicher Methode benutzt in – MS-DOS (FAT-12, FAT-16, FAT-32) – Windows 95, Windows 98 (FAT-32) – Windows 2000 (u.a. FAT-32) WS 2009/1014

15 Realisierung von Dateien (FAT) WS 2009/1015

16 Realisierung von Dateien (FAT) Speichere Datei als verkettete Listen von Plattenblöcken Vorteil: – Da FAT im Hauptspeicher abgelegt, muss bei wahlfreiem Zugriff auf Block n nur eine Kette von Verweisen im Hauptspeicher verfolgt werden Nachteil: – Größe der FAT im Speicher! – Anzahl der Einträge = Gesamtzahl der Plattenblöcke – Auch wenn Platte fast komplett unbelegt! Beobachtung: – Man braucht Verkettung der Plattenblöcke nur für aktuell bearbeitete Dateien! -> I-Node-Konzept (UNIX, LINUX) WS 2009/1016

17 Realisierung von Dateien (I-Node) Zu jeder Datei gehört eine Datenstruktur der sog. I-Node (Index-Node) I-Node ermöglicht Zugriff auf alle Blöcke der Datei. I-Node muss nur dann im Speicher sein, wenn eine Datei offen ist. – Wenn k Dateien offen und I-Node n Bytes benötigt, dann nur k * n Byte insgesamt. WS 2009/1017

18 Bsp.: UNIX System V I-Node einer Datei enthält – alle Attribute der Datei – m Adressen von Plattenblöcken – (UNIX System V: m = 10) WS 2009/1018

19 Realisierung von Dateien (I-Node) Kleine Dateien bis 10 x 1 KByte (bei Blockgröße 1 KByte): WS 2009/1019

20 Realisierung von Dateien (I-Node) Für größere Dateien werden Datenblöcke zur Speicherung von weiteren Plattenadressen genutzt Bsp.: – Blockgröße 1 KByte – Größe eines Zeigers auf Plattenblock: 4 Byte -> 256 Zeiger passen in einen Plattenblock – Nach 10 (direkten) Plattenadressen gibt es im I-Node Zeiger auf Block mit 256 weiteren Plattenadressen -> Insgesamt Dateien bis zu ( ) x 1 KByte = 266 KByte möglich. WS 2009/1020

21 Realisierung von Dateien (I-Node) WS 2009/1021

22 Realisierung von Dateien (I-Node) Noch größere Dateien. WS 2009/1022

23 Realisierung von Dateien (I-Node) Bei – Blockgröße 1 KB, – Zeigergröße 4 Byte – erhält man über doppelt indirekten Block 256 x 256 = Zeiger auf Datenblöcke. Zusätzlich noch dreifach indirekter Block … Frage: Wie groß ist mit diesen Parametern die maximale Dateigröße? Übung WS 2009/1023

24 Realisierung von Dateien (I-Node) Attribut-Informationen von I-Nodes * Hier 3-Bytes für eine Adresse * WS 2009/1024

25 Realisierung von Verzeichnissen Verzeichnisse sind ebenfalls Dateien! Sie liefern eine Abbildung von – Datei- bzw. Verzeichnisnamen – auf I-Node-Nummern. Jeder Verzeichniseintrag ist ein Paar aus Name und I- Node-Nummer. Über I-Nodes kommt man dann zu Dateiinhalten. WS 2009/1025

26 Realisierung von Verzeichnissen tmp etc var usr lib home bin man lib meier mueller schulze games mail news work / WS 2009/1026

27 Verwaltung freier Plattenblöcke Datenblöcke im Dateisystem an beliebigen Stellen genutzt. Nicht notwendigerweise aufeinander folgend. Verwaltung freier Blöcke: – Über Freibereichsliste als verkettete Liste: Speichere Nummern von freien Plattenblöcken Benutze zum Speichern der Nummern freie Plattenblöcke, die miteinander verkettet werden – Bitmap Bitmap mit 1 Bit für jeden Plattenblock Plattenblock frei, entsprechendes Bit = 1 WS 2009/1027

28 Verwaltung freier Plattenblöcke WS 2009/1028

29 Belegung des Dateisystems Belegung gegeben durch Anzahl genutzter I-Nodes und Datenblöcke. Dateisystem voll, wenn – Keine I-Nodes mehr frei oder – Keine Datenblöcke mehr frei. Überprüfung mittels df: $ df -i Filesystem Inodes IUsed IFree IUse% Mounted on /dev/hda % / /dev/hda % /boot WS 2009/1029

30 Zusammenfassung Objekte zur Datenspeicherung werden meist in Verzeichnisbäumen in Form von Dateieinträgen verwaltet. Dateien und Verzeichnisse vom Dateisystem bereitgestellt Der Verzeichnisbaum wird aus mehreren Dateisystemen zusammengebaut Verschiedene Implementierungsvarianten für Dateisysteme Unterschiede liegen in Effizienz (Speicher und Laufzeit) Geeignete Wahl des Dateisystems bestimmt durch Eigenschaften des physikalischen Speichermediums. WS 2009/1030


Herunterladen ppt "Systeme 1 Kapitel 3 Dateisysteme WS 2009/101. Letzte Vorlesung Dateisysteme – Hauptaufgaben – Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien."

Ähnliche Präsentationen


Google-Anzeigen