Como o Gerenciador de Inicialização do Windows localiza o BCD?

1

Estou tentando entender o processo de inicialização do Windows. Cheguei até o gerenciador de inicialização EFI carregando o Gerenciador de Inicialização do Windows. Mas, então, ele deve acessar o BCD para prosseguir com o carregamento do sistema operacional ou com o carregamento em cadeia do próximo gerenciador de inicialização. Como exatamente encontra o BCD?

Por exemplo, no meu sistema há dois BCDs em um disco GPT: um no ESP, outro na partição System Reserved, que foi clonado a partir do antigo disco MBR. O Boot Manager olha o ESP simplesmente porque a unidade é GPT? Parece na pasta “atual” (existe tal coisa nesta fase, dado nenhum SO carregado ainda)? Ou é um algoritmo mais complicado envolvido?

Um fato curioso: se eu remover a partição System Reserved, o Boot Manager não será iniciado, reclamando que o BCD está ausente. E, no entanto, se eu fizer algumas alterações em ambos os BCDs (por exemplo, definir diferentes tempos limite), as configurações do ESP BCD serão usadas, conforme o esperado.

    
por Sergei Tachenov 22.03.2018 / 17:06

1 resposta

2

O Gerenciador de Inicialização procura o BCD no ESP porque essa é a única partição conhecida neste estágio e o firmware provavelmente só pode ler partições FAT. O caminho para o BCD ( /EFI/Microsoft/Boot/BCD ) no ESP é provavelmente codificado. A UEFI foi projetada desde o início para oferecer suporte à coexistência de software de diferentes fornecedores, e /EFI/Microsoft é o "playground" da Microsoft no ESP.

    
por 22.03.2018 / 18:58