Guida alla progettazione dell'architettura del driver Kernel-Mode
Nota
Per informazioni sulle interfacce di programmazione che il driver può implementare o chiamare, vedere Riferimento al driver in modalità kernel.
Questa sezione include concetti generali per comprendere la programmazione in modalità kernel e descrive tecniche specifiche della programmazione del kernel. Per una panoramica generale dei driver di Windows, vedere Introduzione con i driver di Windows, che fornisce una panoramica generale dei componenti di Windows, elenca i tipi di driver di dispositivo usati in Windows, illustra gli obiettivi dei driver di dispositivo Windows e illustra i driver di dispositivo generici inclusi nel kit.
Questa sezione contiene informazioni concettuali che descrivono e consentono di compilare driver in modalità kernel.
Panoramica contenente:
- Panoramica dei componenti di Windows
- Progettare Goals per i driver di Kernel-Mode
- Catalogo di driver di esempio Kernel-Mode
- Procedure consigliate per lo sviluppo di driver kernel, come compilato dal team di Microsoft Surface
I componenti in modalità kernel descrivono i gestori e i componenti principali in modalità kernel del sistema operativo Windows.
Componente Descrizione Manager Windows Kernel-Mode Object Manager Gestisce oggetti: file, dispositivi, meccanismi di sincronizzazione, chiavi del Registro di sistema e così via. Gestione memoria di Windows Kernel-Mode Gestisce la memoria fisica per il sistema operativo. Processo e Thread Manager di Windows Kernel-Mode Gestisce l'esecuzione di tutti i thread in un processo. Windows Kernel-Mode I/O Manager Gestisce la comunicazione tra applicazioni e interfacce fornite dai driver di dispositivo. Windows Kernel-Mode Plug and Play Manager Un sottosistema di gestione I/O, gestione Plug and Play (PnP) consente a un PC di riconoscere quando un dispositivo viene aggiunto al sistema. Windows Kernel-Mode Power Manager Gestisce la modifica ordinata dello stato di alimentazione per tutti i dispositivi che supportano le modifiche dello stato di alimentazione. Windows Kernel-Mode Configuration Manager Gestisce il Registro di sistema, ad esempio il monitoraggio delle modifiche nel Registro di sistema o la registrazione dei callback in dati del Registro di sistema specifici. Windows Kernel-Mode Kernel Transaction Manager Implementa l'elaborazione delle transazioni in modalità kernel. Monitoraggio informazioni di riferimento sulla sicurezza di Windows Kernel-Mode Fornisce routine per il funzionamento del driver con il controllo di accesso. Raccolte Libreria kernel di Windows Kernel-Mode Implementa la funzionalità di base su cui dipende tutto il resto del sistema operativo. Il kernel di Microsoft Windows offre operazioni di base di basso livello, ad esempio thread di pianificazione o interruzioni hardware di routing. Libreria di supporto esecutivo di Windows Kernel-Mode Si riferisce ai componenti in modalità kernel che forniscono un'ampia gamma di servizi ai driver di dispositivo, tra cui la gestione degli oggetti, la gestione della memoria, la gestione del processo e del thread, la gestione di input/output e la gestione della configurazione. Libreria di Kernel-Mode Run-Time di Windows Set di routine di utilità comuni necessarie da vari componenti in modalità kernel. Libreria di stringhe sicure di Windows Kernel-Mode Libreria di stringhe sicure per garantire una maggiore sicurezza nello sviluppo in modalità kernel. Libreria DMA di Windows Kernel-Mode Libreria DMA (Direct Memory Access) per sviluppatori di driver di dispositivo. Libreria HAL di Windows Kernel-Mode Livello di astrazione hardware (HAL) per lo sviluppo di driver in modalità kernel. Libreria CLFS di Windows Kernel-Mode Sistema di registrazione transazionale, Common Log File System (CLFS). Libreria WMI di Windows Kernel-Mode Meccanismo generale per la gestione dei componenti, denominato Strumentazione gestione Windows (WMI). La scrittura di driver WDM e l'introduzione a WDM forniscono informazioni necessarie per scrivere driver usando il modello di driver windows (WDM).
Oggetti dispositivo e altri argomenti in Oggetti dispositivo e Stack di dispositivi descrivono come il sistema operativo rappresenta i dispositivi in base agli oggetti dispositivo.
Gestione della memoria per i driver Windows illustra come i driver in modalità kernel allocano la memoria a scopo, ad esempio l'archiviazione di dati interni, il buffering dei dati durante le operazioni di I/O e la condivisione della memoria con altri componenti in modalità kernel e utente.
Sicurezza Da Controllo dell'accesso e dei privilegi del dispositivo a SDDL per gli oggetti Device, assicurarsi che i driver siano più sicuri possibile.
La gestione dei provider di integrazione descrive come i driver in modalità kernel gestiscono i pacchetti di richiesta I/O (IRP).
DMA Accesso diretto alla memoria (DMA) è un aspetto critico dello sviluppo dei driver e gli argomenti di questo nodo coprono DMA da A a Z.
Gli oggetti controller rappresentano un controller dispositivo fisico con dispositivi collegati.
Le routine del servizio di interruzione (ISR) gestiscono gli interruzioni per i driver di un dispositivo fisico che riceve interruzioni.
Message-Signaled Interrupts attiva un interruzione scrivendo un valore in un indirizzo di memoria specifico.
Le chiamate di procedure posticipate (oggetti DPC) possono essere accodate da ISR e vengono eseguite in un secondo momento e in un irQL inferiore rispetto all'ISR.
Plug and Play (PnP) è incentrato sul supporto software di sistema per PnP e sul modo in cui i driver usano tale supporto per implementare PnP.
Power Management descrive l'architettura che fornisce un approccio completo alla gestione delle potenza del sistema e del dispositivo.
Strumentazione gestione Windows (WMI) sono estensioni al driver in modalità kernel, che consentono al driver di diventare un provider WMI. Un provider WMI rende disponibili i dati di misurazione e strumentazione per i consumer WMI, ad esempio applicazioni in modalità utente.
Tecniche di programmazione driver I driver di programmazione nella modalità kernel di Windows richiedono tecniche che a volte differiscono significativamente da quelle di programmazione in modalità utente normale.
Le funzioni di accesso volatili per la memoria bulk (v3) descrivono le funzioni di accesso volatili per la memoria in blocco disponibili a partire da Windows 11 Insider Preview.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per