Windows カーネル イベント ID 41 エラー "システムは正常にシャットダウンする前に再起動しました" が Windows で表示される

適用対象: Windows 10 Pro released in July 2015Windows 8 EnterpriseWindows 8 詳細

現象



Windows では、コンピューターが再起動し、次のような重大なエラー メッセージがイベント ログに記録されます。

イベント ID: 41
説明: システムは正常にシャットダウンする前に再起動しました。
[情報] アイコン
 注:
Stop エラー BugcheckCode および BugcheckParameters の値は異なる可能性があります。

詳細情報


カーネル パワー イベント ID 41 エラーは、コンピューターがシャットダウンされるか予期せず再起動したときに発生します。 Windows を搭載しているコンピューターの起動時には、コンピューターが完全にシャットダウンされたかどうかを確認するためにチェックが実行されます。 コンピューターが完全にシャットダウンされなかった場合、カーネル パワー イベント 41 メッセージが生成されます。

イベント 41 が使用されるのは、Windows が正常にシャットダウンできなくなる想定外の事態が発生したことを報告するためです。 発生した事態を明確に定義するための十分な情報が存在しない場合があります。 発生した事態を確認し、考えられる解決方法を特定するには、イベントが発生した直前の時点でコンピューターで何が行われていたかを知ることが重要です。

コンピューターへの電源が途切れたためにイベント 41 が記録された場合は、バッテリ バックアップ電源などの無停電電源装置 (UPS) の導入を検討してください。 出力の弱い電源または障害が発生した電源がこの動作の原因である場合もあります。 たとえば、この問題が始まったときに、RAM、追加デバイス、またはハード ディスクを追加した場合、電源が問題の原因であることがあります。


イベント 41 は次のような状況で発生することがあります。

状況 1: コンピューターが再起動し、イベント データに Stop エラー BugcheckCode が存在する



Stop エラーが発生した場合、追加のイベント データの一部として Stop エラー データがイベント ID 41 に書き込まれます。 コンピューターが再起動またはシャットダウンする前に Stop エラー コード情報を書き込めない例が存在する場合があります。 このような例はシナリオ 3 で説明します。

[情報] アイコン
 注:
イベントの BugcheckCode データは、より一般的な 16 進数形式ではなく、10 進数形式で書き込まれます。 そのため、10 進数値を 16 進数値に変換する必要があります。

イベント ID データの Stop エラー BugcheckCode エントリがゼロではない場合、BugcheckCode 値を 10 進数から 16 進数に変換する必要があります。 Stop エラー コードに関する多くのドキュメントでは、10 進数値ではなく、16 進数値としてコードを参照します。 これを行うには、次の手順を実行します。
  1. [スタート] ボタンをクリックし、[検索] ボックスに「calc」と入力します。
  2. [表示] メニューをクリックし、[プログラマー] をクリックします。
  3. 電卓の左側で [10 進] オプション ボタンが選択されていることを確認します。
  4. キーボードを使用して、BugcheckCode 値の 10 進数値を入力します。
  5. 電卓の左側で [16 進] オプション ボタンをクリックします。
[情報] アイコン
 注:
電卓で表示される値は 16 進コードになっています。 その他のゼロ以外の値に対して上記の手順を繰り返します。

次の例には、イベント ID 41 の Stop エラー BugcheckCode エントリが含まれています。

EventData
BugcheckCode 159
BugcheckParameter1 0x3
BugcheckParameter2 0xfffffa80029c5060
BugcheckParameter3 0xfffff8000403d518
BugcheckParameter4 0xfffffa800208c010
SleepInProgress false
PowerButtonTimestamp 0Converts to 0x9f (0x3, 0xfffffa80029c5060, 0xfffff8000403d518, 0xfffffa800208c010)


[情報] アイコン
 注:
コードの前にあるゼロは、通常は表示されません。 BugcheckCode エントリが 16 進数形式に変換されると、8 桁になります。 たとえば、0x9F は通常は 0x0000009f になり、0xA は 0x0000000A になります。 16 進数値を特定した後は、support.microsoft.com にアクセスし、変換された 16 進数コード (0x0000009f) とワード バグチェックを検索します。

詳細については、Microsoft TechNet ブログの以下の資料を参照してください。

状況 2: 電源ボタンを押したままにしてコンピューターをシャットダウンする

コンピューターの電源ボタンが少なくとも 4 秒間押されたままになる。 この操作は、イベント データに、0 (ゼロ) 以外の値を持つ PowerButtonTimestamp エントリとして記録されます。 コンピューターが再起動またはシャットダウンする前に PowerButtonTimestamp 情報を書き込めない例が存在する場合があります。 このような例はシナリオ 3 で説明します。

