プログラミングを趣味にしたい

UE4、scala、ゲーム作り、webアプリ制作とか手を出しているPC系趣味について書き溜めるブログ。現在大規模改装中

このブログは現在リブート中です。 予告なく変更、削除、停止を行う場合があります。
回収作業が終わったらこの文章は削除します

ブルースクリーンがでて、システム修復エラーで再起動が繰り返す=>BAD POOL HEADERかも?

友人が急に「(windows7の)ノートパソコンが壊れた」と持ってきまして。
曰く

  • 意味不明な壊れ方
    • ブルースクリーンに英語が出て見るのもいや
  • システム修復しても直せない
  • バッテリー切れなのに、作業中コンセントが抜けちゃったのが原因かも
    • 古いバッテリーで充電できず用をなしてなかった模様。

「パソコン使えないとすっごい困るけど、買い直す金なんてねぇよ!!!」
どうしよう

とのこと
でブルースクリーンを見ると、
badpoolheaderブルースクリーン

ふむ。3行目に大きくBAD_POOL_HEADERと。

何なんじゃいそれ?
と思って調べて直したので備忘録。

最初の症状

症状は
ブルースクリーン=>システム修復しますか?=>する=>システム修復が完了しました=>強制再起動=>同じブルースクリーンが表示=>システム修復しますか?=>以下繰り返し
でシステム修復ループ。
SSDに換装してあるせいか、ブルースクリーンの表示がすぐ切り替わる・・・・(´・ω・`)
幸い?セーフモードでは立ち上がるので、大事なデータが壊れたわけではなさそう。


まぁ、多くのエラー再起動ループの対処方法は

  • ブルースクリーンエラーでの再起動
    • 大抵エラー理由がブルースクリーンに表記されるため対応が楽
  • それ以外の目に写ってないエラーでの再起動
    • エラー理由をイベントビューワーやダンプファイルから調べないといけないので面倒。

と切り分けられて、この場合ブルースクリーンエラーなのでブルースクリーンの文字を読むことが先決なわけです。

仕方ないのでブルースクリーンでた瞬間にスマホでカメラ撮りました。
直ぐ側にカメラがあるって便利な世の中だなぁ・・・・(*´ω`*)

はい。原因ドン!
BAD_POOL_HEADER表記

問題を検出した!
パソコンが壊れないうちにシャットダウンしたんやで(`・ω・´)キリッ

BAD_POOL_HEADER

もし最初にこの画面を見たら再起動してな!
でももう一回この画面が出たら次の対処法があるで:
(以下お決まりの対処方法羅列)

はい。
つうことでBAD_POOL_HEADERだそうです。
大学時代小耳に挟んだ記憶が・・・かすかにあるなぁ。。。何やったっけ(´・ω・`)

BAD_POOL_HEADERってなんぞや

世の中にはgoogle先生がいますのでググります。

  • おっさん的諸行無常ブログ様

blog.k-kansei.com

  • DELLサポートページ

Dell PowerEdgeサーバでWindowsのブルースクリーンエラー「STOP 0x00000019: BAD_POOL_HEADER」を修復する方法

  • マイクロソフト公式のサポートページ(英語)

docs.microsoft.com

便利やなぁ・・・
つうことで、

  • メモリプール内で何らかの異常が発生し、修復できなかった際のエラー
  • 大抵C:\Windows\System32内の起動時に読み込むdriverのどれかが破損している
    • ああ、だからいらんファイルを読み込まんセーフモードでは起動するのか(´・ω・`)
  • 自動修復出来ないファイルの損傷のため、システム修復では直せない。
  • リカバリーしても変わらない場合も多い(リカバリー時に受け継ぐdriverが破損している場合)
  • (削除していいファイルならば)破損したdriverを削除して入れ直せばOK

なるほど。「なんか破損しているファイルがあるから、それを調べて、セーフモードで起動して、削除して、入れ直せ」と。
わかりやすい(・∀・)

とりあえず、セーフモードで起動して、大切なデータのバックアップをしてから作業開始
大抵、とりあえずバックアップシときゃ良いデータ

  • ドキュメントフォルダ内全て
    • 大抵はC:\Users(マイコンピュータ=>Cドライブ=>ユーザフォルダ)の中身全部
    • 人によっては、複数のハードディスクを分散している場合がある
  • ドキュメントフォルダに入っていない写真や音楽、動画、word、excelなどの個人データ
  • お気にいりやパスワード管理ファイルと言ったユーティリティデータ
  • ユーザーが登録した単語辞書ファイル

まぁ、この中でもいらんファイルいっぱいあるけど、USBに入るだけ入れたら作業開始GO(^o^)

壊れたファイルを探す

特定のダンプファイルに書いてあるらしい。
そのファイルはイベントビューアーやエラー画面に表記されるらしい
とはいえ、ここまで友人も色々やってみたみたいで、表示されるイベントがスッゴイぐちゃぐちゃしている。

めんどい(´・ω・`)

