Comprobador de controlador estático

Static Driver Verifier (también conocido como "StaticDV" o "SDV") es una herramienta de verificación estática que analiza sistemáticamente el código fuente de los controladores Windows modo kernel. SDV es una herramienta de tiempo de compilación capaz de detectar defectos y problemas de diseño en un controlador. En función de un conjunto de reglas de interfaz y un modelo del sistema operativo, SDV determina si el controlador interactúa correctamente con el kernel Windows sistema operativo.

Instalación de Static Driver Verifier

Static Driver Verifier está disponible como parte de Windows Driver Kit (WDK) tanto en la experiencia de WDK completa como en la Enterprise WDK independiente. Además, se requieren Visual C++ Redistributable paquetes de Visual Studio para que SDV se ejecute. Consulte lo siguiente:

Para las versiones de SDV disponibles en WDK para Windows 10, versión 1809 o anterior, se deben instalar los paquetes de Visual C++ Redistributable para Visual Studio 2012 en lugar de los paquetes de 2017.

Integración de Visual Studio

Static Driver Verifier se integra en Visual Studio. Puede ejecutar análisis estáticos en el proyecto Visual Studio controlador. Puede iniciar, configurar y controlar Static Driver Verifier desde el menú Controlador de Visual Studio.

Documentación de Static Driver Verifier

Buscar errores en el código Windows controlador

Microsoft usa SDV para probar los controladores en modo kernel que se incluyen con el sistema operativo microsoft Windows y para probar los controladores de ejemplo en WDK. Mediante el uso de las reglas de cumplimiento de DDI para modelos de controlador específicos, SDV puede comprobar el comportamiento correcto del controlador. Por ejemplo, SDV puede comprobar que el controlador:

  • Llama a funciones en el IRQL correcto
  • Adquiere y libera bloqueos en la secuencia correcta.
  • Usa correctamente funciones que controlan paquetes de solicitud de E/S (IRP)

SDV examina todas las rutas de acceso posibles a través del código del controlador. Está diseñado para encontrar errores graves en rutas de acceso ocultas que es poco probable que se encuentren incluso en pruebas exhaustivas.

Recursos adicionales

Para obtener información específica sobre los controladores que SDV puede comprobar, vea Controladores admitidos.

Para obtener más información y sugerencias sobre el uso de Static Driver Verifier, vea lo siguiente: