¿Cómo habilitar múltiples procesadores en XP SP 3?

13

Tengo una laptop Lenovo n100 que tiene 3 años. Arranca dual el Windows XP original que venía con Ubuntu y Ubuntu, y acabo de notar que la instalación de XP, en el Administrador de tareas, solo muestra 1 CPU.

El administrador de dispositivos muestra 2 procesadores (es un core duo T2300), pero parece que uno de ellos no se está utilizando. Google mostró que SP2 necesitaba una solución específica para habilitar esto, pero no aparece nada en SP3, y cuando descargué dicha solución se niega a instalar, diciendo que tengo una solución más nueva.

(Solo para aclarar las cosas, verifiqué y no es que el Administrador de tareas muestre todas las CPU en el mismo gráfico).

¿Alguien sabe cómo arreglar esto?

abyx
fuente

Respuestas:

5

Ejecute la utilidad msconfig, vaya a la pestaña BOOT.INI y luego haga clic en Avanzado.

La casilla de verificación NUMPROC debe estar desmarcada para usar todos los procesadores.
Como prueba, intente verificarlo y ver qué contiene la lista desplegable.
Si contiene solo el valor 1, entonces algo está realmente mal.

imagen

NOTA: Esta respuesta es de 2009, trátela con respeto por su vejez.
Especialmente: No hay votos negativos, por favor.

harrymc
fuente
Está desmarcado y al comprobarlo se muestran 2 CPU. ¿Alguna otra idea?
abyx
1
@abyx: intente marcar la /NUMPROCcasilla y seleccionar específicamente la opción 2 CPU. reiniciar. ¿eso permite el uso de ambos núcleos?
quack quijote
@ ~ quack: ¡eso funcionó!
abyx
Entonces la pregunta es por qué debe establecerse explícitamente, ya que no debería ser necesario. Tal vez es un problema del conductor? ¿Quizás la Computerentrada en el Administrador de dispositivos es incorrecta?
Synetech
@Synetech inc .: no creo que obtenga más información de una publicación de 2 meses.
harrymc
23

Esto ha funcionado para nosotros (de: http://www.pcreview.co.uk/forums/change-hal-out-reinstall-t2562052.html ):

  1. Deshabilitar la firma del controlador (Mi PC> Propiedades> Hardware ...)

  2. Ejecute esta línea de comando exactamente:

    rundll32 syssetup,SetupInfObjectInstallAction ACPIAPIC_MP_HAL 128 %windir%\inf\hal.inf
    
dbagshaw
fuente
1
Se requieren 2 reinicios y todo funciona de maravilla, ¡gracias!
Matthias Hryniszak
Esto funcionó cuando visualicé una máquina física desde nuestras copias de seguridad.
Jeff F.
esto funcionó en una vieja máquina virtual XP, ¡tampoco necesitaba desactivar la firma del controlador!
Jeff Atwood
Esta es la mejor respuesta.
Igor Levicki
8

Esto funcionó para mí (VirtualBox XP Pro) ...

1) Vaya a c: \ windows (su ruta de instalación), busque sp3.cab. Abra este archivo de cab con 7-zip (aunque el explorador puede abrir el archivo de forma nativa, si no puede descargar 7-zip de sourceforge).

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

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

3) Editar c: \ boot.ini

Nota: Deberá desmarcar la Read-onlypropiedad para poder guardar sus cambios. Vuelva a configurar Solo lectura una vez completado.

Copie la línea que se ve así:

partición de disco múltiple (0) (0) disco (0) (1) \ WINDOWS = "Microsoft Windows XP Professional" / fastdetect / NoExecute = OptIn

Haga que la entrada copiada se vea así:

partición de disco múltiple (0) (0) disco (0) (1) \ WINDOWS = "Microsoft Windows XP MultiCore" / fastdetect / NoExecute = OptIn /kernel=ntkrnlmp.exe /hal=halmacpi.dll

Ahora tiene una opción de arranque dual para utilizar uno o varios núcleos (TaskManager mostrará dos gráficos de CPU si esto fue exitoso). Si el multinúcleo arranca y funciona correctamente, puede eliminar la entrada de un solo núcleo de boot.ini.

James
fuente
Tengo curiosidad, ¿cómo funciona esto exactamente? ¿Qué hace la suma /kernel=ntkrnlmp.exe /hal=halmacpi.dllpara obligarlo a mostrar todos los núcleos de la CPU? Bienvenido a Super User, por cierto :)
nhinkle
Por lo que entiendo, esto obliga a Windows a usar el núcleo multinúcleo: ntkrnlmp.exe y la capa de abstracción de hardware: halmacpi.dll. Es probable que el sistema se haya instalado utilizando un núcleo de un solo núcleo y HAL.
James
+1 para este! Esto me pareció muy útil. Solo tengo que mencionar que cometí un error al editar boot.ini y mi VM quedó inutilizable (necesitaba editar boot.ini usando el sistema operativo host para recuperarlo), ¡así que edite con cuidado!
Eugenio Miró
Tarde a la fiesta de comentarios, pero sí, ¡las copias de seguridad siempre son una buena idea! Solo cópialo boot.ini.origo algo similar. Pero sí, si lo mangas, necesitarás algún tipo de herramienta de recuperación. Una imagen de CD en vivo de Linux funcionará bien, solo móntela como su dispositivo de CD en VirtualBox.
James
Si ve el siguiente mensaje de error en el arranque: 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.entonces ... a pesar del error que dice que hal.dllfalta, olvidó copiar los archivos halmacpi.dlly ntkrnlmp.exeen la C:\Windows\System32carpeta. Estos también se pueden copiar de la C:\Windows\ServicePackFiles\i386carpeta.
Siempre aprendiendo el
4

Aquí hay otra posibilidad.

¿Has instalado la versión uniprocesador o multiprocesador de XP?

Los sistemas uniprocesadores tienen como kernel ntoskrnl.exe, mientras que los sistemas multiprocesador tienen ntkrnlmp.exe en C: \ WINDOWS \ system32.

También en el Administrador de dispositivos, expanda Computadora. Debería ver "PC multiprocesador ACPI". Si está viendo "Configuración avanzada y PC de interfaz de alimentación (ACPI)", entonces esto está mal.

¿Que ves?
Si alguna de las dos comprobaciones anteriores es incorrecta, deberá reinstalar XP.

harrymc
fuente