WinDbg 蓝屏分析 Windows Dump 文件教程
修電腦最煩的不是別的,最煩的是 Random 藍屏錯誤。因為你也不知道什么時候就藍屏了。這種隨機性還有無錯誤報告的問題最讓人頭疼。不過其實 Windows 每次藍屏都會在系統目錄下生成一個 Dump File 。也就是所謂分析報告。不過想要看懂這個報告,就需要一些技巧了。
一般來說,讀取 Mini Dump 文件,只需要用 Nirsoft 的?BlueScreenView?即可輕松查看。不過這個軟件只是輕量級的分析工具。只是給你提供崩潰時間,崩潰代碼,引起崩潰的文件,崩潰內存地址等等。需要自己進行手動分析,對于很多小白來說,這就是天書啊。
好吧,那么有沒有幫你分析這些天書代碼的工具呢?有!那就是 WinDBG 這個 Windows 自己開發的 Debug 工具 – WinDbg。
一、什么是 WinDbg ?
WinDbg是在windows平臺下,強大的用戶態和內核態調試工具。它能夠通過dmp文件輕松的定位到問題根源,可用于分析藍屏、程序崩潰(IE崩潰)原因,是我們日常工作中必不可少的一個有力工具,學會使用它,將有效提升我們的問題解決效率和準確率。
二、WinDbg 下載地址
藍屏Dump分析工具 x86位版本下載:【微軟官方安裝版】
藍屏Dump分析工具 x64位版本下載:【微軟官方安裝版】
如果你用的是 Windows 10 的話,建議下載官方 SDK
下載鏈接
安裝選項很多,只需要選擇 Debugging Tool For Windows 即可。如圖:
三、如何使用 WinDbg
首先,我們需要設置符號表,符號表是WinDbg關鍵的“數據庫”,里邊儲存著各種藍屏代碼的分析結果。如果沒有它,WinDbg基本上就是個廢物,無法分析出更多問題原因。
1、運行WinDbg軟件,然后按【Ctrl+S】彈出符號表設置窗
2、將符號表地址:SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols 粘貼在輸入框中,點擊確定即可。
注:紅色字體為符號表本地存儲路徑,建議固定路徑,可避免符號表重復下載。
當你拿到一個dmp文件后,可使用【Ctrl+D】快捷鍵來打開一個dmp文件,或者點擊WinDbg界面上的【File=>Open Crash Dump…】按鈕,來打開一個dmp文件。第一次打開dmp文件時,可能會收到如下提示,出現這個提示時,勾選“Don’t ask again in this WinDbg session”,然后點否即可。
當你想打開第二個dmp文件時,可能因為上一個分析記錄未清除,導致無法直接分析下一個dmp文件,此時你可以使用快捷鍵【Shift+F5】來關閉上一個dmp分析記錄。
至此,簡單的WinDbg使用你已經學會了!
五、通過簡單的幾個步驟學會分析一些dmp文件。
1. 隨便打開一個 Dump 文件,然后我們可以看到下邊有個藍色的 Analyze 的鏈接,這個鏈接就是分析藍屏的工具鏈接
然后你可以看到這些信息:
!analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************
WHEA_UNCORRECTABLE_ERROR (124)
A fatal hardware error has occurred. Parameter 1 identifies the type of error
source that reported the error. Parameter 2 holds the address of the
WHEA_ERROR_RECORD structure that describes the error conditon.
Arguments:
Arg1: 0000000000000000, Machine Check Exception
Arg2: ffff8305fd0dd028, Address of the WHEA_ERROR_RECORD structure.
Arg3: 00000000b6000004, High order 32-bits of the MCi_STATUS value.
Arg4: 000000000001010a, Low order 32-bits of the MCi_STATUS value.
Debugging Details:
——————
DUMP_CLASS: 1
DUMP_QUALIFIER: 400
BUILD_VERSION_STRING: 10.0.15063.674 (WinBuild.160101.0800)
SYSTEM_MANUFACTURER: Acer
SYSTEM_PRODUCT_NAME: Aspire ES1-711
SYSTEM_SKU: Aspire ES1-711_0843_1_08
SYSTEM_VERSION: V1.08
BIOS_VENDOR: Insyde Corp.
BIOS_VERSION: V1.08
BIOS_DATE: 10/28/2015
BASEBOARD_MANUFACTURER: Acer
BASEBOARD_PRODUCT: EA70_BM
BASEBOARD_VERSION: Type2 – A01 Board Version
DUMP_TYPE: 2
BUGCHECK_P1: 0
BUGCHECK_P2: ffff8305fd0dd028
BUGCHECK_P3: b6000004
BUGCHECK_P4: 1010a
BUGCHECK_STR: 0x124_GenuineIntel
CPU_COUNT: 4
CPU_MHZ: 877
CPU_VENDOR: GenuineIntel
CPU_FAMILY: 6
CPU_MODEL: 37
CPU_STEPPING: 8
CPU_MICROCODE: 0,0,0,0 (F,M,S,R) SIG: 829’00000000 (cache) 0’00000000 (init)
CUSTOMER_CRASH_COUNT: 1
DEFAULT_BUCKET_ID: WIN8_DRIVER_FAULT
CURRENT_IRQL: 0
ANALYSIS_SESSION_HOST: SERVICE01
ANALYSIS_SESSION_TIME: 10-17-2017 15:18:05.0073
ANALYSIS_VERSION: 10.0.16299.15 amd64fre
STACK_TEXT:
fffff801`aa64ca38 fffff801`a824e5cf : 00000000`00000124 00000000`00000000 ffff8305`fd0dd028 00000000`b6000004 : nt!KeBugCheckEx
fffff801`aa64ca40 fffff801`a84ed2fd : ffff8305`fd0dd028 ffff8305`fc5ac790 ffff8305`fc5ac790 ffff8305`fc5ac790 : hal!HalBugCheckSystem+0xcf
fffff801`aa64ca80 fffff801`a824eaf8 : 00000000`00000728 00000000`00000000 00000000`00000000 00000000`00000000 : nt!WheaReportHwError+0x25d
fffff801`aa64cae0 fffff801`a824ee58 : 00000000`00000010 00000000`00000000 fffff801`aa64cc88 00000000`00000000 : hal!HalpMcaReportError+0x50
fffff801`aa64cc30 fffff801`a824ed46 : ffff8305`fbea5650 00000000`00000001 00000000`00000000 00000000`00000000 : hal!HalpMceHandlerCore+0xe0
fffff801`aa64cc80 fffff801`a824ef8a : 00000000`00000004 00000000`00000001 00000000`00000000 00000000`00000000 : hal!HalpMceHandler+0xda
fffff801`aa64ccc0 fffff801`a824f120 : ffff8305`fbea5650 fffff801`aa64cef0 00000000`00000000 00000000`00000000 : hal!HalpMceHandlerWithRendezvous+0xce
fffff801`aa64ccf0 fffff801`a84076bb : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : hal!HalHandleMcheck+0x40
fffff801`aa64cd20 fffff801`a840742c : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KxMcheckAbort+0x7b
fffff801`aa64ce60 fffff801`a83881d3 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiMcheckAbort+0x1ac
ffffa001`1208c898 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!ST_STORE::ST_HASH_ENTRY_COMPARATOR::Compare+0x33
THREAD_SHA1_HASH_MOD_FUNC: 1229599e20a8e52284b639d82c0e4b08e5ebac03
THREAD_SHA1_HASH_MOD_FUNC_OFFSET: 947846f6d18d00900d62ba102bf881c74cd600ba
THREAD_SHA1_HASH_MOD: bba6629b38ee48af58586b1285e003efb528212b
FOLLOWUP_NAME: MachineOwner
MODULE_NAME: GenuineIntel
IMAGE_NAME: GenuineIntel
DEBUG_FLR_IMAGE_TIMESTAMP: 0
STACK_COMMAND: .thread ; .cxr ; kb
FAILURE_BUCKET_ID: 0x124_GenuineIntel_PROCESSOR_CACHE
BUCKET_ID: 0x124_GenuineIntel_PROCESSOR_CACHE
PRIMARY_PROBLEM_CLASS: 0x124_GenuineIntel_PROCESSOR_CACHE
TARGET_TIME: 2017-10-17T16:11:46.000Z
OSBUILD: 15063
OSSERVICEPACK: 674
SERVICEPACK_NUMBER: 0
OS_REVISION: 0
SUITE_MASK: 784
PRODUCT_TYPE: 1
OSPLATFORM_TYPE: x64
OSNAME: Windows 10
OSEDITION: Windows 10 WinNt TerminalServer SingleUserTS Personal
OS_LOCALE:
USER_LCID: 0
OSBUILD_TIMESTAMP: 2017-09-29 03:20:26
BUILDDATESTAMP_STR: 160101.0800
BUILDLAB_STR: WinBuild
BUILDOSVER_STR: 10.0.15063.674
ANALYSIS_SESSION_ELAPSED_TIME: 14b0
ANALYSIS_SOURCE: KM
FAILURE_ID_HASH_STRING: km:0x124_genuineintel_processor_cache
FAILURE_ID_HASH: {4c8f3f5e-1af5-ed8b-df14-d42663b1dfa7}
Followup: MachineOwner
最上方的一部分是電腦的基本信息,這部分信息基本沒什么用,然后是藍屏錯誤的偏移地址。如果你不懂匯編什么的,這部分對你也沒什么用。最重要的部分是這里:
從這里可以看出來,出錯的模塊:MODULE_NAME 是 GenuineIntel,另外錯誤信息是 0x124_GenuineIntel_PROCESSOR_CACHE ,也就是說 Intel CPU 的緩存出現了錯誤。基本上可以判定是硬件問題。換個 CPU 試試修理即可。
附:設置 Windows Dump 文件
一般 Windows 默認是直接把所有的信息保存在 Windows 文件夾下的 MEMORY.DMP 文件。不過經常這個文件不存在,或者說你只需要一個 Mini Dump 文件就夠了。那么你可以這樣設置:
1. Win + Pause ,進入系統信息界面
2. System Protection
3. Advanced – Setting
4. 將下拉菜單中的 Dump 文件設置改為 Mini Dump
5. 然后再次藍屏后,Dump 文件會保存在 Windows\Minidump 這個文件夾中。
PS:
另外一些常見的藍屏錯誤還有 Driver、顯卡 之類的錯誤。多積累經驗就能簡單判定了。另外也可以將分析的文件遞交給 Microsoft,或者去一些論壇發帖。用下搜索引擎,基本上都可以找到答案的。
ref:
http://support.icafe8.com/technologynews/focus/932.html
http://kuang1984tw.pixnet.net/blog/post/164754820-%E3%80%90%E8%97%8D%E5%B1%8F%E5%88%86%E6%9E%90%E3%80%91debugging-tools-for-windows-10—%E8%AE%93%E4%BD%A0%E5%BE%9E
轉自:
WinDbg 藍屏分析 Windows Dump 文件教程 - 佛利斯博客
總結
以上是生活随笔為你收集整理的WinDbg 蓝屏分析 Windows Dump 文件教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Java core 包_feilong-
- 下一篇: wepack环境配置1之node的安装