In diesem Kapitel der SP Übung wollen wir euch erklären, wie Dateisysteme funktionieren
und wie ihr darauf zugreifen könnt.
Zum Einstieg schauen wir uns noch einmal die Vorlesungsfolien zu Dateisystemen an.
Hier wird die grundlegende Datenstruktur erklärt, auf der ein Dateisystem aufgebaut ist.
Zentral ist die Indexknotentabelle.
Anhand dieser Tabelle können die anderen Verzeichnisseinträge gefunden werden sowie
der Inhalt von Dateien.
Außerdem werden hier die Zugriffsrechte und weitere Informationen über Dateien und Verzeichnisse
gespeichert.
Ein Verzeichnis selbst ist nun eine einfache Verknüpfung von einem symbolischen Namen zu
genau einem Eintrag in der Indexknotentabelle.
Dabei kann ein Verzeichnis mehrere solcher Einträge enthalten, entsprechend der Anzahl
der Dateien und Unterverzeichnisse.
Im Grunde genommen ist ein Verzeichnis auch nur eine weitere Datei, die nur in diesem
Fall vom Betriebssystem verwaltet wird.
Normale Dateien mit Inhalt, so wie ihr sie verwendet, um zum Beispiel euer C-Quelcode
abzuspeichern, werden als eine Folge von zusammenhängenden Blöcken abgebildet.
Diese Blöcke werden ebenfalls über die Indexknotentabelle gefunden.
Dabei ist der prinzipielle Ablauf so, dass innerhalb eines Verzeichnisses die Namen der
entsprechenden Dateien, die in dem Verzeichnis sind, abgespeichert sind.
Und dazu die Indexknoten-Nummer, die die Datei referenziert.
Möchte man nur die Datei öffnen, sucht man in dem Verzeichnis nach dem entsprechenden
Eintrag und nimmt die Indexknoten-Nummer, die man darin findet, um in der Indexknotentabelle
die Blöcke, die die Datei ausmachen zu finden.
Was ebenfalls über die Indexknotentabelle referenziert wird, sind Dateien.
Unter einer Datei versteht man dabei eine abgeschlossene Einheit zusammenhängender
Daten in einer beliebigen Repräsentation.
Das bedeutet, der Inhalt ist vollkommen irrelevant und muss entsprechend von der Applikation,
die die Datei öffnet, interpretiert werden.
Für das Dateisystem spielt der Inhalt keine Rolle.
Wie eben schon angemerkt, ist ein Verzeichnis auch nichts weiteres als eine spezielle Datei,
die vom Betriebssystem verwaltet wird.
Hier werden Namen von Unterverzeichnissen und Dateien mit den jeweiligen Indexknoten
verknüpft.
Hier sieht man, dass der Inhalt einer Datei getrennt von dem jeweiligen Namen gespeichert
wird.
In diesem Beispiel haben wir einmal den Indexknoten für ein Verzeichnis, hier in rot dargestellt.
Dieser verweist auf einen Block, in dem die Nutzdaten des Verzeichnisses stehen.
Das bedeutet, hier ist eine weitere Auflösung, a la Unterverzeichnisse und Dateien zu den
jeweiligen Indexknoten-Nummern.
Hier fällt auf, dass ein Verzeichnis immer mindestens zwei Einträge beinhaltet.
Einmal die Selbstreferenz, den Eintrag, der aus einem einzelnen Punkt besteht, sowie eine
Referenz auf das Elternverzeichnis.
Der Eintrag, der aus zwei Punkten besteht.
In dem Beispiel ist in dem Verzeichnis noch eine weitere Datei namens HAL.
Die hat den Indexknoten 42.
Wenn wir nun der Verknüpfung zu der Datei HAL folgen, kommen wir bei dem Indexknoten
42 raus und finden weitere Informationen.
Einmal zum Beispiel die Nutzungsrechte, dass der Eigentümer der Datei lesend und schreibend
auf die Datei zugreifen kann, alle anderen nur lesend.
Zugänglich über
Offener Zugang
Dauer
00:18:16 Min
Aufnahmedatum
2020-07-21
Hochgeladen am
2020-07-21 17:06:21
Sprache
de-DE