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 :
- Redistribution de Visual Studio 2019
- packages Visual C++ Redistributable pour Visual Studio 2017
- Packages redistribuables Visual C++ pour Visual Studio 2013
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
- Problèmes connus du vérificateur de pilotes statiques : répertorie les derniers problèmes connus pour le vérificateur de pilotes statiques
- Utilisation du vérificateur de pilotes statique pour rechercher des défauts dans les pilotes : vous indique ce dont vous avez besoin pour commencer à analyser votre code de pilote dans l’environnement Visual Studio.
- Commandes msBuild (Static Driver Verifier) : répertorie les commandes MSBuild à utiliser pour exécuter SDV dans une fenêtre d’invite de commandes Visual Studio.
- Présentation du vérificateur de pilote statique : fournit une vue d’ensemble de l’outil d’analyse statique.
- Utilisation du vérificateur de pilote statique : fournit des détails sur l’utilisation et la configuration de l’outil d’analyse statique.
- Rapport du vérificateur de pilote statique : décrit la visionneuse qui affiche la trace détaillée de l’analyse du code statique.
- Règles de vérificateur de pilotes statiques : les règles définissent les conditions requises pour une interaction appropriée entre un modèle de pilote et l’interface du noyau du système d’exploitation.
- Référence du vérificateur de pilote statique : fournit des informations de référence sur les types de rôles de fonction, les fichiers de configuration SDV, les messages d’erreur et d’avertissement.
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 :
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour