XP SP 3で複数のプロセッサーを有効にする方法


13

3年前のLenovo n100ラップトップを持っています。付属のオリジナルのWindows XPとUbuntuをデュアルブートします。タスクマネージャーでのXPのインストールでは1 CPUしか表示されないことがわかりました。

デバイスマネージャには2つのプロセッサ(コアデュオT2300)が表示されますが、そのうちの1つは使用されていないようです。グーグルは、これを有効にするためにSP2に特定のホットフィックスが必要であることを示しましたが、SP3には何も表示されず、上記のホットフィックスをダウンロードすると、新しいソリューションがあると言ってインストールを拒否します。

(わかりやすくするためにチェックしましたが、タスクマネージャーがすべてのCPUを同じグラフに表示するわけではありません。)

誰もこれを修正する方法を知っていますか?

回答:


5

msconfigユーティリティを実行し、BOOT.INIタブに移動して、[詳細設定]をクリックします。

すべてのプロセッサを使用するには、NUMPROCチェックボックスをオフにする必要があります。
テストとして、それを確認し、ドロップダウンリストに含まれるものを確認してください。
値1のみが含まれている場合は、何かが本当に間違っています。

画像

注:この回答は2009年のものです。古い時代を尊重して扱ってください。
特に:ダウン投票はしないでください。


これはチェックされていませんが、チェックすると2つのCPUが表示されます。他のアイデアはありますか?
アビックス2009

1
@abyx:/NUMPROCボックスをチェックして、特に2 CPUオプションを選択してみてください。リブート。それは両方のコアの使用を許可しますか?
いんちきキホーテ2009

@〜quack-それはトリックをしました!
abyx

それから質問は、それが必要ではないので明示的に設定する必要がある理由です。多分それはドライバーの問題ですか?デバイスマネージャーComputerエントリが間違っている可能性がありますか?
Synetech

@Synetech inc .: 2か月前の投稿から詳細情報が得られるとは思わない。
-harrymc

23

これは私たちのために働いています(from:http : //www.pcreview.co.uk/forums/change-hal-out-reinstall-t2562052.htmlから):

  1. ドライバー署名を無効にします(マイコンピューター>プロパティ>ハードウェア...)

  2. このコマンドラインを正確に実行します。

    rundll32 syssetup,SetupInfObjectInstallAction ACPIAPIC_MP_HAL 128 %windir%\inf\hal.inf
    

1
2回の再起動が必要で、すべてが魅力のように機能します-ありがとう!!!
マティアスHryniszak

これは、バックアップから物理マシンを視覚化したときに機能しました。
ジェフF.

これは古いXP VMで機能し、ドライバー署名を無効にする必要もありませんでした!
ジェフアトウッド

これが最良の答えです。
イゴールレヴィッキ

8

これは私のために働いた(VirtualBox XP Pro)...

1)c:\ windows(インストールパス)に移動し、sp3.cabを検索します。このcabファイルを7-zipで開きます(ただし、エクスプローラーがsourceforgeから7-zipをダウンロードできない場合、エクスプローラーはファイルをネイティブで開くことができます)。

2)a) Extract halmacpi.dll to c:\windows\system32

b) Extract ntkrnlmp.exe to c:\windows\system32

3)c:\ boot.iniを編集します

注:Read-only変更を保存するには、プロパティのチェックを外す必要があります。完了したら、読み取り専用に戻します。

次のような行をコピーします。

multi(0)disk(0)rdisk(0)partition(1)\ WINDOWS = "Microsoft Windows XP Professional" / fastdetect / NoExecute = OptIn

コピーしたエントリを次のようにします。

multi(0)disk(0)rdisk(0)partition(1)\ WINDOWS = "Microsoft Windows XP MultiCore" / fastdetect / NoExecute = OptIn /kernel=ntkrnlmp.exe /hal=halmacpi.dll

これで、シングルコアまたはマルチコアを利用するデュアルブートオプションがあります(これが成功した場合、TaskManagerは2つのCPUグラフを表示します)。マルチコアが起動して正常に動作する場合、boot.iniからシングルコアエントリを削除できます。


私は興味がありますが、これは正確にどのように機能しますか?追加する/kernel=ntkrnlmp.exe /hal=halmacpi.dllと、すべてのCPUコアが強制的に表示されますか?ところでスーパーユーザーへようこそ:)
nhinkle

私の理解では、これによりWindowsはマルチコアカーネルntkrnlmp.exeとハードウェアアブストラクションレイヤーhalmacpi.dllを使用するように強制されます。システムがシングルコアカーネルとHALを使用してインストールされた可能性があります。
ジェームズ

これに+1!これはとても便利だと思いました。boot.iniの編集時にミスを犯し、VMが使用できなくなった(ホストOSを使用してboot.iniを編集して回復する必要がある)ので、慎重に編集してください。
ユージェニオミロ14年

コメントパーティーに遅れましたが、はい、バックアップは常に良いアイデアです!コピーするboot.ini.origか、同様のものにコピーしてください。しかし、はい、ホースを使用する場合は、何らかの回復ツールが必要になります。Linux Live CDイメージはうまく機能します。VirtualBoxでCDデバイスとしてマウントするだけです。
ジェームズ

起動時に次のエラーメッセージが表示される場合:Windows could not start because the following file is missing or corrupt: <Windows root>\system32\hal.dll. Please re-install a copy of the above file.......というエラーが表示されていても、フォルダにファイルとファイルをhal.dllコピーするのを忘れていました。これらはフォルダからコピーすることもできます。halmacpi.dllntkrnlmp.exeC:\Windows\System32C:\Windows\ServicePackFiles\i386
AlwaysLearning

4

別の可能性があります。

XPのユニプロセッサバージョンまたはマルチプロセッサバージョンをインストールしましたか?

ユニプロセッサシステムにはカーネルとしてntoskrnl.exeがあり、マルチプロセッサシステムにはC:\ WINDOWS \ system32にntkrnlmp.exeがあります。

また、デバイスマネージャーで、[コンピューター]を展開します。「ACPI Multiprocessor PC」が表示されます。「Advanced Configuration and Power Interface(ACPI)PC」が表示されている場合、これは間違っています。

何が見えますか?
上記の2つのチェックのいずれかが間違っている場合、XPを再インストールする必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.