Ejemplos generales de controladores

Los ejemplos de este directorio proporcionan un punto de partida para escribir un controlador personalizado para el dispositivo.

Ejemplo Descripción
Cancelar cola irP segura Muestra el uso de las rutinas de cola seguras para cancelar IoCsqInitialize, IoCsqInsertIrp, IoCsqRemoveIrp, IoCsqRemoveNextIrp. Al usar estas rutinas, los desarrolladores de controladores no tienen que preocuparse por las condiciones de carrera de cancelación de IRP.
Eco de KMDF Muestra cómo usar una cola secuencial para serializar las solicitudes de lectura y escritura presentadas al controlador.
UMDF1 Echo Muestra cómo usar UMDF 1 para escribir un controlador y emplear procedimientos recomendados.
Eco UMDF2 Muestra cómo usar UMDF 2 para escribir un controlador y emplear procedimientos recomendados.
Ejemplo de socketEcho de UMDF (versión 1 de UMDF) Muestra cómo usar la UMDF para escribir un controlador y muestra los procedimientos recomendados.
Evento de hardware Muestra dos maneras diferentes en que un controlador en modo kernel puede notificar a una aplicación sobre un evento de hardware. Una manera de usar un método basado en eventos y el otro usa un método basado en IRP. El controlador de ejemplo usa un DPC del temporizador para simular eventos de hardware.
Ejemplo de controlador que no es PnP Muestra cómo escribir un controlador que no sea PnP mediante el marco de controladores del modo kernel.
IOCTL Muestra el uso de cuatro tipos diferentes de ICTL (METHOD_IN_DIRECT, METHOD_OUT_DIRECT, METHOD_NEITHER y METHOD_BUFFERED).
ObCallback Muestra el uso de devoluciones de llamada registradas para la protección de procesos. El controlador registra devoluciones de llamada de control a las que se llama en la creación del proceso.
PCIDRV En este ejemplo se muestra cómo escribir un controlador KMDF para un dispositivo PCI. El ejemplo funciona con el adaptador Ethernet PCI basado en Intel 82557/82558 (10/100) e Intel compatibles.
Contador de kernel Muestra el uso de la biblioteca de rendimiento en modo kernel. El controlador no controla ningún hardware, simplemente proporciona contadores. El código contiene comentarios para explicar lo que hace cada función.
Controlador PLX9x5x PCI Muestra cómo escribir controlador para un dispositivo PCI genérico mediante marcos de controladores de Windows (WDF). El hardware de destino de este controlador es PLX9656/9653RDK-LITE.
RegFltr Muestra cómo escribir un controlador de filtro del Registro.
Origen multimedia simple Muestra cómo escribir un origen multimedia personalizado y un paquete de controladores.
DMA del sistema Muestra el uso de DMA del sistema V3. Muestra cómo un controlador podría usar un controlador DMA del sistema compatible con Windows para escribir datos en una ubicación de hardware mediante DMA.
Controlador de ejemplo de tostadora Una serie iterativa de ejemplos que muestran aspectos fundamentales del desarrollo de controladores de Windows tanto para el marco de controladores en modo kernel (KMDF) como para el marco de controladores en modo de usuario (UMDF) versión 1.
Ejemplo de paquete de tostadora Simula la instalación de hardware first y software-first del controlador de ejemplo de tostadora.
Ejemplo de tostadora (versión 2 de UMDF) Serie iterativa de ejemplos que muestran aspectos fundamentales del desarrollo de controladores de Windows mediante la versión 2 del marco de controladores del modo de usuario (UMDF).
EventDrv Proveedor y controlador de seguimiento en modo kernel. El controlador no controla ningún hardware; simplemente genera eventos de seguimiento. Está diseñado para demostrar el uso de la API de seguimiento de eventos para Windows (ETW) en un controlador.
Control de seguimiento del sistema Muestra cómo usar las API de control de seguimiento de eventos para recopilar eventos del proveedor de seguimiento del sistema.
Tracedrv Un controlador de ejemplo instrumentado para el seguimiento de software.
Esqueleto del controlador UMDF Muestra cómo usar el marco de controlador modo de usuario para escribir un controlador mínimo y muestra los procedimientos recomendados.
Kit de herramientas de instalación de paquetes de controladores para controladores universales Ilustra los principios DCHU del diseño universal de controladores.