Freigeben über


IRQL-Regelsatz (KMDF)

Verwenden Sie diese Regeln, um zu überprüfen, ob Ihr Treiber DDI-Aufrufe am erforderlichen IRQL durchführt.

Ein Treiber, der die IRQL-Regeln nicht befolgt, kann während des Betriebs zu schwerwiegenden Problemen führen, die zu Deadlockbedingungen oder Computerabstürzen führen können.

In diesem Abschnitt

Thema BESCHREIBUNG

KmdfIrql

Die KmdfIrql-Regel gibt an, dass ein Treiber eine Frameworkmethode an einem IRQL aufruft, die kleiner oder gleich dem maximalen IRQL für diese Methode ist.

KmdfIrql2

Die KmdfIrql2-Regel gibt an, dass ein Treiber eine Frameworkmethode an einem IRQL aufruft, die kleiner oder gleich dem maximalen IRQL für diese Methode ist.

UsbKmdfIrql

Die UsbKmdfIrql-Regel gibt an, dass ein KMDF-Treiber keine USB-spezifischen Gerätetreiberschnittstellen (DDI) auf der falschen IRQL-Ebene aufruft.

UsbKmdfIrql2

Die UsbKmdfIrql2-Regel gibt an, dass ein KMDF-Treiber USB-spezifische DDIs nicht auf der falschen IRQL-Ebene aufrufen soll.

UsbKmdfIrqlExplicit

Die UsbKmdfIrqlExplicit-Regel überprüft, ob KMDF-DDIs auf der richtigen IRQL-Ebene aufgerufen werden. Diese Regel gilt für alle EvtIoCallback-Funktionen.

WdfRequestSendSyncAtDispatch

Die WdfRequestSendSyncAtDispatch-Regel überprüft, ob die WdfRequestSend-Funktion mit der richtigen IRQL-Prioritätsstufe gesendet wird.

WdfRequestSendSyncAtDispatch2

Die WdfRequestSendSyncAtDispatch2-Regel überprüft, ob die WdfRequestSend-Funktion mit der richtigen IRQL-Prioritätsstufe gesendet wird.

So wählen Sie den Irql-Regelsatz aus

  1. Wählen Sie Ihr Treiberprojekt (.vcxProj) in Microsoft Visual Studio aus. Klicken Sie im Menü Treiber auf Statische Treiberüberprüfung starten....

  2. Klicken Sie auf die Registerkarte Regeln . Wählen Sie unter Regelsätzedie Option Irql aus.

    Um den Standardregelsatz in einem Visual Studio-Eingabeaufforderungsfenster für Entwickler auszuwählen, geben Sie Irql.sdv mit der Option /check an . Beispiel:

    msbuild /t:sdv /p:Inputs="/check:Irql.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    Weitere Informationen finden Sie unter Using Static Driver Verifier to Find Defects in Drivers and Static Driver Verifier commands (MSBuild).