(KMDF) IRQL 規則集
使用這些規則來確認您的驅動程式在必要的 IRQL 進行 DDI 呼叫。
未遵循 IRQL 規則的驅動程式可能會導致作業期間發生嚴重問題,導致死結狀況或電腦當機。
本節內容
主題 | 描述 |
---|---|
KmdfIrql 規則會指定驅動程式在 IRQL 上呼叫架構方法,其小於或等於該方法的最大 IRQL。 |
|
KmdfIrql2 規則會指定驅動程式在 IRQL 上呼叫架構方法,其小於或等於該方法的最大 IRQL。 |
|
UsbKmdfIrql 規則指定 KMDF 驅動程式不會在不正確的 IRQL 層級呼叫 USB 特定裝置驅動程式介面 (DDI) 。 |
|
UsbKmdfIrql2 規則指定 KMDF 驅動程式不應該在不正確的 IRQL 層級呼叫 USB 特定的 DDI。 |
|
UsbKmdfIrqlExplicit 規則會確認在正確的 IRQL 層級呼叫 KMDF DDI。 此規則適用於所有 EvtIoCallback 函式。 |
|
WdfRequestSendSyncAtDispatch 規則會確認 WdfRequestSend 函式是以正確的 IRQL 優先順序層級傳送。 |
|
WdfRequestSendSyncAtDispatch2 規則會確認 WdfRequestSend 函式是以正確的 IRQL 優先順序層級傳送。 |
若要選取 Irql 規則集
在 Microsoft Visual Studio 中選取驅動程式項目 (.vcxProj) 。 從 [ 驅動程式 ] 功能表中,按兩下 [ 啟動靜態驅動程序驗證程式...]。
按兩下 [ 規則] 索引標籤 。在 [規則集] 底下,選取 [Irql]。
若要從 Visual Studio 開發人員命令提示字元視窗中選取預設規則集,請使用 /check 選項指定 Irql.sdv。 例如:
msbuild /t:sdv /p:Inputs="/check:Irql.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
如需詳細資訊,請參閱 使用靜態驅動程式驗證器在驅動程式 和 靜態驅動程式驗證器命令 中尋找瑕疵 (MSBuild) 。