Blue Scree-ブルースクリーンのトラブルシューティング

極稀にブルースクリーントラブルに悩まされることがあります。原因の多くは、ドライバやソフトの不具合、またはメモリの物理的な故障です。ではその原因を特定するためにはどうすればよいか?ですね。
イベントログを確認
発生時刻の前後にログに記載が残っていれば、そこから特定できますが、多くのケースでは残りません。
Minidumpを確認
BluseScreeが発生した時に作成される情報で、以下のフォルダに保存されます。
C:\Windows\Minidump
このダンプを解析し、原因を特定します。

 WinDbg – Micorost提供 WDK と WinDbg のダウンロード

 

WinDbgのインストール

上記のリンクにアクセスし、下図と同じスタンドアロン版をダウンロードし、インストーラーを実行します。

WinDbg_DL

インストールは画面の指示に従い行えば、問題なく完了するはずですが、デバッグツールだけをインストールされたい場合は、下図のようにDebugging Tools for Windowsだけを選択し、インストールします。

WinDbg_install

2種類のツールがインストールされますので、OSに合わせて実行してください。

  • Debuggin Tools for Windows(x64)
  • Debuggin Tools for Windows(x86)

Windows デバッグ ツールをインストールした後に、WinDbg でシンボル パスを入力します。
File > Symbol Path

WinDbg_symbolFilePath

ウィンドウに次のパスを入力します。

srv*c:\cache*http://msdl.microsoft.com/download/symbols;

WinDbg_symbolFilePath2

クラッシュダンプをFile>Open Crush Dump を開き選択します。

WinDbg_symbolFilePath3

クラッシュダンプファイルを読み込むと自動で解析が始まります。少し待ちましょう

WinDbg_analysis

Window解析結果の下部にある”Use !analyze -v to get detailed debugging information.”をクリックすると詳細な情報がわかります。下部にサンプルとして実際の解析結果を表示します。

この情報を元に原因を特定していきます。

csrss.exeが怪しそうです。

また、DEFAULT_BUCKET_ID: WIN7_DRIVER_FAULTBUGCHECK_STR: 0xF4_58c23c0にもヒントがあります。このバグチェックコードを元に、MicrosoftのBug Checksから検索しますが、根本的な解決策にはならないので、Google先生にこのあたりの情報を使い検索します。

今回は、Videoカードのドライバが怪しそうです。

 

Microsoft (R) Windows Debugger Version 6.3.9600.17298 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.
Loading Dump File [C:\Users\xxxxx\Desktop\xxxxxx\xxxxxx-10046-01.dmp]
Mini Kernel Dump File: Only registers and stack trace are available
************* Symbol Path validation summary **************
Response Time (ms) Location
Deferred srv*c:\cache*http://msdl.microsoft.com/download/symbols
Symbol search path is: srv*c:\cache*http://msdl.microsoft.com/download/symbols
Executable search path is:
Windows 7 Kernel Version 7601 (Service Pack 1) MP (4 procs) Free x64
Product: WinNt, suite: TerminalServer SingleUserTS
Built by: 7601.22616.amd64fre.win7sp1_ldr.140303-2307
Machine Name:
Kernel base = 0xfffff800`02e5a000 PsLoadedModuleList = 0xfffff800`0309e890
Debug session time: Fri Nov 21 12:31:10.822 2014 (UTC + 9:00)
System Uptime: 0 days 1:21:20.042
Loading Kernel Symbols
..Press ctrl-c (cdb, kd, ntsd) or ctrl-break (windbg) to abort symbol loads that take too long.
Run !sym noisy before .reload to track down problems loading symbols……………………………………………………..
……………………………………………………….
…………………………………………..
Loading User Symbols
Loading unloaded module list
………….
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************Use !analyze -v to get detailed debugging information.BugCheck F4, {3, fffffa800521db30, fffffa800521de10, fffff800031d59b0}—– ETW minidump data unavailable—–
Probably caused by : csrss.exeFollowup: MachineOwner
———

