Entwurfshandbuch für Kernel-Mode Treiberarchitektur
Hinweis
Informationen zu Programmierschnittstellen, die Ihr Treiber implementieren oder aufrufen kann, finden Sie in der Kernelmodustreiberreferenz.
Dieser Abschnitt enthält allgemeine Konzepte, die Ihnen helfen, die Programmierung im Kernelmodus zu verstehen, und beschreibt spezifische Techniken der Kernelprogrammierung. Eine allgemeine Übersicht über Windows-Treiber finden Sie unter Erste Schritte mit Windows-Treibern, der eine allgemeine Übersicht über Windows-Komponenten bietet, die In Windows verwendeten Gerätetreibertypen auflistet, die Ziele von Windows-Gerätetreibern erläutert und generische Beispielgerätetreiber im Kit erläutert.
Dieser Abschnitt enthält konzeptionelle Informationen zur Beschreibung und Unterstützung beim Erstellen von Kernelmodustreibern.
Eine Übersicht mit :
- Übersicht über Windows-Komponenten
- Entwerfen Goals für Kernel-Mode Treiber
- Ein Katalog von Beispieltreibern Kernel-Mode
- Bewährte Methoden für die Kerneltreiberentwicklung, die vom Microsoft Surface-Team zusammengestellt wurden
Kernelmoduskomponenten beschreibt die primären Kernelmodus-Manager und Komponenten des Windows-Betriebssystems.
Komponente BESCHREIBUNG Manager Windows Kernel-Mode-Objekt-Manager Verwaltet Objekte: Dateien, Geräte, Synchronisierungsmechanismen, Registrierungsschlüssel usw. Windows Kernel-Mode Memory Manager Verwaltet den physischen Arbeitsspeicher für das Betriebssystem. Windows Kernel-Mode Prozess- und Thread-Manager Verarbeitet die Ausführung aller Threads in einem Prozess. Windows Kernel-Mode E/A-Manager Verwaltet die Kommunikation zwischen Anwendungen und den schnittstellen, die von Gerätetreibern bereitgestellt werden. Windows Kernel-Mode Plug & Play Manager Ein Subsystem des E/A-Managers, der Plug & Play -Manager (PnP) ermöglicht es einem PC, zu erkennen, wann ein Gerät zum System hinzugefügt wird. Windows Kernel-Mode Power Manager Verwaltet die geordnete Änderung der Energie status für alle Geräte, die Energiezustandsänderungen unterstützen. Windows Kernel-Mode Configuration Manager Verwaltet die Registrierung, z. B. die Überwachung von Änderungen in der Registrierung oder das Registrieren von Rückrufen für bestimmte Registrierungsdaten. Windows Kernel-Mode Kernel Transaction Manager Implementiert die Transaktionsverarbeitung im Kernelmodus. Windows Kernel-Mode Sicherheitsreferenzmonitor Stellt Routinen bereit, mit denen Ihr Treiber mit der Zugriffssteuerung arbeiten kann. Libraries Windows Kernel-Mode Kernelbibliothek Implementiert die Kernfunktionen, von denen alles andere im Betriebssystem abhängt. Der Microsoft Windows-Kernel bietet grundlegende Vorgänge auf niedriger Ebene, z. B. das Planen von Threads oder das Routing von Hardwareunterbrechungen. Supportbibliothek für Windows Kernel-Mode Executive Bezieht sich auf Kernelmoduskomponenten, die eine Vielzahl von Diensten für Gerätetreiber bereitstellen, einschließlich: Objektverwaltung, Speicherverwaltung, Prozess- und Threadverwaltung, Eingabe-/Ausgabeverwaltung und Konfigurationsverwaltung. Windows Kernel-Mode Run-Time-Bibliothek Eine Reihe allgemeiner Hilfsprogrammroutinen, die von verschiedenen Kernelmoduskomponenten benötigt werden. Windows Kernel-Mode Sichere Zeichenfolgenbibliothek Eine sichere Zeichenfolgenbibliothek, um mehr Sicherheit bei der Kernelmodusentwicklung zu bieten. Windows Kernel-Mode DMA-Bibliothek Eine DMA-Bibliothek (Direct Memory Access) für Gerätetreiberentwickler. Windows Kernel-Mode HAL-Bibliothek Eine Hardwareabstraktionsebene (HAL) für die Kernelmodustreiberentwicklung. Windows Kernel-Mode CLFS-Bibliothek Ein Transaktionsprotokollierungssystem, das Common Log File System (CLFS). Windows Kernel-Mode WMI-Bibliothek Ein allgemeiner Mechanismus zum Verwalten von Komponenten, der als Windows-Verwaltungsinstrumentation (WMI) bezeichnet wird. Das Schreiben von WDM-Treibern und die Einführung in WDM stellen Informationen bereit, die zum Schreiben von Treibern mithilfe des Windows-Treibermodells (WDM) erforderlich sind.
Geräteobjekte und die anderen Themen in Geräteobjekte und Gerätestapeln beschreiben, wie das Betriebssystem Geräte nach Geräteobjekten darstellt.
Die Speicherverwaltung für Windows-Treiber veranschaulicht, wie Kernelmodustreiber Arbeitsspeicher für Zwecke wie das Speichern interner Daten, das Puffern von Daten bei E/A-Vorgängen und das Freigeben von Arbeitsspeicher mit anderen Kernelmodus- und Benutzermoduskomponenten zuordnen.
Sicherheit Stellen Sie sicher, dass Ihre Treiber so sicher wie möglich sind, vom Steuern des Gerätezugriffs und der Berechtigungen bis hin zu SDDL für Geräteobjekte.
Die Behandlung von IRPs beschreibt, wie Kernelmodustreiber E/A-Anforderungspakete (IRPs) verarbeiten.
DMA Direct Memory Access (DMA) ist ein wichtiger Aspekt der Treiberentwicklung, und die Themen in diesem Knoten behandeln DMA von A bis Z.
Controllerobjekte stellen einen physischen Gerätecontroller mit angeschlossenen Geräten dar.
Interrupt Service Routines (ISRs) behandeln Interrupts für Treiber eines physischen Geräts, das Interrupts empfängt.
Message-Signaled Interrupts lösen einen Interrupt aus, indem ein Wert in eine bestimmte Speicheradresse geschrieben wird.
Verzögerte Prozeduraufrufe (DPC-Objekte) können über ISRs in die Warteschlange gestellt werden und werden zu einem späteren Zeitpunkt und zu einem niedrigeren IRQL als die ISR ausgeführt.
Plug & Play (PnP) konzentriert sich auf die Systemsoftwareunterstützung für PnP und darauf, wie Treiber diese Unterstützung verwenden, um PnP zu implementieren.
Power Management beschreibt die Architektur, die einen umfassenden Ansatz für die Energieverwaltung von Systemen und Geräten bietet.
Windows-Verwaltungsinstrumentation (WMI) sind Erweiterungen Ihres Kernelmodustreibers, die es Ihrem Treiber ermöglichen, ein WMI-Anbieter zu werden. Ein WMI-Anbieter stellt Mess- und Instrumentierungsdaten für WMI-Consumer bereit, z. B. Anwendungen im Benutzermodus.
Treiberprogrammierungstechniken Das Programmieren von Treibern im Kernelmodus von Windows erfordert Techniken, die sich manchmal erheblich von denen der normalen Benutzermodusprogrammierung unterscheiden.
Bulk Memory Volatile Accessor Functions (v3) beschreibt Vorabrelease-Funktionen für flüchtigen Massenspeicher, die ab Windows 11 Insider Preview verfügbar sind.
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für