天天看點

[轉載]手動生成Dump檔案并分析Dump檔案

當系統出現藍屏問題時,我們需要擷取系統所産生的DUMP檔案進行分析,如何確定在系統問題發生時,可以正确的生成所需要的DUMP檔案呢?我們需要做如下檢查:

1)、右鍵點選“我的電腦”并選擇“屬性”

2)、請轉到“進階”頁面,點選“啟動和故障恢複”中的“設定”

3)、在“系統失敗”中,確定“自動重新啟動”被勾選

4)、在“寫入調試資訊”中請選擇“完全記憶體轉儲”

然後有時候,當系統出現問題,我們也進行了以上的設定,但系統沒有自動生成Dump檔案時,我們是否還有其它的辦法進行Dump檔案的生成呢?答案是肯定的,我們可以通過手動的方法去生成Dump檔案。

     手動生成Dump檔案時,我們需要一個PS/2接口的鍵盤,并在系統中做如下設定:

1)、打開系統資料庫編輯器

2)、定位如下鍵值:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager

3)、設定GlobalFlag的值為00000400(16進制)

4)、定位如下鍵值:HKEY_LOCAL_MACHINES\System\CurrentControlSet\Services\i8042prt\Parameters

5)、新鍵一個DWORD的鍵,命名為“CrashOnCtrlScroll”

6)、設定其值為1

7)、重新開機電腦使設定生效。

      當系統問題發生時,我們使用PS/2的鍵盤觸發藍屏。當系統停在當機界面時,請按住右邊的“Ctrl”鍵,然後連續按下“Scroll Lock”鍵2次。當我們看到藍屏界面時,請等待至系統收集dump文集的過程結束之後再重新啟動機器。這個操作隻能通過本地的終端直接進行,不能通過任何的遠端服務進行操作。

       在獲得Dump檔案後,我們如何進行分析呢?

       微軟提供了強大的Dump分析工具--Debugging Tools:  http://www.microsoft.com/whdc/devtools/debugging/default.mspx,該工具可以幫助我們快速的找到問題發生的原因,并定位到是哪裡觸發的。在很多案例中,硬體驅動的過時經常會導緻藍屏問題的發生,用windbg就可以很快定位到是哪個驅動造成。

       這裡也有一些祥細的參考:http://www.solsem.com/lab-setup.html