O problema principal (trocadilhos) é que o Windows XP contém dois kernels: single-core e multi-core. Provavelmente, o SO convidado detectou apenas um núcleo durante a instalação e o convidado do Windows XP está sendo executado no hal e no núcleo de núcleo único. Siga as instruções abaixo para ativar a inicialização com o halo e o núcleo com vários núcleos.
Isso funcionou para mim (VirtualBox XP Pro) ...
1) Vá para c: \ windows (seu caminho de instalação), pesquise sp3.cab. Abra esse arquivo de táxi com 7-zip (embora o explorer possa abrir o arquivo de forma nativa, se não conseguir fazer o download do 7-zip do sourceforge).
2) a) Extract halmacpi.dll to c:\windows\system32
b) Extract ntkrnlmp.exe to c:\windows\system32
3) Edite c: \ boot.ini
Nota: Você precisará desmarcar a propriedade Somente leitura para salvar suas alterações. Volte para Somente leitura quando concluir.
Copie a linha que se parece com isso:
partição multi (0) disco (0) rdisk (0) (1) \ WINDOWS = "Microsoft Windows XP Professional" / fastdetect / NoExecute = OptIn
Faça com que a entrada copiada fique assim:
partição multi (0) disco (0) rdisk (0) (1) \ WINDOWS = "Microsoft Windows XP MultiCore" / fastdetect / NoExecute = OptIn /kernel=ntkrnlmp.exe /hal=halmacpi.dll
Agora você tem uma opção de inicialização dupla para utilizar um ou vários núcleos (o TaskManager mostrará dois gráficos de CPU, se isso foi bem-sucedido). Se o multicore inicializar e funcionar corretamente, você poderá excluir a entrada de núcleo único do boot.ini.