Udostępnij przez


Statyczny weryfikator sterowników

Static Driver Weryfikator (znany również jako "StaticDV" lub "SDV") to statyczne narzędzie do weryfikacji, które systematycznie analizuje kod źródłowy sterowników trybu jądra systemu Windows. SDV to narzędzie czasu kompilacji, które umożliwia odnajdywanie wad i problemów projektowych w sterowniku. Na podstawie zestawu reguł interfejsu i modelu systemu operacyjnego SDV określa, czy sterownik poprawnie współdziała z jądrem systemu operacyjnego Windows.

Ważne

SdV nie jest już obsługiwane i SDV nie jest dostępny w wersjach zestawu WDK lub EWDK systemu Windows 24H2. Nie jest on dostępny w zestawach WDK nowszych niż kompilacja 26017 i nie jest uwzględniony w zestawie WDK systemu Windows 24H2 RTM. SDV może być nadal używany przez pobranie pakietu EWDK dla systemu Windows 11 w wersji 22H2 (wydanego 24 października 2023 r.) z narzędziami kompilacji Visual Studio 17.1.5, z linku 'Pobierz zestaw sterowników systemu Windows (WDK)'. Zaleca się używanie Enterprise WDK do uruchamiania SDV. Używanie starszych wersji standardowego zestawu WDK w połączeniu z najnowszymi wersjami programu Visual Studio nie jest zalecane, ponieważ prawdopodobnie spowoduje to błędy analizy.
W przyszłości kodQL będzie podstawowym narzędziem do analizy statycznej sterowników. Język CodeQL udostępnia zaawansowany język zapytań, który traktuje kod jako bazę danych do odpytywania, co ułatwia pisanie zapytań dotyczących określonych zachowań, wzorców i nie tylko. Aby uzyskać więcej informacji na temat korzystania z CodeQL, zobacz CodeQL i Static Tools Logo Test.

Instalowanie weryfikatora sterowników statycznych

Statyczny weryfikator sterowników jest dostępny w ramach zestawu Windows Driver Kit (WDK) zarówno w pełnym środowisku WDK, jak i w autonomicznym zestawie WDK przedsiębiorstwa. Ponadto pakiety redystrybucyjne Visual C++ dla programu Visual Studio są wymagane do uruchomienia wersji SDV. Zobacz poniżej:

Integracja z programem Visual Studio

Weryfikator sterowników statycznych jest zintegrowany z programem Visual Studio. Możesz uruchomić analizę statyczną w projekcie sterowników programu Visual Studio. Możesz uruchomić, skonfigurować i kontrolować statyczny weryfikator sterowników z menu Sterownik w programie Visual Studio.

Dokumentacja statycznego weryfikatora sterowników

Znajdowanie usterek w kodzie sterownika systemu Windows

Firma Microsoft używa sdV do testowania sterowników trybu jądra, które są dołączone do systemu operacyjnego Microsoft Windows i do testowania przykładowych sterowników w zestawie WDK. Korzystając z reguł zgodności DDI dla określonych modeli sterowników, sdV może zweryfikować prawidłowe zachowanie sterownika. Na przykład SDV może sprawdzić, czy sterownik:

  • Wywołuje funkcje na prawidłowym poziomie IRQL
  • Uzyskuje i zwalnia blokady w odpowiedniej sekwencji
  • Poprawnie używa funkcji obsługujących pakiety żądań we/wy (IRP)

SdV sprawdza wszystkie możliwe ścieżki za pośrednictwem kodu sterownika. Jest przeznaczony do znajdowania poważnych błędów w niejasnych ścieżkach, które są mało prawdopodobne do napotkania nawet w dokładnych testach.

Dodatkowe zasoby

Aby uzyskać szczegółowe informacje na temat sterowników, które SDV może zweryfikować, zobacz Obsługiwane sterowniki

Aby uzyskać więcej informacji i wskazówek dotyczących korzystania ze statycznego weryfikatora sterowników, zobacz następujące tematy: