Megosztás:


Statikus illesztőprogram-ellenőrző

A Static Driver Verifier (más néven "StaticDV" vagy "SDV") egy statikus ellenőrző eszköz, amely szisztematikusan elemzi a Windows kernelmódú illesztőprogramok forráskódját. Az SDV egy fordítási időeszköz, amely képes felderíteni az illesztőprogram hibáit és tervezési problémáit. Az SDV az interfészszabályok és az operációs rendszer modellje alapján határozza meg, hogy az illesztőprogram megfelelően kommunikál-e a Windows operációs rendszer kernelével.

Fontos

Az SDV már nem támogatott, és az SDV nem érhető el a Windows 24H2 WDK-ban vagy az EWDK-kiadásokban. A 26017-es buildnél újabb WDK-kban nem érhető el, és nem szerepel a Windows 24H2 RTM WDK-ban. Az SDV továbbra is használható a Windows 11 22H2 EWDK (2023. október 24-én megjelent) verziójának a Visual Studio 17.1.5-ös buildelési eszközeinek letöltésével a Windows Driver Kit (WDK) letöltéséből. Csak az Enterprise WDK használata ajánlott az SDV futtatásához. A standard WDK régebbi verzióinak használata a Visual Studio legutóbbi kiadásaival együtt nem ajánlott, mivel ez valószínűleg elemzési hibákat fog eredményezni.
A továbbiakban a CodeQL lesz az illesztőprogramok elsődleges statikus elemző eszköze. A CodeQL hatékony lekérdezési nyelvet biztosít, amely a kódot adatbázisként kezeli lekérdezni, így egyszerűen írhat lekérdezéseket adott viselkedések, minták és egyebek céljából. További információ a CodeQL használatáról a következőben található: CodeQL és a Static Tools Logo Test.

Statikus illesztőprogram-ellenőrző eszköz telepítése

A Statikus illesztőprogram-ellenőrző a Windows Driver Kit (WDK) részeként érhető el a teljes WDK-felületen és az önálló Enterprise WDK-ban is. Emellett a Visual Studio Visual C++ terjeszthető csomagjaira is szükség van az SDV futtatásához. Tekintse meg a következőket:

Visual Studio-integráció

Static Driver Verifier integrálva van a Visual Studio-ba. Statikus elemzést futtathat a Visual Studio illesztőprogram-projektjén. A Visual Studio Illesztőprogram menüjében elindíthatja, konfigurálhatja és vezérelheti a Statikus illesztőprogram-ellenőrzőt.

Statikus illesztőprogram-ellenőrző dokumentációja

Hibák keresése a Windows illesztőprogram-kódjában

A Microsoft SDV használatával teszteli a Microsoft Windows operációs rendszer kernelmódú illesztőprogramjait, és teszteli a WDK-ban található mintaillesztőket. A DDI-megfelelőségi szabályok adott illesztőprogram-modellekhez való használatával az SDV képes ellenőrizni a megfelelő illesztőprogram-viselkedést. Az SDV például ellenőrizheti, hogy az illesztőprogram:

  • A függvények meghívása a megfelelő IRQL-en
  • A zárak megfelelő sorrendű megszerzése és elengedése
  • Az I/O-kéréscsomagokat (IRP) kezelő függvények helyes használata

Az SDV az illesztőprogram-kódon keresztüli összes lehetséges útvonalat megvizsgálja. Úgy tervezték, hogy súlyos hibákat találjon olyan homályos útvonalakban, amelyek még az alapos tesztelés során sem fognak előfordulni.

További erőforrások

Az SDV által ellenőrizhető illesztőprogramokról további információt a Támogatott illesztőprogramok című témakörben talál.

A Statikus illesztőprogram-ellenőrző használatával kapcsolatos további információkért és tippekért tekintse meg a következőket: