Vérificateur de pilote statique

Static Driver Verifier (également appelé « StaticDV » ou « SDV ») est un outil de vérification statique qui analyse systématiquement le code source des pilotes en mode noyau Windows. SDV est un outil de compilation de temps capable de détecter les défauts et les problèmes de conception dans un pilote. Sur la base d’un ensemble de règles d’interface et d’un modèle du système d’exploitation, SDV détermine si le pilote interagit correctement avec le noyau du système d’exploitation Windows.

Installation du vérificateur de pilote statique

Le vérificateur de pilotes statique est disponible dans le cadre du Kit de pilotes Windows (WDK) dans l’expérience WDK complète et dans le WDK d’entreprise autonome. En outre, les packages Visual C++ Redistributable pour Visual Studio sont requis pour que SDV s’exécute. Consultez les rubriques suivantes :

Pour les versions de SDV disponibles dans le WDK pour Windows 10, version 1809 ou antérieure, les packages Visual C++ Redistributable pour Visual Studio 2012 doivent être installés au lieu des packages 2017.

Intégration à Visual Studio

Static Driver Verifier est intégré à Visual Studio. Vous pouvez exécuter une analyse statique sur votre projet de pilote Visual Studio. Vous pouvez lancer, configurer et contrôler Static Driver Verifier à partir du menu Pilote de Visual Studio.

Documentation du vérificateur de pilotes statiques

Recherche de bogues dans le code du pilote Windows

Microsoft utilise SDV pour tester les pilotes en mode noyau qui sont inclus dans le système d’exploitation Microsoft Windows et pour tester les exemples de pilotes dans le WDK. En utilisant les règles de conformité DDI pour des modèles de pilotes spécifiques, SDV peut vérifier le comportement correct des pilotes. Par exemple, SDV peut vérifier que le pilote :

  • Appelle des fonctions à l’IRQL correct
  • Acquiert et libère les verrous dans la séquence correcte
  • Utilise correctement des fonctions qui gèrent les paquets de demandes d’E/S (IRP)

SDV examine tous les chemins possibles dans le code du pilote. Il est conçu pour trouver des erreurs graves dans des chemins obscurs qui sont peu susceptibles d’être rencontrés même lors de tests approfondis.

Ressources supplémentaires

Pour plus d’informations sur les pilotes que SDV peut vérifier, consultez Pilotes pris en charge

Pour plus d’informations et pour obtenir des conseils sur l’utilisation du vérificateur de pilotes statiques, consultez les rubriques suivantes :