Dateiobjekte

Dateiobjekte fungieren als logische Schnittstelle zwischen Kernel- und Benutzermodusprozessen und den Dateidaten, die sich auf dem physischen Datenträger befinden. Ein Dateiobjekt enthält sowohl die in die Datei geschriebenen Daten als auch den folgenden Satz von vom Kernel verwalteten Attributen.

Informationstyp Zweck
Dateiname Benennt die entsprechende physische Datei.
Aktueller Byteoffset Wird in synchronen Datei-E/A-Vorgängen verwendet (weiter unten in diesem Abschnitt beschrieben), um den aktuellen Startspeicherort von Lese- und Schreibvorgängen zu identifizieren.
Freigabemodus Gibt an, ob ein zweiter Prozess eine Datei für den Lese-, Schreib- oder Löschzugriff öffnen kann, während der erste Prozess noch darauf zugreift.
E/A-Modus Gibt an, ob der anfängliche Prozess die Datei für synchrone oder asynchrone E/A,zwischengespeicherte oder nicht zwischengespeicherte E/A, sequenzielle oder zufällige E/A usw. geöffnet hat.
Zeiger auf das Geräteobjekt Identifiziert das physische Gerät, auf dem sich die Dateidaten befinden.
Zeiger auf den Volumeparameterblock oder VPB Identifiziert das Volume oder die Partition, auf dem sich die Dateidaten befinden.
Zeiger auf Abschnittsobjektzeiger Identifiziert eine Stammstruktur, die eine zugeordnete Dateibeschreibt.
Zeiger auf die private Cachezuordnung Identifiziert die Dateidaten, die derzeit zwischengespeichert werden.

Diese Attribute werden als Teil der FILE _ OBJECT-Struktur in Ntddk.h definiert. Die Datenlängen und -typen der Werte finden Sie in der Definition dieser Struktur in der WDK-Dokumentation (Windows Driver Kit).