錯誤檢查0x102:DPC_WATCHDOG_TIMEOUT
DPC_WATCHDOG_TIMEOUT錯誤檢查的值為 0x00000102。 這表示 DPC 監視程式常式未在配置的時間間隔內執行。
重要
本文適用于程式設計人員。 如果您是在使用電腦時收到藍色螢幕錯誤碼的客戶,請參閱 針對藍色畫面錯誤進行疑難排解。
DPC_WATCHDOG_TIMEOUT參數
參數 | 描述 |
---|---|
1 | DPC 監視程式以標準時鐘刻度為單位的逾時間隔。 |
2 | 無回應處理器的中國B 位址。 |
3 | 保留 |
4 | 保留 |
原因
這個錯誤檢查通常表示 ISR 在低於時鐘層級和高於分派層級的 IRQL 上無回應,或 DPC 常式在指定的處理器上無回應。
例如,對於 StorPort Miniport 驅動程式,StorPort.sys會在執行于 DISPATCH_LEVEL 的常式中處理 I/O 完成,並且會串列呼叫所有剛完成之 IRP 的 I/O 完成常式。 如果 I/O 自動完成常式需要太多時間,鍵盤和/或滑鼠可能會停止回應。 Windows DPC Watchdog 計時器常式也可能會決定 StorPort 常式花費太多時間才能完成。
解決方案
儲存體堆疊中的核心驅動程式可透過有效率地編碼驅動程式的 I/O 完成常式,來降低問題的可能性。 如果無法在足夠時間內在完成常式中執行所有必要的處理,常式可以建立 I/O 工作的工作元素、將專案排入佇列,並傳回STATUS_MORE_PROCESSING_REQUIRED;然後,驅動程式的背景工作執行緒應該會尋找工作元素、執行工作,並針對 IRP 執行 IoCallerDriver,以確保 IRP 的進一步 I/O 處理。