適用於:Windows Server 和 Windows 用戶端的支援版本
當 Windows 遇到危害安全系統作業的條件時,系統就會停止。 範例包括可能會危害安全性或導致作業系統 (OS) 和/或使用者資料損毀的問題。 當電腦停止以防止作業系統在這些情況下繼續運作時,它稱為錯誤檢查 (或錯誤檢查)。 它通常也稱為系統當機、核心錯誤、藍色畫面、藍色當機畫面 (BSOD),或停止錯誤。 在 Windows 的預覽版本中,畫面色彩可以是綠色,導致綠色當機畫面 (GSOD)。
停止錯誤的原因沒有簡單的說明。 可能涉及許多不同的因素。 我們對當機根本原因的分析指出:
- 70% 是由第三方驅動程式的程式代碼所造成。
- 10% 是由硬體問題所造成。
- 5% 是由 Microsoft 程式碼所造成。
- 15% 有未知的原因,因為記憶體損毀嚴重而無法分析。
若要針對停止錯誤訊息進行疑難排解,請遵循下列一般步驟:
檢閱您在事件記錄檔中找到的停止錯誤碼。 線上搜尋特定的停止錯誤碼,以查看是否有任何已知問題、解決方法或因應措施的問題。
請確定您安裝最新的 Windows 更新、累積更新和彙總更新。 若要確認更新狀態,請參閱系統的適當更新歷程記錄。 例如:
- Windows 10 版本 21H2
- Windows 10 版本 21H1
- Windows 10 版本 20H2
請確定 BIOS 和韌體是最新的。
執行任何相關的硬體和記憶體測試。
執行 Microsoft 安全掃描工具或任何其他病毒偵測程式,包括 MBR 是否有感染檢查。
請確定磁碟上有充足的可用空間。 確切的需求會有所不同,但我們建議需有 10-15% 的可用磁碟空間。
請連絡個別的硬體或軟體廠商,以在下列案例中更新驅動程式和應用程式:
- 錯誤訊息指出特定驅動程式造成問題。
- 您會看到發生當機前正在啟動或停止的服務指示。 在此情況下,判斷服務行為是否在所有損毀執行個體上保持一致。
- 您已進行任何軟體或硬體變更。
若要設定記憶體傾印檔案的系統,請遵循下列步驟:
- 選取任務列搜尋方塊,輸入 [進階系統設定],然後按 [Enter]。
- 在 [系統屬性] 方塊的 [進階] 索引標籤上,選取 [啟動和復原] 區段中出現的 [設定] 按鈕。
- 在新視窗中,選取 [撰寫偵錯資訊] 選項下方的下拉式清單。
- 選擇 [自動記憶體傾印]。
- 選取 [確定]。
- 重新啟動電腦,讓這些設定生效。
- 如果伺服器虛擬化,請在建立記憶體傾印檔案之後停用自動重新啟動。 此停用可讓您擷取伺服器處於狀態的快照集,如果問題再次發生,則也一樣。
記憶體傾印檔案會儲存在下列位置:
您可以使用 Microsoft 損毀傾印檔案檢查工具 (DumpChk) 工具來確認記憶傾印檔案未損毀或無效。 如需詳細資訊,請觀看下列影片:
如需如何使用 Dumpchk.exe 檢查傾印檔案的詳細資訊,請參閱下列文章:
- 使用 DumpChk
- 下載 DumpChk
如需有關分頁檔設定的詳細資訊,請參閱下列文章:
- 分頁檔案服務簡介
- 如何判斷 64 位元版本的 Windows 的適當分頁檔案大小
- 產生核心或完成損毀傾印
找出損毀的根本原因可能並不容易。 硬體問題特別難以診斷,因為它們可能會導致不穩定且無法預測的行為,這些行為可能會以各種徵兆來顯現出來。
發生停止錯誤時,您應該先隔離有問題的元件,然後再嘗試啟用它們再次觸發停止錯誤。 如果可以復寫問題,您通常可以判斷原因。
您可以使用 Windows 軟體開發工具套件 (SDK) 和符號等工具來診斷傾印記錄。 下一節將討論如何使用此工具。
- 進階 Windows 偵錯,第一版書籍
- 適用於 Windows 的偵錯工具 (WinDbg、KD、CDB、NTSD)
確認電腦已設定為在發生當機時產生完整的記憶體傾印檔案。 如需詳細資訊,請參閱方法 1:記憶體傾印。
在當機的 Windows 目錄中找出 memory.dmp檔案,並將該檔案複製到另一部電腦。
在其他電腦上,下載 Windows 10 SDK。
啟動安裝,然後選擇 [適用於 Windows 的偵錯工具]。 已安裝 WinDbg 工具。
移至 [檔案] 功能表,然後選取 [符號檔案路徑] 以開啟 WinDbg 工具並設定符號路徑。
- 如果電腦連線到網路,請輸入 Microsoft 公用符號伺服器:,然後選取 [確定]。 推薦使用這個方法。
- 如果電腦未連線到網路,請指定本機符號路徑。
選取 [開啟損毀傾印],然後開啟您複製的 memory.dmp 檔案。
在 [錯誤檢查分析] 底下,選取 。 命令 會在頁面底部的提示字元中輸入。
詳細的錯誤檢查分析隨即出現。
向下捲動至 [STACK_TEXT] 區段。 每個數字列後面都會有冒號和一些文字。 該文字應能告訴您 DLL 造成當機的原因。 如果適用,它也會指出哪個服務損毀 DLL。
如需如何解譯 STACK_TEXT 輸出的詳細資訊,請參閱使用 !analyze 擴充功能。
錯誤檢查有許多可能的原因,而且每個案例都是唯一的。 在上述範例中,可以從 STACK_TEXT 識別的重要行是 20、21 和 22:
此問題是因為 mpssvc 服務是 Windows 防火牆的元件。 此問題已藉由暫時停用防火牆,然後重設防火牆原則來修復。
如需更多範例,請參閱偵錯範例。
下列影片說明分析傾印檔案的各種疑難排解技術。
- 分析傾印檔案
- 安裝適用於 Windows 的偵錯工具 (x64 和 x86)
- 偵錯內核模式損毀記憶體傾印
- 特殊集區
我們估計所有停止錯誤中約有 75% 是由故障的驅動程式所造成。 驅動程式驗證器工具提供數種方法來協助您進行疑難排解。 其中包括在隔離的記憶體集區中執行驅動程式 (而不與其他元件共用記憶體)、產生極端的記憶體壓力,以及驗證參數。 如果工具在執行驅動程式程式代碼時發生錯誤,它會主動建立例外狀況。 然後,它可以進一步檢查該程代碼的該部分。
當您使用驅動程式驗證器時,請使用下列指導方針:
- 測試任何「可疑」驅動程式。 例如,最近更新或已知有問題的驅動程式。
- 如果您持續遇到無法分析的當機,請嘗試在所有第三方和未簽署的驅動程式上啟用驗證。
- 在 10-20 個驅動程式的群組上啟用並行驗證。
- 此外,如果電腦因為驅動程式驗證程式而無法開機進入桌面,您可以在安全模式中啟動來停用工具。 此解決方案是因為此工具無法在安全模式中執行。
如需詳細資訊,請參閱驅動程式驗證器。
本節不包含所有錯誤碼的清單,但由於許多錯誤碼都有相同的可能解決方式,因此最好遵循下列步驟來針對錯誤進行疑難排解。 如需停止錯誤碼的完整清單,請參閱錯誤檢查碼參考。
下列各節列出常見停止錯誤碼的一般疑難排解程序。
停止錯誤碼 0x00000141 或 0x00000117
請連絡列出的顯示驅動程式廠商,以取得該驅動程式的適當更新。
停止錯誤碼 0x0000000D1
透過 Microsoft 更新類別目錄網站套用系統的最新累積更新,以套用驅動程式的最新更新。 更新過期的網路驅動程式。 虛擬化 VMware 系統通常會執行「Intel(R) PRO/1000 MT 網路連線」(e1g6032e.sys)。 您可以從 Intel 下載驅動程式和軟體網站下載此驅動程式。 請連絡硬體廠商以更新網路驅動程式以取得解決方案。 針對 VMware 系統,請使用 VMware 整合式網路驅動程式,而不是 Intel 的 e1g6032e.sys。 例如,使用 VMware 類型 VMXNET、VMXNET2 或 VMXNET3。
停止錯誤碼 0x000000050
如果在停止錯誤訊息中識別驅動程式,請連絡製造商以取得更新。 如果沒有可用的更新,請停用驅動程式,並監視系統的穩定性。 執行 以偵測並修復磁碟錯誤。 在磁碟掃描開始於系統磁碟分區上之前重新啟動系統。 請連絡製造商,以取得它們可能為硬碟子系統提供的任何診斷工具。 嘗試重新安裝最近安裝或更新的任何應用程式或服務。 當系統啟動應用程式並讀取登錄進行偏好設定時,可能會觸發當機。 重新安裝應用程式可以修正損毀的登錄機碼。 如果問題持續發生,而且您已執行最近的系統狀態備份,請嘗試從備份還原登錄區。
停止錯誤碼 c000021a {嚴重系統錯誤} Windows SubSystem 系統進程意外終止,狀態為 0xc0000005。 系統已關閉。
使用系統檔案檢查工具來修復遺失或損毀的系統檔案。 系統檔案檢查程式可讓使用者掃描 Windows 系統檔案中的損毀,並還原損毀的檔案。 如需詳細資訊,請參閱使用系統檔案檢查程式。
停止錯誤碼 0x000000024
此停止錯誤通常是因為硬碟上的 NTFS 檔案系統損毀或壞區塊 (扇區) 而造成。 硬碟的損毀驅動程式 (SATA 或 IDE) 也會對系統讀取和寫入磁碟的能力產生負面影響。 執行儲存體子系統製造商所提供的任何硬體診斷。 使用掃描磁碟工具來確認沒有檔案系統錯誤。 若要執行此步驟,請以滑鼠右鍵按下您要掃描的磁碟驅動器,選取 [屬性],選取 [工具],然後選取 [立即核取] 按鈕。 更新 NTFS 檔案系統驅動程式 (Ntfs.sys)。 針對發生問題的目前作業系統套用最新的累積更新。
停止錯誤碼 0x0000001E
如果在停止錯誤訊息中識別驅動程式,請停用或移除該驅動程式。 停用或移除最近新增的任何驅動程式或服務。
如果在啟動順序期間發生錯誤,而且系統分割區是使用 NTFS 檔案系統格式化的,您可能可以使用安全模式來停裝置管理員中的驅動程式。 如果要停用驅動程式,請依照下列步驟執行:
- 移至 [設定]>[更新與安全性]>[復原]。
- 在 [進階啟動] 底下,選取 [立即重新啟動]。
- 您的電腦重新啟動至 [選擇選項] 畫面之後,請選取 [疑難排解]>[進階選項]>[啟動設定]>[重新啟動]。
- 電腦重新啟動之後,您會看到選項清單。 按 4 或 F4 以安全模式啟動電腦。 如果您想要在安全模式中使用網路,請按 5 或 F5 以使用網路安全模式選項。
停止錯誤碼 0x00000133
這個停止錯誤碼是由錯誤驅動程式所造成,該驅動程式在特定情況下未完成其分配的時間範圍內的工作。 若要協助減輕此錯誤,請從系統收集記憶體傾印檔案,然後使用 Windows 偵錯程式尋找錯誤驅動程式。 如果在停止錯誤訊息中識別驅動程式,請停用驅動程式以找出問題。 請洽詢製造商以取得驅動程式更新。 檢查系統登入「事件檢視器」是否有其他錯誤訊息,這些錯誤訊息可能有助於識別造成停止錯誤 0x133 的裝置或驅動程式。 確認已安裝的任何新硬體都與已安裝的 Windows 版本相容。 例如,您可以在 Windows 10 規格取得必要硬體的相關資訊。 如果已安裝 Windows 偵錯程式,而且您可以存取公用符號,您可以將 c:windowsmemory.dmp 檔案載入偵錯程式。 然後,請參閱判斷 Windows Server 2012 上錯誤檢查 0x133 (DPC_WATCHDOG_VIOLATION) 錯誤的來源,以從記憶體傾印找出有問題的驅動程式。
停止錯誤碼 0x0000009E
這個停止錯誤表示使用者模式健康情況檢查失敗,導致無法正常關機。 Windows 會重新啟動或啟用應用程式故障轉移至其他伺服器,以還原重要服務。 叢集服務會納入偵測機制,以偵測使用者模式元件中的無回應。
這個停止錯誤通常會發生在叢集環境中,且指定的錯誤驅動程式 RHS.exe。 檢查事件記錄檔中是否有任何記憶體失敗,以識別失敗的程序。 嘗試更新事件記錄檔中所指出的元件或程序。 您應該會看到下列事件:
- 事件識別碼:4870
- 來源:Microsoft-Windows-FailoverClustering
- 使用者模式健全狀況監控偵測到系統沒有回應。 容錯移轉叢集虛擬介面卡已失去與處理程序 ID 為「%1」之處理程序的連絡,時間長達「%2」秒。 將進行復原動作。 檢閱叢集記錄以識別程序,並調查哪些項目可能會導致程序停止回應。
如需詳細資訊,請參閱 Windows Server 多節點故障轉移叢集環境中叢集節點上的「0x0000009E」停止錯誤。另請參閱下列 Microsoft 影片 發生 9E 時該怎麼辦。
此錯誤檢查是由驅動程式在升級期間停止回應所造成,導致 NDIS.sys 中的錯誤檢查 D1,這是 Microsoft 驅動程式。 IMAGE_NAME 會告訴您有錯誤的驅動程式,但由於此驅動程式是 Microsoft 驅動程式,因此無法取代或移除。 解決方法是在裝置管理員中停用網路裝置,然後再試一次升級。
在此範例中,非 Microsoft 驅動程式造成頁面錯誤,因此我們沒有此驅動程式的符號。 不過,查看 IMAGE_NAME 和/或 MODULE_NAME 表示是 WwanUsbMP.sys 造成問題。 中斷裝置連線並再試一次升級是可行的解決方案。
錯誤 (Bug) 檢查程式碼參考 (部分機器翻譯)
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/40306.html