Virtuelles Dateisystem

Ein virtuelles Dateisystem (englisch virtual file system und zudem kurz VFS genannt) ist eine Abstraktionsschicht oberhalb konkreter Dateisysteme.

Weitere Einzelheiten

Eine VFS-Schicht (englisch layer) stellt Anwendungen eine einheitliche API zur Verfügung, um auf unterschiedliche Dateisysteme zuzugreifen.

Dies dient als allgemeine Schnittstelle und verdeckt verschiedene lokale Dateisysteme sowie Zugriffe auf entfernte Verzeichnisse und Dateien. Das VFS unterhält für jede geöffnete Datei einen Eintrag (englisch v-node genannt)

  • entweder den lokalen Dateidescriptor (i-node)
  • oder einen globalen NFS-Descriptor (r-node)

Das dynamische Einhängen (und Aushängen) importierter Verzeichnisse wird von einem speziellen Programm, dem Automounter, durchgeführt.

Eine VFS-Schicht (auch englisch: VFS switch genannt) gibt es u. a. in Linux, BSD-basierten Betriebssystemen, im KDE-Desktop (Kio), Gnome-Desktop (GVFS) und im Jakarta-Projekt der Apache Software Foundation.

Bedeutungsvariante

Seitens der Benutzer und Entwickler steht der Begriff des virtuellen Dateisystems für eine Menge von Daten, die wie ein gewöhnliches Dateisystem (mit auf einem Datenträger physisch gespeicherten Dateien) erscheinen, es aber nicht sind, sondern von besonderen Systemkomponenten bei Bedarf bereitgestellt werden (vgl. „alles ist eine Datei“).

Beispiele

Bekannte Beispiele sind procfs und sysfs. Des Weiteren bietet FUSE die Möglichkeit, virtuelle Dateisysteme zu programmieren, ohne in die Betriebssystemsoftware eingreifen zu müssen, wobei bei GNU Hurd diese Möglichkeit bereits im Systemkonzept enthalten ist.[1]

Weblinks

Belege

  1. GNU Hurd/ hurd/ translator (englisch)