Freigeben über


Übersicht über UMDF

Dieses Thema bietet eine allgemeine Übersicht über User-Mode Treiberframeworkkomponenten (UMDF) und beschreibt, wie Ihr Treiber mit vom System bereitgestellten Komponenten interagiert. Sie gilt sowohl für UMDF-Versionen 1 als auch für 2.

UMDF-Treiber abstrakte Hardwarefunktionen, werden in der Benutzermodusumgebung ausgeführt und können auf verschiedene Dienste zugreifen. UMDF-Treiber funktionieren als Teil eines Stapels von Treibern, die ein Gerät verwalten. Dateisystemtreiber, Anzeigetreiber (für Vollanzeigegeräte, nicht reine Anzeigegeräte) und Drucktreiber können keine UMDF-Treiber sein.

Ein UMDF-Treiber interagiert mit den folgenden vom System bereitgestellten Komponenten:

  • Treiberhostprozess

    Der Treiberhostprozess lädt vom Anbieter bereitgestellte UMDF-Treiber und Framework-DLLs, stellt eine Ausführungsumgebung für Benutzermodustreiber bereit und leitet Nachrichten zwischen Treibern in einem Benutzermodusstapel weiter. Weitere Informationen finden Sie unter UMDF-Treiberhostprozess.

  • Treiber-Manager

    Der Treiber-Manager ist ein Windows-Dienst, der alle Instanzen des Wudfhost-Treiberhosthost-Hostprozesses verwaltet. Der Treiber-Manager startet und verfolgt Informationen zu den einzelnen Treiberhostprozessen nach. Jeder Host ist ein untergeordneter Prozess des Treiber-Managers. Pro System ist nur ein Treiber-Manager vorhanden. Der Treiber-Manager startet während der Installation des ersten UMDF-Geräts und wird anschließend auf dem System ausgeführt.

  • Reflector

    Der Reflektor ist ein Kernelmodustreiber, mit dem eine Anwendung und ein Treiberhostprozess (und Gerätestapel im Benutzermodus) kommunizieren können. Der Reflektor erstellt ein separates Geräteobjekt für jedes Gerät instance und verarbeitet Plug & Play (PnP) und Energie-E/A-Anforderungen, die jedem Gerät instance zugeordnet sind. Die gesamte Kommunikation zwischen der Anwendung und dem Treiberhostprozess erfolgt über den Reflektor. Weitere Informationen finden Sie unter Architektur von UMDF.

Alle Funktions- und Filtertreiber für ein bestimmtes Gerät müssen im gleichen Treiberhostprozess ausgeführt werden, aber mehrere Hostprozesse können gleichzeitig ausgeführt werden.

Das folgende Diagramm zeigt, wie Treiberhostprozesse, Treiber-Manager und Reflektor über die Begrenzung des Benutzermodus/Kernelmodus hinweg kommunizieren.

umdf-Komponenten, einschließlich up- und down-Geräteobjekten im Reflektor.