Vnode Schnittstelle - Frank Kardel
Vnode Schnittstelle - Frank Kardel
Vnode Schnittstelle - Frank Kardel
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Dateisystemerweiterungen<br />
4.2.3.4 Strategieimplementierungen<br />
Es wurden mehrere verschiedene Strategien realisiert, um die Mächtigkeit der Erweiterungen<br />
zu überprüfen. Zu den realisierten Strategien gehören:<br />
84<br />
– Benutzerattribute,<br />
– Zugriffkontrollisten,<br />
– TAR-Dateisystem,<br />
– Bindung von Programmen an Daten<br />
– versionsbehaftete Dateien.<br />
Die verschiedenen Strategien benötigen alle ihre eigenen Attributmengen. Damit keine<br />
Kollisionen auftreten, werden die Attribute der einzelnen Strategien in eigenen Verzeichnissen<br />
unterhalb des mit der vnode assoziierten Attribut-Verzeichnisses abgelegt.<br />
Open und unlink-Operationen wurden zur Verfügung gestellt, um die benutzerdefinierten<br />
Attribute zu realisieren. Die eigentliche Dateibehandlung wird mit den normalen<br />
Mechanismen über den Dateideskriptor durchgeführt. Weil die Attribute nicht<br />
zum normalen Namensraum des Dateisystems gehören, müssen deswegen die attr_open-<br />
und attr_unlink-Operationen angeboten werden. Die Strategie für die benutzerdefinierten<br />
Attribute überlagert keine Dateioperationen. Sie stellt nur den Zugriff auf<br />
die benutzerdefinierten Attribute dar.<br />
Die Realisierung der Zugriffskontrollisten gestaltete sich ebenfalls recht einfach. Es<br />
wurden die Operation zum Lesen, Setzen und Löschen von Zugriffskontrollisteneinträgen<br />
bereitgestellt. Die Zugriffsüberprüfungsroutine VOP_ACCESS wurde überlagert<br />
und wertet die Zugriffskontrollisteninformation aus. Die entsprechenden Zugriffskontrollisten<br />
werden als Attribute gespeichert.<br />
Das TAR-Dateisystem stellt eine Datei im TAR-Format als Dateisystembaum dar. Die<br />
in der TAR-Datei befindlichen Dateien verhalten sich wie normale Dateien. Allerdings<br />
wird Schreibzugriff auf die Dateien nicht erlaubt. Diese Strategie simuliert demnach<br />
ein eigenes Dateisystem, dessen Daten in einer TAR-Datei verzeichnet sind.<br />
Bei der Bindung von Programmen an Daten wurde der exec-Systemaufruf des Kerns<br />
dahingehend erweitert, daß ein über Attribute eingestelltes Programm beim Ausführen<br />
einer Datei aufgerufen wird. Diese Funktionalität entspricht in etwa dem Doppelklicken<br />
auf Datendateien in MacOS. Dieses führt zur Ausführung der mit der Datei assoziierten<br />
Anwendung.<br />
Die Strategie der versionsbehafteten Dateien erlaubt es, bei jedem Öffnen einer Datei<br />
zum Schreiben eine neue Version dieser Datei anzulegen. Weitere Attribute der Versionspolicy<br />
geben an, wieviele Versionen gehalten werden dürfen.