Esempi generali di driver
Gli esempi in questa directory forniscono un punto di partenza per la scrittura di un driver personalizzato per il dispositivo.
Esempio | Descrizione |
---|---|
Annulla coda IRP sicura | Illustra l'uso delle routine della coda cancel-safe IoCsqInitialize, IoCsqInsertIrp, IoCsqRemoveIrp, IoCsqRemoveNextIrp. Usando queste routine, gli sviluppatori di driver non devono preoccuparsi delle condizioni di gara di annullamento di IRP. |
Eco KMDF | Illustra come usare una coda sequenziale per serializzare le richieste di lettura e scrittura presentate al driver. |
UMDF1 Echo | Illustra come usare UMDF 1 per scrivere un driver e usare le procedure consigliate. |
UMDF2 Echo | Illustra come usare UMDF 2 per scrivere un driver e usare le procedure consigliate. |
Esempio socketEcho di UMDF (UMDF versione 1) | Illustra come usare la funzione UMDF per scrivere un driver e illustra le procedure consigliate. |
Evento hardware | Illustra due modi diversi in cui un driver in modalità kernel può notificare a un'applicazione un evento hardware. Un modo usa un metodo basato su eventi e l'altro usa un metodo basato su IRP. Il driver di esempio usa un DPC timer per simulare gli eventi hardware. |
Esempio di driver non PnP | Illustra come scrivere un driver non PnP usando kernel Mode Driver Framework. |
IOCTL | Illustra l'utilizzo di quattro tipi diversi di IOCTLs (METHOD_IN_DIRECT, METHOD_OUT_DIRECT, METHOD_NEITHER e METHOD_BUFFERED). |
ObCallback | Illustra l'uso dei callback registrati per la protezione dei processi. Il driver registra i callback di controllo chiamati durante la creazione del processo. |
PCIDRV | Questo esempio illustra come scrivere un driver KMDF per un dispositivo PCI. L'esempio funziona con la scheda PCI Ethernet basata su Intel 82557/82558 (10/100) e le compatibilità Intel. |
Contatore del kernel | Illustra l'uso della libreria delle prestazioni in modalità kernel. Il driver non controlla alcun hardware, ma fornisce semplicemente contatori. Il codice contiene commenti per spiegare le operazioni di ogni funzione. |
PLX9x5x PCI Driver | Illustra come scrivere driver per un dispositivo PCI generico usando Windows Driver Framework (WDF). L'hardware di destinazione per questo driver è PLX9656/9653RDK-LITE scheda. |
RegFltr | Illustra come scrivere un driver di filtro del Registro di sistema. |
Origine multimediale semplice | Illustra come scrivere un'origine multimediale personalizzata e un pacchetto driver. |
DMA di sistema | Illustra l'utilizzo di DMA di sistema V3. Mostra come un driver potrebbe usare un controller DMA di sistema supportato da Windows per scrivere dati in una posizione hardware usando DMA. |
Driver di esempio di tostapane | Serie iterativa di esempi che illustrano gli aspetti fondamentali dello sviluppo di driver Windows sia per Kernel-Mode Driver Framework (KMDF) che per User-Mode Driver Framework (UMDF) versione 1. |
Esempio di pacchetto di tostapane | Simula l'installazione hardware-first e software-first del driver di esempio tostapane. |
Esempio di tostapane (UMDF versione 2) | Una serie iterativa di esempi che illustrano gli aspetti fondamentali dello sviluppo di driver Windows usando User-Mode Driver Framework (UMDF) versione 2. |
EventDrv | Provider e driver di traccia in modalità kernel. Il driver non controlla alcun hardware; genera semplicemente eventi di traccia. È progettato per illustrare l'uso dell'API Event Tracing for Windows (ETW) in un driver. |
Controllo traccia di sistema | Illustra come usare le API di controllo di traccia eventi per raccogliere eventi dal provider di traccia di sistema. |
Tracedrv | Driver di esempio instrumentato per la traccia software. |
Scheletro del driver UMDF | Illustra come usare Il framework driver in modalità utente per scrivere un driver minimo e mostra le procedure consigliate. |
Toolkit di installazione dei pacchetti driver per i driver universali | Illustra i principi DCHU della progettazione di driver universali. |