0: kd> !analyze -v
*******************************************************************************
* *
* Bugcheck Analysis *
* *
*******************************************************************************

CRITICAL_OBJECT_TERMINATION (f4)
A process or thread crucial to system operation has unexpectedly exited or been
terminated.
Several processes and threads are necessary for the operation of the
system; when they are terminated (for any reason), the system can no
longer function.
Arguments:
Arg1: 0000000000000003, Process
Arg2: fffffa800521db30, Terminating object
Arg3: fffffa800521de10, Process image file name
Arg4: fffff800031d59b0, Explanatory message (ascii)

Debugging Details:
——————

—– ETW minidump data unavailable—–

KERNEL_LOG_FAILING_PROCESS: <NULL>

PROCESS_OBJECT: fffffa800521db30

IMAGE_NAME: csrss.exe

DEBUG_FLR_IMAGE_TIMESTAMP: 0

MODULE_NAME: csrss

FAULTING_MODULE: 0000000000000000

PROCESS_NAME: csrss.exe

EXCEPTION_CODE: (Win32) 0x58c23c0 (93070272) – <Unable to get error code text>

BUGCHECK_STR: 0xF4_58c23c0

CUSTOMER_CRASH_COUNT: 1

DEFAULT_BUCKET_ID: WIN7_DRIVER_FAULT

CURRENT_IRQL: 0

ANALYSIS_VERSION: 6.3.9600.17298 (debuggers(dbg).141024-1500) amd64fre

STACK_TEXT:
fffff880`02611e48 fffff800`0325ee92 : 00000000`000000f4 00000000`00000003 fffffa80`0521db30 fffffa80`0521de10 : nt!KeBugCheckEx
fffff880`02611e50 fffff800`0320b280 : 00000000`00000001 fffffa80`058c23c0 fffffa80`0521db30 00000000`022c0d00 : nt!PspCatchCriticalBreak+0x92
fffff880`02611e90 fffff800`03189944 : 00000000`00000001 ffffffff`ffffffff fffffa80`0521db30 0000007f`00000008 : nt! ?? ::NNGAKEGL::`string’+0x16ca6
fffff880`02611ee0 fffff800`02ecd7d3 : ffffffff`ffffffff fffffa80`058c23c0 fffffa80`0521db30 00000000`022c0d80 : nt!NtTerminateProcess+0x284
fffff880`02611f50 fffff800`02ec9d90 : fffff800`02f1957f fffff880`02612a38 fffff880`02612790 fffff880`02612ae0 : nt!KiSystemServiceCopyEnd+0x13
fffff880`026120e8 fffff800`02f1957f : fffff880`02612a38 fffff880`02612790 fffff880`02612ae0 00000000`7702f274 : nt!KiServiceLinkage
fffff880`026120f0 fffff800`02ecdbc2 : fffff880`02612a38 00000000`02300000 fffff880`02612ae0 00000000`770537e8 : nt! ?? ::FNODOBFM::`string’+0x483f4
fffff880`02612900 fffff800`02ecc73a : 00000000`00000000 00000000`7702f277 00000000`00000001 00000000`02300000 : nt!KiExceptionDispatch+0xc2
fffff880`02612ae0 00000000`76f288d6 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : nt!KiPageFault+0x23a
00000000`022c14a0 00000000`00000000 : 00000000`00000000 00000000`00000000 00000000`00000000 00000000`00000000 : 0x76f288d6
STACK_COMMAND: kb

FOLLOWUP_NAME: MachineOwner

IMAGE_VERSION:

FAILURE_BUCKET_ID: X64_0xF4_58c23c0_IMAGE_csrss.exe

BUCKET_ID: X64_0xF4_58c23c0_IMAGE_csrss.exe

ANALYSIS_SOURCE: KM

FAILURE_ID_HASH_STRING: km:x64_0xf4_58c23c0_image_csrss.exe

FAILURE_ID_HASH: {83ea6fd6-b8b7-5da6-0cd4-7060884e967a}

Followup: MachineOwner
———

0: kd> lmvm csrss
start end module name