バグ チェック 0xEF: CRITICAL_PROCESS_DIED

CRITICAL_PROCESS_DIED バグ チェックの値は 0x000000EF です。 このチェックは、重要なシステム プロセスが終了したことを示します。 重要なプロセスは、システムが終了した場合にバグ チェックをシステムに強制します。 このチェックは、プロセスの状態が破損するか損傷したときに発生します。 破損や損傷が発生すると、これらのプロセスは Windows の操作に不可欠であるため、オペレーティング システムの整合性が問題になった場合システム バグ チェックが発生します。

Windows の重要な組み込みシステム サービスには、csrss.exe、wininit.exe、logonui.exe、smss.exe、services.exe、conhost.exe、winlogon.exe が含まれます。

開発者は、サービスを作成し、その回復オプションを [コンピューターの再起動] に設定することもできます。 詳しくは、「サービスが失敗したときに実行される復旧アクションを設定する」をご覧ください。

重要

このトピックはプログラマー向けです。 コンピューターを使用中に、ブルー スクリーン エラーが表示された場合は、「ブルー スクリーン エラーのトラブルシューティング」を参照してください。

CRITICAL_PROCESS_DIED パラメーター

パラメーター 説明
1 プロセス オブジェクト
2 0 の場合、プロセスが終了します。 1 の場合、スレッドが終了します。
3 予約されています。
4 予約されています。

解決方法

通常、この問題の原因を特定するには、デバッガーを使用して追加情報を収集する必要があります。 複数のダンプ ファイルを調べ、この停止コードの特性が似ているかどうかを確認する必要があります (停止コードが表示されたときに実行されるコードなど)。

詳しくは、「Windows デバッガー (WinDbg) を使用したクラッシュ ダンプ分析」、「!analyze 拡張および !analyze の使用」をご覧ください。

多くの場合、システム バグ チェックの前にユーザー ダンプも作成されます。 通常、ユーザー ダンプがある場合は、まずそのダンプを調べて、問題の根本原因を見つける必要があります。 ページングされたデータや欠落しているデータなど、カーネル ダンプからのユーザー モード コードのデバッグには制限があります。 詳しくは、「ユーザー モード ダンプ ファイル」をご覧ください。

イベント ログを使用し、この停止コードに至るまでに発生するエラーがあるかどうかを確認することを検討してください。 存在する場合、これらのエラーを使用して、特定のサービスまたは調査対象の他のコードを調べることができます。

問題のコードに関する情報が使用可能になったら、このコードを実行する前に、関連するコードにブレークポイントを設定します。 そこから、コード フローの制御に使用される重要な変数の値を確認して、コードを単一ステップ進みます。 コードのこの領域を慎重に調べ、誤った仮定やその他の間違いを探します。

バグ チェックの 2 番目のパラメーターを使用し、停止しているプロセスまたはスレッドがバグ チェックの原因となったかどうかを判断します。

プロセスの場合、!process コマンドを使用し、異常な動作を探すために障害発生前後のプロセスに関する情報を表示します。 プロセス エクスプローラー ユーティリティは、親子関係と実行中のプロセスに関する一般的な情報を収集できます。

スレッドの場合、!thread コマンドを 使用して、スレッドに関する情報を表示することを検討してください。 カーネル モードのスレッドの詳細については、「コンテキストの変更」を参照してください。

スレッド、プロセスに関する一般的な情報、および wininit や csrss などの Windows で保護された重要なコードに関するその他の詳細情報については、Pavel Yosifovich、Mark E. Russinovich、David A. Solomon、Alex Ionescu による「Windows Internals」を参照してください。

一般的なトラブルシューティングのヒント

デバッガーを操作できない場合、次の一般的なトラブルシューティングのヒントが役立つ場合があります。

  • 最近システムにハードウェアを追加した場合は、そのハードウェアを削除または交換してみてください。 さらに、利用可能なパッチがないか、製造元に確認することもできます。

  • 新しいデバイス ドライバーまたはシステム サービスが最近追加された場合は、それらを削除または更新してみてください。 新しいバグ チェック コードが表示される原因となったシステムの変更内容を確認します。

  • イベント ビューアーのシステム ログを確認して、エラーの原因となっているデバイスまたはドライバーを特定するのに役立つ可能性があるその他のエラー メッセージを確認します。 詳しくは、イベント ビューアーの使用に関するページをご覧ください。 ブルー スクリーンと同じ時間帯に発生した重大なエラーをシステム ログで探します。

  • 製造元に問い合わせて、更新されたシステム BIOS またはファームウェアが使用可能かどうかを確認します。

  • システムの製造元から提供されているハードウェア診断を実行してみます。

  • インストールされた新しいハードウェアが、インストールされている Windows のバージョンと互換性があることを確認します。 たとえば、Windows 10 の仕様で必要なハードウェアに関する情報を取得できます。

  • ウイルス検出プログラムを実行します。 ウイルスは、Windows 用にフォーマットされたあらゆる種類のハード ディスクに感染する可能性があります。 ディスクの破損が発生すると、システム バグ チェック コードが生成される可能性があります。 ウイルス検出プログラムによって感染のマスター ブート レコードがチェックされていることを確認します。

  • システム ファイル チェッカー ツールを使用して不足または破損しているシステム ファイルを修復します。 システム ファイル チェッカーは、Windows システム ファイルの破損をスキャンし、破損したファイルを復元できる Windows のユーティリティです。 次のコマンドを使用して、システム ファイル チェッカー ツール (SFC.exe) を実行します。

    SFC /scannow
    

    詳細については、「システム ファイル チェッカー ツールを使用して不足または破損しているシステム ファイルを修復する」を参照してください。

  • デバイス マネージャーで、感嘆符 (!) が付いているデバイスがないかどうかを確認します。 障害が発生しているドライバーのプロパティに表示されたイベント ログを確認します。 関連するドライバーを更新してみます。

関連項目