手動でACPIマルチプロセッサのHALをいれなおす

ネットブックのデュアルブート化の際、誤ってHALを削除してしまうという大失態を犯し、
以降通常のhal.dllでしか起動しなくなってしまいました。
Atomはマルチプロセッサとして動作するので、そのようにHALを入れなおす必要があります。
今回はその修復メモ。

##前提環境

WindowsXP Home Edition SP3
ディスクブートなOS(Knoppixなど)

##修復方法

・使用されていたHALを探す
まずセットアップのログを見て、どのようなHALがインストールされていたのかアタリをつけます。
C:\WINDOWS\repair\setup.log をhal.dllで検索すると、下記のようにヒットするはずです。

\WINDOWS\system32\hal.dll = "halmacpi.dll","2812c"
\WINDOWS\system32\ntkrnlpa.exe = "ntkrpamp.exe","1f1bd2"
\WINDOWS\system32\ntoskrnl.exe = "ntkrnlmp.exe","217c37"

私の環境では、halmacpi.dllが使われている模様でした。
続いて、ntkrnlpa.exeやntoskrnl.exeの欄も見ておきます。
マルチプロセッサだとこのファイルが変わるためです。これらのファイル名をメモっておきます。

・サービスパックのパッケージからファイルを抽出する
上記でメモしたファイルを、サービスパックのパッケージから抽出します。
SP3を改めて導入してしまった場合、下記のファイルにhalが入っている模様です。
C:\WINDOWS\Driver Cache\i386\sp3.cab
このファイルを展開し、メモしたファイルたちを探し出して適当なフォルダに入れておきます。
ファイル名はsetup.logに書かれていたように変更しておきます。
たとえば、halmacpi.dllならhal.dllのようにしておきます。

・システムファイルを置換する
マシンを再起動し、ディスクブートなOSで適当に起動します。
あとはhal.dllたちを入れ替えるだけです。C:\Windows\system32の中に入っているので、
hal.dll、ntkrnlpa.exe、ntoskrnl.exeのバックアップをとり、ファイルを置換します。


こんな感じで修復できました!よかった!

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です