Vnode Schnittstelle - Frank Kardel
Vnode Schnittstelle - Frank Kardel
Vnode Schnittstelle - Frank Kardel
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
4 Dateisystemerweiterungen<br />
Dateisystemerweiterungen<br />
Wie schon in den vorhergehenden Kapiteln dargelegt, reichen die von den verbreiteten<br />
Dateisystemen angebotenen Attribute selten aus, um längerfristige Datenhaltung zu<br />
unterstützen. Im folgenden Kapitel wird eine Erweiterung des Unix-Dateisystems<br />
beschrieben, das ein Speichern von zusätzlichen Attributen erlaubt. Die dafür<br />
notwendigen Änderungen haben sich als minimal herausgestellt und lassen sich auch<br />
auf andere Dateisystemimplementierungen übertragen.<br />
Die Problematik der erweiterbaren Dateisysteme wird schon in der Arbeit von Jeffrey<br />
C. Mogul[Mog86] erörtert. Dort werden Dateiobjekte um Properties erweitert. In dieser<br />
Arbeit wird auch ein entsprechendes Dateisystem beschrieben.<br />
Der folgende Text beschreibt eine einfache Erweiterung des existierenden Unixdateisystems<br />
gekoppelt mit Kernstrategien, die es erlauben, den Zugriff auf die Dateien<br />
unter Verwendung der Attribute zu kontrollieren.<br />
4.1 Attributierte Dateien<br />
Bei dem Unix-Dateisystem handelt es sich um ein hierarchisches Dateisystem. Es gibt<br />
Inhaltsverzeichnisse, Dateien, Gerätedateien und symbolische Verweise als “Objekte”<br />
im Dateisystem. Eine normale Datei ist eine uninterpretierte Sequenz von Bytes. Zu<br />
Dateien werden eine Reihe von Eigenschaften verwaltet, die mit dem stat() Systemaufruf[Bac86]<br />
ausgelesen werden können. Das sind:<br />
– Eigner,<br />
– Gruppe,<br />
– Index des letzten Bytes,<br />
– Anzahl belegter Blöcke,<br />
– Gerätekennung,<br />
– Zugriffsrechte,<br />
– Typ.<br />
Diese Eigenschaften werden in einer Struktur, der Inode, hinterlegt. Diese Struktur besitzt<br />
eine feste Größe und ist nicht elementar änderbar.<br />
Häufig ist es wünschenswert, die Liste der Eigenschaften um die Versionsnummer<br />
oder des Datums der letzten Sicherung zu erweitern. Dieses ist im normalen Unix-System<br />
nicht möglich, außer, man führt Namenskonventionen ein. Die Erweiterung um<br />
Attribute soll es ermöglichen, die beschränkte Anzahl von Dateieigenschaften zu vergrößern.<br />
Unter Attributen soll ein Paar (Name, Wert) verstanden werden.<br />
Im Rahmen einer Vorlesung/Übung wurde das UNIX-Dateisystem um die Vergabe<br />
von Attributen an die Datei erweitert.<br />
79