Exemples de pilotes généraux
Les exemples de ce répertoire fournissent un point de départ pour l’écriture d’un pilote personnalisé pour votre appareil.
Exemple | Description |
---|---|
Annuler la file d’attente IRP sécurisée | Illustre l’utilisation des routines de file d’attente cancel-safe IoCsqInitialize, IoCsqInsertIrp, IoCsqRemoveIrp, IoCsqRemoveNextIrp. En utilisant ces routines, les développeurs de pilotes n’ont pas à se soucier des conditions de course d’annulation IRP. |
ÉCHO KMDF | Montre comment utiliser une file d’attente séquentielle pour sérialiser les demandes de lecture et d’écriture présentées au pilote. |
Écho UMDF1 | Montre comment utiliser UMDF 1 pour écrire un pilote et utiliser les meilleures pratiques. |
Écho UMDF2 | Montre comment utiliser UMDF 2 pour écrire un pilote et utiliser les meilleures pratiques. |
Exemple socketEcho UMDF (UMDF version 1) | Montre comment utiliser la fonction UMDF pour écrire un pilote et illustre les meilleures pratiques. |
Événement matériel | Illustre deux façons différentes pour un pilote en mode noyau de notifier une application à propos d’un événement matériel. Une façon utilise une méthode basée sur des événements, et l’autre utilise une méthode basée sur IRP. L’exemple de pilote utilise un DPC du minuteur pour simuler des événements matériels. |
Exemple de pilote non PnP | Montre comment écrire un pilote non PnP à l’aide de l’infrastructure du pilote en mode noyau. |
IOCTL | Illustre l’utilisation de quatre types différents de IOCTL (METHOD_IN_DIRECT, METHOD_OUT_DIRECT, METHOD_NEITHER et METHOD_BUFFERED). |
ObCallback | Illustre l’utilisation de rappels inscrits pour la protection des processus. Le pilote inscrit les rappels de contrôle appelés lors de la création du processus. |
PCIDRV | Cet exemple montre comment écrire un pilote KMDF pour un périphérique PCI. L’exemple fonctionne avec l’adaptateur PCI Ethernet intel 82557/82558 (10/100) et les compatibles Intel. |
Compteur de noyau | Illustre l’utilisation de la bibliothèque de performances en mode noyau. Le pilote ne contrôle aucun matériel, il fournit simplement des compteurs. Le code contient des commentaires pour expliquer ce que fait chaque fonction. |
Pilote PCI PLX9x5x | Montre comment écrire un pilote pour un périphérique PCI générique à l’aide de WDF (Windows Driver Frameworks). Le matériel cible de ce pilote est PLX9656/9653RDK-LITE. |
RegFltr | Montre comment écrire un pilote de filtre de Registre. |
Source multimédia simple | Montre comment écrire une source multimédia personnalisée et un package de pilotes. |
DMA système | Illustre l’utilisation de la DMA système V3. Il montre comment un pilote peut utiliser un contrôleur DMA système pris en charge par Windows pour écrire des données dans un emplacement matériel à l’aide de DMA. |
Exemple de pilote de grille-pain | Série itérative d’exemples qui illustrent les aspects fondamentaux du développement de pilotes Windows pour l’infrastructure kmDF (Kernel-Mode Driver Framework) et l’infrastructure de pilote en mode utilisateur (UMDF) version 1. |
Exemple de package grille-pain | Simule la première installation matérielle et logicielle du pilote d’exemple de grille-pain. |
Exemple de grille-pain (UMDF version 2) | Série itérative d’exemples qui illustrent les aspects fondamentaux du développement de pilotes Windows à l’aide de l’infrastructure de pilotes en mode utilisateur (UMDF) version 2. |
EventDrv | Fournisseur de trace en mode noyau et pilote. Le pilote ne contrôle aucun matériel ; il génère simplement des événements de trace. Il est conçu pour illustrer l’utilisation de l’API Suivi d’événements pour Windows (ETW) dans un pilote. |
Contrôle de trace système | Montre comment utiliser les API de contrôle de suivi d’événements pour collecter des événements à partir du fournisseur de trace système. |
Tracedrv | Exemple de pilote instrumenté pour le suivi logiciel. |
Squelette du pilote UMDF | Montre comment utiliser l’infrastructure de pilote en mode utilisateur pour écrire un pilote minimal et afficher les meilleures pratiques. |
Kit de ressources d’installation du package de pilotes pour les pilotes universels | Illustre les principes DCHU de la conception universelle des pilotes. |