Acceso a controladores de Kernel-Mode para dispositivos de imagen fija

Microsoft proporciona controladores en modo kernel basados en WDM para admitir dispositivos de imagen todavía conectados a buses SCSI y USB. Ambos controladores admiten dispositivos Plug and Play y proporcionan servicios para agregar, quitar, iniciar, detener y crear entradas del Registro para Plug and Play dispositivos. Además, ambos controladores proporcionan operaciones de suspensión y reanudación para dispositivos que admiten la administración de energía.

Los minidriveres de imágenes en modo de usuario pueden acceder a estos controladores en modo kernel mediante una llamada a CreateFile, ReadFile, WriteFile y DeviceIoControl (que se describe en la documentación de Microsoft Windows SDK). ReadFile y WriteFile se usan para las transferencias de datos de bloque. En concreto, se llama a ReadFile para obtener datos de imagen y WriteFile se usa para enviar comandos a dispositivos que aceptan comandos como flujos de datos.

Antes de llamar a ReadFile, Writefile o DeviceIoControl, el minidriver debe llamar a IStiDeviceControl::GetMyDevicePortName para obtener el nombre del puerto del dispositivo y, a continuación, usar ese nombre de puerto como parámetro para CreateFile.

Controlador SCSI

Controlador USB