電腦提示DRIVER_IRQL_NOT_LESS_OR_EQUAL藍(lán)屏修復(fù)方法
藍(lán)屏代碼0x000000D1代表"DRIVER_IRQL_NOT_LESS_OR_EQUAL",這意味著一個驅(qū)動程序在請求更高的IRQL(中斷請求級別)時發(fā)生了一個問題。通常情況下,這是由于驅(qū)動程序與其他驅(qū)動程序或操作系統(tǒng)內(nèi)核之間的沖突或錯誤引起的。

快快藍(lán)屏修復(fù)助手可以幫你修復(fù)各類藍(lán)屏異常和錯誤問題,能快速檢測軟件、硬件和驅(qū)動故障。分析藍(lán)屏日志。
要解決這個問題,可以嘗試以下方法:
方法一:檢查硬件沖突
有時候驅(qū)動程序與其他硬件設(shè)備產(chǎn)生沖突,嘗試禁用或卸載最近安裝的硬件設(shè)備,然后重新啟動計算機(jī),查看是否仍然出現(xiàn)藍(lán)屏錯誤。
方法二:禁用或刪除最近添加的驅(qū)動程序或服務(wù)
如果在安裝某個特定驅(qū)動程序或服務(wù)后出現(xiàn)了藍(lán)屏錯誤,可以嘗試禁用或刪除該驅(qū)動程序或服務(wù),然后觀察問題是否解決。
方法三:檢查病毒或惡意軟件
運行安全軟件進(jìn)行全面系統(tǒng)掃描,確保系統(tǒng)沒有受到病毒或惡意軟件的感染。
方法四:使用一鍵修復(fù)工具助手(強烈推薦)
1、首先你的電腦必須下載與完成安裝完成快快藍(lán)屏修復(fù)助手。如果你還沒有安裝點擊下方鏈接下載。
下載地址:>>>快快藍(lán)屏修復(fù)助手<<<
提示:安裝路徑不要選擇C盤,避免產(chǎn)生問題造成損失。
2、找到你電腦中的快快藍(lán)屏修復(fù)助手,點擊進(jìn)入。看到首頁后,點擊首頁一鍵掃描按鈕開始掃描。等待幾分鐘,就能獲取你急切想要的結(jié)果。
3、掃描完成后會顯示電腦的所有藍(lán)屏記錄以及藍(lán)屏的詳細(xì)信息。
4、解決方案頁面顯示了導(dǎo)致該次藍(lán)屏的具體原因和解決方案,點擊右上角的一鍵修復(fù)進(jìn)行修復(fù)。
5、切記,當(dāng)修復(fù)完成之后我們還是需要重新啟動計算機(jī)的。畢竟一切修復(fù)的結(jié)果,需要重新后,才能被系統(tǒng)認(rèn)可。
當(dāng)你完成重啟后,你電腦的藍(lán)屏問題已經(jīng)基本解決了。相信小編,不要急需卸載快快藍(lán)屏修復(fù)助手。畢竟它強大的功能是你未來的一個保障,可以隨時隨地為你服務(wù),讓你再次遇到藍(lán)屏問題不在抓狂。
其他相關(guān)信息:
DRIVER_IRQL_NOT_LESS_OR_EQUAL bug 檢查 的值為 0x000000D1。 這表示內(nèi)核模式驅(qū)動程序在進(jìn)程 IRQL 過高時嘗試訪問可分頁內(nèi)存。
DRIVER_IRQL_NOT_LESS_OR_EQUAL參數(shù)
參數(shù) | 描述 |
---|---|
1 |
引用的內(nèi)存。 |
2 |
引用時 IRQL。 |
3 |
0 - 讀取 1 - 寫入 2 - 執(zhí)行 8 - 執(zhí)行 |
4 |
引用內(nèi)存的地址。 使用 ln (列出此地址上) 最近的符號 以查看函數(shù)的名稱。 |
原因
若要確定原因,需要 Windows 調(diào)試器、編程經(jīng)驗和對故障模塊源代碼的訪問權(quán)限。
通常,發(fā)生此錯誤時,驅(qū)動程序嘗試訪問可分頁 (地址或) 完全無效的地址,而中斷請求級別 (IRQL) 過高。 這可能是由于:
在 DISPATCH_LEVEL 或更高級別執(zhí)行時,取消引用錯誤指針(例如 NULL 或釋放的指針)。
在 DISPATCH_LEVEL 或更高級別訪問可分頁數(shù)據(jù)。
在 DISPATCH_LEVEL 或更高級別執(zhí)行可分頁代碼。
如果可以識別出導(dǎo)致錯誤的驅(qū)動程序,則其名稱將打印在藍(lán)屏上,并存儲在 內(nèi)存中 KiBugCheckDriver (PUNICODE_STRING) 位置。 可以使用 dx (顯示調(diào)試器對象模型表達(dá)式) (調(diào)試器命令)來顯示此對象: dx KiBugCheckDriver。
此 bug 檢查通常是由使用不正確的內(nèi)存地址的驅(qū)動程序引起的。
頁面錯誤的可能原因包括以下事件:
函數(shù)標(biāo)記為可分頁,并在提升的 IRQL (運行,其中包括獲取鎖) 。
函數(shù)調(diào)用是向另一個驅(qū)動程序中的函數(shù)進(jìn)行的,并且該驅(qū)動程序已卸載。
該函數(shù)是使用作為無效指針的函數(shù)指針調(diào)用的。
有關(guān) Windows IRQL 的詳細(xì)信息,請參閱由 Pavel Yosifovich、Mark E. Russinovich、David A. Solomon 和 Alex Ionescu 撰寫的 Windows Internals 第 7 版第 1 部分 。
解決方法
如果問題是由你正在開發(fā)的驅(qū)動程序引起的,請確保在出現(xiàn) bug 時執(zhí)行的函數(shù)檢查為:
未標(biāo)記為可分頁 不調(diào)用任何其他可以分頁的內(nèi)聯(lián)函數(shù)。!analyze 調(diào)試程序擴(kuò)展顯示有關(guān) bug 檢查的信息,有助于確定根本原因。 下面的示例是 !analyze 的輸出。
DRIVER_IRQL_NOT_LESS_OR_EQUAL (d1) An attempt was made to access a pageable (or completely invalid) address at an interrupt request level (IRQL) that is too high. This is usually caused by drivers using improper addresses. If kernel debugger is available get stack backtrace. Arguments: Arg1: fffff808add27150, memory referenced Arg2: 0000000000000002, IRQL Arg3: 0000000000000000, value 0 = read operation, 1 = write operation Arg4: fffff808adc386a6, address which referenced memory
如果可以識別出導(dǎo)致錯誤的驅(qū)動程序,則其名稱將打印在藍(lán)屏上,并存儲在 內(nèi)存中 KiBugCheckDriver (PUNICODE_STRING) 位置。 可以使用一個調(diào)試器命令 dx(顯示調(diào)試器對象模型表達(dá)式)來顯示此內(nèi)容:dx KiBugCheckDriver。
0: kd> dx KiBugCheckDriver KiBugCheckDriver : 0xffffc6092de892c8 : "Wdf01000.sys" [Type: _UNICODE_STRING *]
如果轉(zhuǎn)儲文件中提供了陷阱幀,請使用 .trap 命令將上下文設(shè)置為提供的地址。
若要開始調(diào)試此類 bug 檢查,請使用 k、kb、kc、kd、kp、kP、kv (顯示堆棧回溯) 命令來檢查堆棧跟蹤。
在調(diào)試器中,運行 !irql 命令,在調(diào)試器中斷之前顯示有關(guān)目標(biāo)計算機(jī)上處理器 IRQL 的信息。 例如:
0: kd> !irql Debugger saved IRQL for processor 0x0 -- 2 (DISPATCH_LEVEL)
在大多數(shù)此類 bug 檢查的情況下,問題不在于 IRQL 級別,而在于正在訪問的內(nèi)存。
由于此 bug 檢查通常是由使用不正確內(nèi)存地址的驅(qū)動程序引起的,因此請使用參數(shù) 1、3 和 4 進(jìn)一步調(diào)查。
使用 ln (列出參數(shù) 4) 最近的符號 以查看調(diào)用的函數(shù)的名稱。 檢查 !analyze 輸出以查看是否已識別出錯誤代碼。
使用參數(shù) 1 地址上的 !pool 查看它是否為分頁池。 使用 !address 和高級 !pte 命令了解有關(guān)此內(nèi)存區(qū)域的詳細(xì)信息。
使用 顯示內(nèi)存 命令檢查參數(shù) 1 中的命令中引用的內(nèi)存。
使用 u、 ub、 uu (unassemble) 命令查看引用參數(shù) 4 中內(nèi)存的地址中的代碼。
使用 命令lm t n列出內(nèi)存中加載的模塊。 使用 !memusage 和 檢查系統(tǒng)內(nèi)存的一般狀態(tài)。
驅(qū)動程序驗證程序
驅(qū)動程序驗證程序是一個實時運行的工具,用于檢查驅(qū)動程序的行為。 例如,驅(qū)動程序驗證程序檢查內(nèi)存資源(如內(nèi)存池)的使用。 如果在執(zhí)行驅(qū)動程序代碼時標(biāo)識錯誤,它會主動創(chuàng)建一個異常,以允許進(jìn)一步檢查該部分驅(qū)動程序代碼。 驅(qū)動程序驗證程序管理器內(nèi)置于 Windows 中,可在所有 Windows 電腦上使用。
若要啟動驅(qū)動程序驗證程序管理器,請在命令提示符下鍵入 驗證程序 。 你可以配置要驗證的驅(qū)動程序。 驗證驅(qū)動程序的代碼在運行時會增加開銷,因此請嘗試驗證盡可能少的驅(qū)動程序。 有關(guān)詳細(xì)信息,請參閱驅(qū)動程序驗證程序。
備注
如果你沒有能力使用 Windows 調(diào)試器來解決此問題,則可以使用一些基本的故障排除技術(shù)。
在系統(tǒng)登錄事件查看器中查看其他錯誤消息,這些錯誤消息可能有助于識別導(dǎo)致此 bug 的設(shè)備或驅(qū)動程序檢查。
如果驅(qū)動程序標(biāo)識在錯誤檢查消息中,禁用該驅(qū)動程序或咨詢驅(qū)動程序更新的制造商。
確認(rèn)安裝的任何新硬件都與已安裝的 Windows 版本兼容。 例如,可以在Windows 10規(guī)范中獲取有關(guān)所需硬件的信息。