Sdílet prostřednictvím


Představení ověřovatele statických ovladačů

Static Driver Verifier (SDV) je nástroj pro statické ověření, který se spouští v době kompilace. Zkoumá cesty v kódu ovladače symbolickým vykonáváním zdrojového kódu, s co nejmenšími možnými předpoklady o stavu operačního systému a počátečním stavu ovladače. SDV tedy může provádět kód v cestách, které jsou vynechány v běžném testování.

SDV obsahuje sadu pravidel, která definují správnou interakci mezi ovladačem a jádrem operačního systému. Během ověřování SDV zkontroluje každou příslušnou větev kódu ovladače a kód knihovny, který používá, a snaží se prokázat, že ovladač porušuje pravidla. Pokud se SDV nepodaří prokázat porušení, oznámí, že řidič splňuje pravidla a předává ověření.

Tato část obsahuje:

Pochopení statického ověřovače ovladačů

Koncepty ověření statického ovladače

Podporované ovladače

Omezení ověřovatele statického ovladače

Důležité

SDV se už nepodporuje a SDV není k dispozici ve verzích Windows 24H2 WDK nebo EWDK. Není k dispozici v wdk novější než build 26017 a není součástí windows 24H2 RTM WDK. SDV lze stále používat stažením Windows 11 verze 22H2 EWDK, vydaného 24. října 2023, s nástroji Visual Studio Build Tools 17.1.5 z Stáhnout sadu Windows Driver Kit (WDK). Doporučuje se pouze použití sady Enterprise WDK ke spuštění SDV. Použití starších verzí standardní sady WDK ve spojení s nedávnými verzemi sady Visual Studio se nedoporučuje, protože to bude pravděpodobně mít za následek selhání analýzy.
V budoucnu bude CodeQL primárním nástrojem pro statickou analýzu ovladačů. CodeQL poskytuje výkonný dotazovací jazyk, který zpracovává kód jako databázi, která se má dotazovat, což usnadňuje psaní dotazů pro konkrétní chování, vzory a další. Další informace o použití CodeQL naleznete v tématu CodeQL a Static Tools Logo Test.