Windows のシャットダウン方法としては、[スタート] をクリックし、コンピューターの電源オフまたはシャットダウンするオプションを選択する方法が推奨されます。 この場合、オペレーティング システムによりすべてのファイルが閉じられ、またアプリケーションがデータをディスクに書き込み、キャッシュをフラッシュできるように、実行中のすべてのサービスとアプリケーションが通知されます。

コンピューターが正常に動作する機能を制限している問題のために、電源ボタンを押したままにする必要がある場合は、トラブルシューティングを行えるように、発生している現象に関する照会を行う必要があります。 検索で使用するキーワードとしては、"ハング"、"応答"、"黒い画面" などが考えられます。

コンピューターが応答を停止する場合がある特定の状況の詳細については、以下のサポート技術情報番号をクリックしてください。 974476 Windows 7 または Windows Server 2008 R2 で USB デバイスが USB のセレクティブ サスペンド状態から再開した場合、コンピューターが応答を停止する

トラブルシューティングのヘルプについては、Windows 7 のサポート Microsoft Web サイトにアクセスしてください。

状況 3: システムが不規則に再起動し、Stop エラー BugcheckCode が記録されない、またはコンピューターが完全に応答しなくなる (ハード ハング)

Stop エラー コードと PowerButtonTimestamp がゼロとして記録される。 たとえば、次のような状況を想定します。
  • Stop エラー BugcheckCode の値がゼロとして記録されます。 状況によっては、コンピューターが再起動またはシャットダウンする前に Stop エラー BugcheckCode 情報を書き込めない可能性があります。 この場合、値 0 の BugcheckCode が記録されます。 また、Stop エラーが発生せず、電源障害からシャットダウンが発生した場合もあります。 たとえば、ポータブル コンピューターでは、これはバッテリが取り外されたり、完全に空になったことを意味する可能性があります。 また、デスクトップ コンピューターでは、これはコンピューターの電源が取り外されたり、電源障害が発生したことを意味する可能性があります。
  • PowerButtonTimestamp がゼロと記録されます。 状況によっては、コンピューターが再起動またはシャットダウンする前に PowerButtonTimestamp 情報を書き込めない可能性があります。 この場合、値 0 が記録されます。 これは、Windows でイベントをディスクに書き込めないようにする処理が行われているときに、少なくとも 4 秒間電源ボタンが押されたままである場合に発生する可能性があります。 また、コンピューターが "ハードロック" されたために入力に応答せず、コンピューターの電源を切る必要がある場合にこのシナリオが観察される可能性もあります。 コンピューターが応答していないかどうかを確認するには、CapsLock キーを押して、キーボード上の CAPS ライトを切り替えてみます。
この状況が発生しているかどうかを確認するには、キーボードの CapsLock キーを押します。 この操作を行ったときに、CapsLock キーを押してもキーボードの CapsLock ライトが変化しない場合、コンピューターは完全に応答しなくなる (ハード ハング) ことがあります。

この状況は、通常はハードウェアの問題を示しています。 問題を特定するには、以下の項目を確認します。
  1. オーバークロック: オーバークロックを無効にして、システムが正しいスピードで実行されている場合にこの問題が発生するかどうかを確認します。
  2. メモリのチェック: メモリ チェッカーを使用してメモリを確認します。 各メモリ チップが同じスピードであり、システムで正しく構成されていることを確認します。
  3. 電源: 電源のワット量が十分であり、インストールされているデバイスを適切に処理できることを確認します。 メモリを追加した、新しいプロセッサをインストールした、追加ドライブをインストールした、または外部デバイスを追加した場合、そのようなデバイスは、現在の電源が安定して供給できるよりも多くのエネルギーを必要とすることがあります。
  4. 過熱: ハードウェアの内部温度を調べて、システムが過熱しているかどうかを確認します。
  5. 既定: システムを既定の状態にリセットし、システムが既定の構成で実行されているときに問題が発生するかどうかを確認します。

イベント ID 41 で報告されていない BugcheckCode 値が含まれる Stop エラーをコンピューターが生成していることを確認した場合、コンピューターの再起動操作を変更します。 これを行うには、次の手順を実行します。
  1. [マイ コンピュータ] を右クリックし、[プロパティ] をクリックします。
  2. [システムの詳細設定] をクリックします。
  3. [詳細設定] タブをクリックします。
  4. [起動と回復] セクションで [設定] をクリックします。
  5. [自動的に再起動する] チェック ボックスをオフにします。