Static Driver Verifier

Static Driver Verifier (auch als "StaticDV" oder "SDV" bezeichnet) ist ein statisches Überprüfungstool, das den Quellcode von Windows-Kernelmodustreibern systematisch analysiert. SDV ist ein Tool zur Kompilierzeit, das Fehler und Designprobleme in einem Treiber erkennen kann. Basierend auf einer Reihe von Schnittstellenregeln und einem Modell des Betriebssystems bestimmt SDV, ob der Treiber ordnungsgemäß mit dem Windows-Betriebssystemkerneln interagiert.

Installieren der statischen Treiberüberprüfung

Static Driver Verifier ist als Teil des Windows Driver Kit (WDK) sowohl in der vollständigen WDK-Benutzeroberfläche als auch im eigenständigen Enterprise WDK verfügbar. Darüber hinaus sind die Visual C++ Redistributable-Pakete für Visual Studio erforderlich, damit SDV ausgeführt werden kann. Weitere Informationen finden Sie in den folgenden Themen:

Für Versionen von SDV, die im WDK für Windows 10, Version 1809 oder früher, verfügbar sind, sollte die Visual C++ Redistributable-Pakete für Visual Studio 2012 anstelle der 2017-Pakete installiert werden.

Integration in Visual Studio

Static Driver Verifier ist in Visual Studio integriert. Sie können statische Analysen für Ihr Visual Studio-Treiberprojekt ausführen. Sie können die statische Treiberüberprüfung über das Menü Treiber in Visual Studio starten, konfigurieren und steuern.

Dokumentation zur Statischen Treiberüberprüfung

Suchen nach Fehlern im Windows-Treibercode

Microsoft verwendet SDV, um die Kernelmodustreiber zu testen, die im Microsoft Windows-Betriebssystem enthalten sind, und um die Beispieltreiber im WDK zu testen. Mithilfe der DDI-Kompatibilitätsregeln für bestimmte Treibermodelle kann SDV das richtige Treiberverhalten überprüfen. Beispielsweise kann SDV überprüfen, ob der Treiber:

  • Ruft Funktionen am richtigen IRQL auf.
  • Ruft Sperren in der richtigen Reihenfolge ab und gibt sie frei.
  • Verwendet ordnungsgemäß Funktionen, die E/A-Anforderungspakete (IRP) verarbeiten

SDV untersucht alle möglichen Pfade durch den Treibercode. Es ist darauf ausgelegt, schwerwiegende Fehler in obskuren Pfaden zu finden, die selbst bei gründlichen Tests unwahrscheinlich sind.

Zusätzliche Ressourcen

Spezifische Informationen zu den Treibern, die von SDV überprüft werden können, finden Sie unter Unterstützte Treiber.

Weitere Informationen und Tipps zur Verwendung der statischen Treiberüberprüfung finden Sie in den folgenden Artikeln: