Primeiro de tudo, ao inicializar dualmente o Windows 7 e o Windows XP, é o gerenciador de inicialização do Windows 7 (bootmgr) que deve ter o controle da inicialização. O gerenciador de boot do Windows XP é ntldr.
Existem 3 entidades "obrigatórias" para iniciar o SO (XP ou Win7)
- código MBR
- Código PBR (PBR = registro de inicialização da partição)
- a) ntldr (e ntdetect.com) e arquivo boot.ini
OU 3. b) bootmgr com a pasta \ boot (com o armazenamento BCD).
Em um cenário de inicialização dupla (Win 7 com XP), você deve ter na partição FIRST disk ACTIVE:
- Windows MBR
- bootmgr com o BCD com uma entrada adicional para o XP.
- ntldr e ntdetect.com
- boot.ini
Quando o computador inicia, o código do BIOS é executado, o que faz alguns testes e, em seguida, carrega o MBR do disco FIRST. O código MBR carrega o PBR da partição ACTIVE. Então o código PBR carrega o bootmgr. O bootmgr lê dados BCD e exibe o menu de inicialização.
Quando você seleciona o Windows 7, o controle é transferido para o winload.exe, que carrega o Windows 7 corretamente. Quando você seleciona o controle de entrada do menu de inicialização do XP é transferido para ntldr (ntldr exibe outro menu de inicialização baseado em entradas no boot.ini)
Para uma exibição e edição completa do conteúdo do BCD, você pode usar o Editor Visual do BCD .
Para encontrar o caminho exato do ARC (multi (0) disco ... partition ()) da sua instalação do XP e configuração de discos você pode usar o utilitário "ARC Paths" . Você precisa editar seu antigo boot.ini substituindo os caminhos "antigos" do ARC pelos "novos" caminhos ARC.
Espero que isso ajude.
( Nota: A partição ativa no Windows 7 pode ser a partição oculta "System Reserved" - para mapeá-la com uma letra de unidade do DOS, use o Gerenciamento de Disco do Windows ou algum gerenciador / editor de disco de terceiros.