Freigeben über


Unterstützung für Hardwarebenachrichtigungen

Gilt für

  • Treiberentwickler und OEMs

Wichtige APIs

Windows 10, Version 1709, bietet eine Infrastruktur für die hardwareunabhängige Unterstützung von Benachrichtigungskomponenten wie LEDs und Vibrationsmechanismen. Diese Unterstützung wird durch die Einführung einer Kernel-Mode Driver Framework (KMDF)-Klassenerweiterung speziell für Hardwarebenachrichtigungskomponenten bereitgestellt, die die schnelle Entwicklung von Clienttreibern ermöglichen. Eine KMDF-Klassenerweiterung ist im Wesentlichen ein KMDF-Treiber, der einen definierten Satz von Funktionen für eine bestimmte Geräteklasse bereitstellt, ähnlich wie ein Porttreiber im Windows-Treibermodell (WDM). Dieser Abschnitt enthält eine Übersicht über die Architektur der Hardwarebenachrichtigungsklassenerweiterung. Weitere Informationen zur KMDF finden Sie unter Verwenden von WDF zum Entwickeln eines Treibers.

Erweiterung der Hardwarebenachrichtigungsklasse

Die Hardwarebenachrichtigungsklassenerweiterung ist die zentrale Komponente der Hardwarebenachrichtigungstreiberarchitektur. Die Klassenerweiterung dient dazu, die notwendige Interaktion mit dem KMDF zu minimieren und stattdessen eine einfache Schnittstelle für die Steuerung von Benachrichtigungskomponenten bereitzustellen. Die Klassenerweiterung behandelt Aufgaben wie:

  • Registrierung von Clienttreibern
  • Zuordnung und Bereinigung von Systemressourcen
  • Registrierung von PnP-Energierückruffunktionen für Clienttreiber
  • Registrierung von E/A-Warteschlangen für Clienttreiber
  • Datenüberprüfung und Fehlerüberprüfung
  • Kommunikation von Hardwareanforderungen an den Clienttreiber

Das folgende Diagramm veranschaulicht die grundlegende Architektur der Hardwarebenachrichtigungsklassenerweiterung.

hwn clx-Architektur.

Hardware-Benachrichtigungs-Client-Treiber

Clienttreiber können einfach für Hardwarebenachrichtigungskomponenten mithilfe der Hardwarebenachrichtigungsklassenerweiterung generiert werden. Die einzige Verantwortung des Clienttreibers besteht darin, die entsprechenden Einstiegspunkte für die KMDF bereitzustellen, die definierten Rückruffunktionen der Klassenerweiterung zu implementieren, Energiezustände zu verwalten und die physische Hardware zu steuern. Insbesondere muss der Clienttreiber die DriverEntry - und EVT_WDF_DRIVER_DEVICE_ADD Rückruffunktionen für die Verwendung durch die Windows Driver Foundation (WDF) sowie die erforderlichen Rückruffunktionen für die Klassenerweiterung implementieren.

Das folgende Diagramm veranschaulicht die Interaktionen aus der Perspektive des Clienttreibers.

Clienttreiberarchitektur.