ブルースクリーン(BSoD)が発生したとき、闇雲に対処法を試す前に原因を特定するのが最優先だ。
本記事では、原因を調べる3つの方法をステップ別に解説する。
ブルースクリーンの原因を調べる3つの方法
原因調査には段階がある。簡単な方法から順に試していくのが効率的だ。
| 方法 | 難易度 | わかること |
|---|---|---|
| イベントビューアーでログを確認 | 初心者向け | エラーの発生時刻・種類・関連ドライバー |
| エラーコード(停止コード)を読む | 中級者向け | 原因のカテゴリ(ドライバー/メモリ/ディスク等) |
| WinDbgでダンプファイルを解析 | 上級者向け | 原因となった具体的なドライバーやモジュール |
まずはイベントビューアーから始めよう。
イベントビューアーで原因を特定する
イベントビューアーは、Windowsが内部で記録しているログを閲覧するツールだ。ブルースクリーンが発生すると、その原因となったエラー情報が自動的に記録される。
イベントビューアーの開き方
Windows 11 / 10 共通の手順:
- スタートボタンを右クリック
- 「イベントビューアー」をクリック
もしくは、Win + R で「ファイル名を指定して実行」を開き、eventvwr と入力してEnterでも起動できる。
BugCheckイベントを探す
イベントビューアーが開いたら、以下の手順でブルースクリーンのログを探す。
- 左側のツリーから「Windowsログ」→「システム」を選択
- 右側の「操作」パネルから「現在のログをフィルター」をクリック
- 「イベントソース」のドロップダウンから「BugCheck」を選択して「OK」
- フィルター結果に表示されたイベントが、ブルースクリーンの記録だ
ログの読み方
BugCheckイベントを選択すると、下部に詳細情報が表示される。
- 「全般」タブ: エラーの概要が表示される
- 「詳細」タブ → 「EventData」:
param1にエラーコード(16進数)が記録されている
param1 の値が 0x0000007E のような形式で表示される。これがブルースクリーンのエラーコード(停止コード)だ。
⚠️ イベントビューアーには大量のログが記録されている。 フィルター機能を使わずにスクロールして探すのは非効率的なので、必ず「BugCheck」でフィルターをかけること。
また、BugCheckイベントの直前の時刻に記録されている「エラー」や「重大」レベルのログも確認するとよい。ブルースクリーンの直接原因となった別のエラー(ドライバーの異常終了など)が記録されていることがある。
特にイベントID 219やイベントID 10はドライバー不具合で発生する代表的なエラーだ。ブルースクリーンの前兆として記録されることが多い。
エラーコード(停止コード)から原因を切り分ける
エラーコードがわかれば、原因のカテゴリをある程度絞り込める。
エラーコードの確認方法
エラーコードは以下の2箇所で確認できる。
方法1: ブルースクリーン画面で直接確認
ブルースクリーンが表示された際、画面下部に「停止コード」として表示される。
停止コード:CRITICAL_PROCESS_DIED
または16進数形式で表示される場合もある。
停止コード:0x000000EF
方法2: イベントビューアーで後から確認
ブルースクリーン画面を見逃した場合は、前述のイベントビューアーの手順で param1 の値を確認する。
主なエラーコードと原因の対応
| エラーコード | 停止コード名 | 主な原因 |
|---|---|---|
| 0x0000000A | IRQL_NOT_LESS_OR_EQUAL | ドライバーの不具合・互換性の問題 |
| 0x000000EF | CRITICAL_PROCESS_DIED | 重要なシステムプロセスの異常終了 |
| 0x0000007A | KERNEL_DATA_INPAGE_ERROR | ディスク障害またはメモリの不具合 |
| 0x00000050 | PAGE_FAULT_IN_NONPAGED_AREA | メモリの不具合またはドライバーの問題 |
| 0x0000003B | SYSTEM_SERVICE_EXCEPTION | ドライバーまたはソフトウェアの例外エラー |
| 0x0000009F | DRIVER_POWER_STATE_FAILURE | 電源管理関連のドライバー不具合 |
| 0x0000007E | SYSTEM_THREAD_EXCEPTION_NOT_HANDLED | ドライバーが未処理の例外を発生 |
| 0x000000D1 | DRIVER_IRQL_NOT_LESS_OR_EQUAL | ドライバーが不正なメモリアドレスにアクセス |
エラーコードから原因を大きく3つに分類できる。
- ドライバーが原因: 0x0000000A / 0x0000003B / 0x0000009F / 0x000000D1 / 0x0000007E
- メモリが原因: 0x00000050 / 0x0000007A
- システムファイルが原因: 0x000000EF
***.sys のようなファイル名がエラー情報に含まれている場合、それが原因のドライバーファイルである可能性が高い。ファイル名をWebで検索すると、どのデバイスのドライバーかを特定できる。
WinDbgで詳細な原因を解析する(上級者向け)
イベントビューアーとエラーコードだけでは原因が特定できない場合、ダンプファイルを解析することでより詳細な情報を得られる。
WinDbg(Windows Debugger)はMicrosoftが提供する無料の解析ツールだ。
ダンプファイルの保存先を確認する
ブルースクリーンが発生すると、Windowsは自動的にダンプファイル(クラッシュログ)を保存する。
保存先は以下のとおり。
C:\Windows\Minidump
このフォルダに .dmp ファイルが存在すれば解析が可能である。
⚠️ ダンプファイルが生成されていない場合がある。 その場合は以下の設定を確認する。
Win + R→sysdm.cplと入力してEnter- 「詳細設定」タブ →「起動と回復」の「設定」をクリック
- 「デバッグ情報の書き込み」が「小さいメモリダンプ」または「自動メモリダンプ」になっていることを確認
- 「なし」になっている場合は「小さいメモリダンプ」に変更
WinDbgのインストール
- WinDbgの公式ページにアクセス
- 「WinDbg インストーラーをダウンロード」からインストーラーファイルを取得
- ダウンロードしたファイルを開き、画面の指示に従ってインストール
以前はMicrosoft Storeから「WinDbg Preview」として配布されていたが、現在はMicrosoft Learnのダウンロードページからの入手が推奨されている。
ダンプファイルの解析手順
- WinDbg Previewを管理者として実行する
- 「File」→「Open dump file」をクリック
C:\Windows\Minidumpにある.dmpファイルを開く- ファイルが読み込まれたら、下部のコマンド入力欄に以下を入力してEnter
!analyze -v
- 解析には数分かかる場合がある(初回はシンボルのダウンロードが必要なため)
解析結果の読み方
!analyze -v の出力は長いが、注目すべきは以下の3項目だ。
BugCheck(停止コード):
BugCheck 9F, {3, ffffe000f38c06a0, fffff803c596cad0, ffffe000f46a1010}
最初の値(9F)がエラーコードだ。
Probably caused by:
Probably caused by : hidusb.sys
WinDbgが推定した原因のドライバーまたはモジュール。最も重要な情報だが、あくまで推定であり確定ではない。
MODULE_NAME / IMAGE_NAME:
MODULE_NAME:hidusb
IMAGE_NAME:hidusb.sys
原因と推定されるモジュールの名前。このファイル名をWebで検索すれば、どのデバイスのドライバーかを特定できる。
筆者の環境では、!analyze -v の出力が数百行に及ぶことがあるが、上記の3項目だけを確認すれば原因の目星はつく。残りは高度なカーネルデバッグの知識が必要になるため、初回はこの3項目に集中するのがよい。
原因別の対処の方向性
原因が判明したら、以下の方向性で対処する。
ドライバーが原因の場合
Win + X→「デバイスマネージャー」を開く- 原因のドライバーに対応するデバイスを見つける
- 右クリック →「ドライバーの更新」
- 更新後も改善しない場合は「ドライバーを元に戻す」で以前のバージョンに戻す
メモリが原因の場合
Win + R→mdsched.exeと入力してEnter- 「今すぐ再起動して問題の有無を確認する」を選択
- Windowsメモリ診断が実行され、結果は再起動後にイベントビューアーの「Windowsログ」→「システム」に記録される
メモリ診断でエラーが検出された場合、メモリの物理的な故障が疑われる。メモリの交換を検討すること。
ディスクが原因の場合
コマンドプロンプトを管理者として開き、以下を実行する。
chkdsk /f /r
再起動時にディスクのチェックと修復が実行される。処理には30分〜数時間かかる場合がある。
システムファイルが原因の場合
コマンドプロンプトを管理者として開き、以下の順番で実行する。
sfc /scannow
SFCで修復できなかった場合は、続けて以下を実行する。
DISM /Online /Cleanup-Image /RestoreHealth
DISMはWindows Updateから正常なファイルをダウンロードして修復する。ネット接続が必要だ。
まとめ
- イベントビューアーでBugCheckイベントを探し、エラーコードを確認するのが第一歩
- エラーコードからドライバー・メモリ・ディスクのいずれが原因かを切り分ける
- WinDbgで
!analyze -vを実行すれば、原因の具体的なドライバー名まで特定できる - 原因が判明したら、ドライバー更新・メモリ診断・chkdsk・SFC/DISMで対処する
- ブルースクリーンが頻発する場合は直近にインストールしたソフトやドライバーを疑うこと
参考情報源:
– Microsoft Learn「バグ チェックの停止コード エラー データの分析」(2026年3月確認)
– Microsoft サポート「Windows の予期しない再起動とコードの停止エラーのトラブルシューティング」(2026年3月確認)
– Dell「How to Use Windows Debugger to Troubleshoot Bluescreens」(2026年3月確認)

コメント