Freigeben über


Übersicht über das Windows-E/A-Modell

Jedes Betriebssystem verfügt über ein implizites oder explizites E/A-Modell zum Verarbeiten des Datenflusses zu und von Peripheriegeräten. Ein Feature des E/A-Modells von Microsoft Windows ist die Unterstützung asynchroner E/A-Vorgänge. Darüber hinaus verfügt das E/A-Modell über die folgenden allgemeinen Features:

  • Der E/A-Manager stellt eine konsistente Schnittstelle für alle Kernelmodustreiber dar, einschließlich Treibern auf niedrigster Ebene, Zwischenstufe und Dateisystemtreibern. Alle E/A-Anforderungen an Treiber werden als E/A-Anforderungspakete (IRPs) gesendet.

  • E/A-Vorgänge sind mehrschichtige Vorgänge. Der E/A-Manager exportiert E/A-Systemdienste, die vom Benutzermodus geschützte Subsysteme aufrufen, um E/A-Vorgänge im Namen ihrer Anwendungen und/oder Endbenutzer auszuführen. Der E/A-Manager fängt diese Aufrufe ab, richtet einen oder mehrere IRPs ein und leitet sie über möglicherweise mehrschichtige Treiber an physische Geräte weiter.

  • Der E/A-Manager definiert eine Reihe von Standardroutinen, von denen einige erforderlich und andere optional sind, die Von Treibern unterstützt werden können. Alle Treiber folgen einem relativ konsistenten Implementierungsmodell, angesichts der Unterschiede zwischen Peripheriegeräten und der unterschiedlichen Funktionalität, die von Bus-, Funktions-, Filter- und Dateisystemtreibern benötigt wird.

  • Treiber sind wie das Betriebssystem selbst objektbasiert. Treiber, ihre Geräte und Systemhardware werden als Objekte dargestellt. Der E/A-Manager und andere Betriebssystemkomponenten exportieren Kernelmodus-Unterstützungsroutinen, die Treiber aufrufen können, um die Arbeit zu erledigen, indem sie die entsprechenden Objekte bearbeiten.

Zusätzlich zur Verwendung von IRPs zum Übermitteln herkömmlicher E/A-Anforderungen arbeitet der E/A-Manager mit dem PnP und Power-Managern zusammen, um IRPs mit PnP- und Energieanforderungen zu senden.