Freigeben über


Beispiele für Kernelmodustreiber

Das WDK bietet verschiedene Beispieltreiber für den Kernel-Modus. Nachdem Sie das WDK installiert haben, enthält das Unterverzeichnis src\general Beispieltreiber-Code, der für alle Kernel-Mode-Treiber gilt. Die Beispiele werden auch online gepflegt. Diese Beispiele umfassen Folgendes:

DCHU

Wendet die DCH Designprinzipien an („Declarative, Componentized, and Hardware Support Apps [HSA]“). Sie können es als Vorlage für Ihr eigenes Windows Driver-Paket verwenden.

PLX9x5x

Dieses Beispiel zeigt Ihnen, wie Sie mit dem Windows Driver Framework einen Treiber für ein generisches PCI Gerät schreiben.

SimpleMediaSource

Dieses Beispiel demonstriert, wie Sie ein angepasstes Paket aus Medienquelle und Treiber erstellen, das als Kamera installiert werden kann und Frames erzeugt.

SystemDma/wdm

Dieses Beispiel demonstriert die Verwendung von V3 System DMA. Es zeigt, wie ein Treiber einen von Windows unterstützten System-DMA-Controller verwenden kann, um Daten per DMA an einen Hardware-Speicherort zu schreiben.

WinHEC 2017 Lab

WinHEC 2017/Optimizing Windows Performance

cancel

Demonstriert die Verwendung von cancel-safe IRP-Warteschlangen.

echo

event

Demonstriert Techniken, die Kernel-Mode-Treiber verwenden können, um Anwendungen über Hardware-Ereignisse zu benachrichtigen, wenn die Anwendung eine Benachrichtigung anfordert. Eine Technik verwendet Ereignisobjekte und die andere beruht auf Warteschlangen für die Benachrichtigungsanfrage, bis ein Ereignis eintritt.

filehistory

Das FileHistory-Beispiel ist eine Konsolenanwendung, die den Dienst File History startet, wenn er gestoppt ist, und regelmäßige Sicherungen plant. Die Anwendung benötigt als Kommandozeilenparameter den Pfadnamen eines Storage-Geräts, das als Standardziel für die Sicherung verwendet werden soll.

IOCTL-Beispiel

Zeigt, wie Treiber E/A-Steuerungscodes unterstützen sollten.

obcallback

Der Beispieltreiber ObCallback demonstriert die Verwendung von registrierten Callbacks für den Prozessschutz. Der Treiber registriert Steuer-Callbacks, die bei der Prozesserstellung aufgerufen werden.

pcidrv

Dieses Beispiel demonstriert, wie Sie einen KMDF-Treiber für ein PCI-Gerät schreiben. Das Beispiel funktioniert mit dem Intel 82557/82558 basierten PCI Ethernet Adapter (10/100) und Intel kompatiblen Geräten.

perfcounters/kcs

Der Kcs Beispieltreiber demonstriert die Verwendung der Kernel-Mode Performance Library.

registry/regfltr

Das RegFltr-Beispiel zeigt, wie man einen Treiber für einen Registrierungsfilter schreibt.

toaster

Bietet Beispielcode für eine Reihe von Treibern, die dem Windows Driver Model (WDM) entsprechen. Dieses Beispiel enthält auch eine Beispiel-Installationssoftware.

tracedrv

Zeigt, wie Sie WPP Software Tracing verwenden können.

UMDF Treiber Skeleton Beispiel

Dieses Beispiel zeigt, wie Sie Version 1 des User-Mode Driver Frameworks verwenden, um einen minimalen Treiber zu schreiben.

Firefly KMDF-Filtertreiber für ein HID-Gerät Dieses Beispiel zeigt nicht nur, wie man einen Filtertreiber schreibt, sondern auch, wie man Remote E/A-Zielschnittstellen verwendet, um eine HID-Sammlung im Kernel-Modus zu öffnen und IOCTL-Anfragen zu senden, um Funktionsberichte festzulegen und abzurufen, und wie eine Anwendung WMI-Schnittstellen verwenden kann, um Befehle an einen Filtertreiber zu senden.

Andere Unterverzeichnisse des Verzeichnisses \src enthalten Code-Beispiele für Kernel-Mode-Treiber für verschiedene Arten von Hardware.

Siehe auch

Microsoft Windows Treiberbeispiele auf GitHub