Як увімкнути декілька процесорів на XP SP 3?


13

У мене є ноутбук Lenovo n100, якому 3 роки. Він подвійний завантажує оригінальний Windows XP, який поставляється разом із ним та Ubuntu, і я щойно помітив, що установка XP в диспетчері завдань показує лише 1 процесор.

Диспетчер пристроїв показує 2 процесори (це основний дует T2300), але схоже, що один з них не використовується. Гуглінг показав, що SP2 потребує специфічного гарячого виправлення, щоб увімкнути це, але на SP3 нічого не з'являється, і коли я завантажив вказане гаряче виправлення, він відмовляється встановлювати, кажучи, що у мене є новіше рішення.

(Просто для того, щоб зрозуміти, я перевірив, і це не те, що диспетчер завдань показує всі процесори в одному графіку.)

Хтось знає, як це виправити?

Відповіді:


5

Запустіть утиліту msconfig, перейдіть на вкладку BOOT.INI і натисніть кнопку Додатково.

Потрібно зняти прапорець NUMPROC для використання всіх процесорів.
Як тест, спробуйте перевірити його та побачити, що містить випадаючий список.
Якщо воно містить лише значення 1, то щось справді не так.

зображення

ПРИМІТКА: Ця відповідь є з 2009 року, будь ласка, ставитесь до неї з повагою до старості.
Особливо: Немає жодної трансляції, будь ласка.


Це не перевірено, і якщо перевірити, чи відображаються 2 процесора. Будь-які інші ідеї?
abyx

1
@abyx: спробуйте встановити /NUMPROCпрапорець і конкретно вибрати параметр 2 процесора. перезавантажити. чи дозволяє це використовувати обидва ядра?
шарлатаний кіхот

@ ~ quack - це зробило трюк!
абікс

Тоді питання полягає в тому, чому це потрібно чітко встановити, оскільки цього не потрібно. Можливо, це питання з водієм? Може бути, Computerзапис у Диспетчері пристроїв невірний?
Synetech

@Synetech inc .: Я не думаю, що ви отримаєте більше інформації з 2-місячного повідомлення.
harrymc

23

Це спрацювало для нас (від: 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 перезавантаження, і все працює як шарм - дякую !!!
Маттіас Гринішак

Це спрацювало, коли я візуалізував фізичну машину з наших резервних копій.
Джефф Ф.

це працювало на старому XP VM, мені також не потрібно було відключати підписання драйверів!
Джефф Етвуд

Це найкраща відповідь.
Ігор Левицький

8

Це працювало для мене (VirtualBox XP Pro) ...

1) Зайдіть у c: \ windows (ваш шлях встановлення), знайдіть sp3.cab. Відкрийте цей файл кабіни за допомогою 7-zip (хоча Explorer може мати можливість відкрити файл, якщо він не зможе завантажити 7-zip з sourceforge).

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

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

3) Редагуйте c: \ boot.ini

Примітка: Вам потрібно зняти прапорець, Read-onlyщоб зберегти зміни. Поверніться до завершення лише для читання.

Скопіюйте такий рядок:

мульти (0) диск (0) rdisk (0) розділ (1) \ WINDOWS = "Microsoft Windows XP Professional" / fastdetect / NoExecute = OptIn

Зробіть скопійований запис таким чином:

мульти (0) диск (0) rdisk (0) розділ (1) \ WINDOWS = "Microsoft Windows XP MultiCore" / fastdetect / NoExecute = OptIn /kernel=ntkrnlmp.exe /hal=halmacpi.dll

Тепер у вас є можливість подвійного завантаження для використання одиночного або багатоядерного (TaskManager покаже два графіки процесора, якщо це було успішним). Якщо багатоядерні черевики працюють належним чином, ви можете видалити єдиний основний запис із boot.ini.


Мені цікаво, як саме це працює? Що /kernel=ntkrnlmp.exe /hal=halmacpi.dllробити додавання , щоб змусити його показувати всі ядра процесора? Ласкаво просимо до Супер Користувача, до речі :)
nhinkle

Як я розумію, це змушує Windows використовувати багатоядерне ядро: ntkrnlmp.exe та апаратний шар абстракції: halmacpi.dll. Можливо, система була встановлена ​​за допомогою одноядерного ядра та HAL.
Джеймс

+1 для цього! Я вважаю це дуже корисним. Треба лише згадати, що я помилився під час редагування boot.ini, і мій VM став непридатним (потрібно було редагувати boot.ini, використовуючи хост-операційну систему для відновлення), тому ретельно редагуйте!
Євгеніо Міро

Пізно до партії коментарів, але так, резервне копіювання - це завжди хороша ідея! Просто скопіюйте його boot.ini.origчи щось подібне. Але так, якщо вам потрібно шланг, вам знадобиться якийсь інструмент відновлення. Зображення з компакт-диска в Linux буде добре працювати, просто встановіть його як свій пристрій CD у VirtualBox.
Джеймс

Якщо під час завантаження ви бачите таке повідомлення про помилку: 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.dllта ntkrnlmp.exeфайли в C:\Windows\System32папку. Вони також можуть бути скопійовані з C:\Windows\ServicePackFiles\i386папки.
Завжди навчаючись

4

Ось ще одна можливість.

Ви встановили однопроцесорну або багатопроцесорну версію XP?

У системах Uniprocessor як ядро ​​ntoskrnl.exe, а у багатопроцесорних системах ntkrnlmp.exe в C: \ WINDOWS \ system32.

Також у Диспетчері пристроїв розгорніть Комп'ютер. Ви повинні побачити "Багатопроцесорний ПК ACPI". Якщо ви бачите ПК «Розширена конфігурація та інтерфейс живлення (ACPI)», це неправильно.

Що ти бачиш?
Якщо будь-який із перерахованих вище перевірок невірний, вам доведеться перевстановити XP.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.