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 (weiter unten in diesem Abschnitt beschrieben) verwendet, um den aktuellen Startort von Lese- und Schreibvorgängen zu identifizieren. |
Freigabemodus | Gibt an, ob ein zweiter Prozess eine Datei zum Lesen, Schreiben oder Löschen des Zugriffs öffnen kann, während der anfängliche 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 | Gibt das physische Gerät an, auf dem sich die Dateidaten befinden. |
Zeiger auf den Volumeparameterblock oder VPB | Gibt das Volume oder die Partition an, auf dem sich die Dateidaten befinden. |
Zeiger auf Abschnittsobjektzeiger | Identifiziert eine Stammstruktur, die eine zugeordnete Datei beschreibt. |
Zeiger auf 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 Dokumentation zum Windows Driver Kit (WDK).