つうことで、「予期せぬエラーから回復した際のエラー表記」を見る作戦に。
再起動=>ブルースクリーン=>システム修復しますか画面で電源切り=>電源ON=>セーフモード起動で、「予期せぬエラーから回復した」イベントポップアップを出す。
予期せぬエラーから回復ポップアップ1
読み進めて
予期せぬエラーから回復したときのエラー表記
(個人情報を黒枠で消しました)

とのことで、
minidampの110317-4758-01.dmpにエラーが書かれているそうです。
ほな見てみましょう。

winDbgをつかって壊れたファイルをダンプから見つける

ココからはネットに繋がった自前の通常PCで操作しています


クラッシュdmpを開くには、Windows Debuggerが必要です。
これはwidows kitに含まれており、SDKかWDKパックに含まれるもので、とりあえず下記サイトから入手できます

  • widows公式SDK内windbgダウンロードページ

Download Debugging Tools for Windows - WinDbg | Microsoft Docs
windowsSDKwindbug


もしくは

  • windows公式WDKダウンロードページ

Download the Windows Driver Kit (WDK) | Microsoft Docs
windowsWDK


とりあえずexe開いてインストールすると、widkitがズラズラっとインストールされるのでその中のwindbgを開きます
(X86でもいいです)
windbgを開く


そうするとこんな画面
windbg画面

まず初期設定として、目当ての解析設定をネットから取ってくるためのSymbol pathを入れる。
file=>Symbol file path
symbolfilepath

pathはこれ

SRV*c:\symbols*http://msdl.microsoft.com/download/symbols

「c直下にsymbolって名前のフォルダを作成して、"http://msdl.microsoft.com/download/symbols"から落としたファイルをそこに入れて」って意味。
入れたらOKしてダウンロード(すぐ終わる)
symbolfilepath入力

ちなみに、ネットにつながってるからほぼ自動でインストールもsymbolpathもやってくれるけど、つながってないと超面倒。
自前のPCが壊れたらdmpファイルだけUBSに移して、他のPC借りて操作するほうが良いかもね。


pathを入れ終わったら、fileからcrashdmpを開く
クラッシュダンプを開く
クラッシュダンプを開く2

表示に従いアナライズを開始させるために、analyze -v をクリック。(コマンド入力してももちろんOK)
analyze_v開始

そうするとDebugging Details:が表示されるので、上から順にを見ていくと

MODULE_NAME: TMUMH

IMAGE_NAME: TMUMH.sys

とのこと。
よって、TMUMH.sysが壊れてるらしい。

  • ちなみに、アナライズせずとも上の写真の時点ですでにTMUMHが開けないとは言っている

TMUMHが開けない

壊れていたTMUMH.sysとはなんぞや

またグーグルさんに聞くと、
ウイルスバスター関連のsysファイル。削除しても再起動後に再度作成される

とのこと。
じゃあ削除しよう


壊れたノートパソコンをセーフモードから開いて、「C:\Windows\System32\drivers\TMUMH.sys」をTMUMH.sysbackにネーム変更して、電源OFFにして再起動。
(単にdeleteするともとに戻せないため、拡張子を意味のないものに変えて読み込まないようにした)

OK

無事起動した

正常起動した時のPCの写真取るの忘れてた・・・(´・ω・`)

結論

作業中コンセント抜いた?らしいので、そのときにウイルスバスターのファイルが破損したようですね。
OSの起動およびウィルスバスターの起動に問題ないことを確認して、バスターさんのアップデートを確認して返しました。
「Windowsスタートアップ時に読み込まれる、ドライバ関連の破損」ということで、下手な作業ではまず治らない面倒くさいエラーです。

兎にも角にもブルースクリーン出てるならまずちゃんと読もう!!!!!

作業や推測、問題の切り分けはその後。

関連記事

現在ブログ再起動中・・・