Como um computador sabe de quais CD / DVDs inicializar?

10

O que realmente acontece quando um usuário reinicia o sistema com um disco do SO (ou outro disco inicializável) na unidade de CD / DVD?

Por exemplo, quando coloco o CD de instalação do SO e inicio o computador, ele diz "Press any key to continue from CD or DVD...". Como isso é feito no CD / DVD real? Porque isso indica que, sempre que a CPU é reinicializada, primeiro verifica a unidade de CD ...

Agora, minha pergunta é: como um CD / DVD coloca esse conteúdo nele para indicar que é um disco normal versus um disco inicializável / SO? Como o computador identifica esses discos na inicialização?

Formigas
fonte

Respostas:

11

O padrão de CD-ROM El Torito é uma extensão da especificação ISO-9660 que permite inicializar a partir do CD. Alguns CDs de instalação do sistema operacional, o Windows é um exemplo, use essas extensões para facilitar a instalação do sistema operacional para o usuário. Seu computador provavelmente está configurado para verificar a unidade de CD-ROM toda vez que o sistema inicializar um CD inicializável. Muitos aplicativos de gravação de CD têm opções para gravar CDs usando a especificação El Torito.

No caso de um disco de instalação do Windows, pode ser necessário pressionar uma tecla para inicializar a partir do CD; caso contrário, ele tentará inicializar a partir do disco rígido. Você pode alterar o comportamento de inicialização do seu sistema acessando o BIOS. É possível fazer uma alteração no seu sistema no BIOS do seu computador que o tornará não inicializável. Provavelmente, isso pode ser reparado com facilidade, mas pode causar a recuperação de usuários com menos conhecimento.

cwawak
fonte
6

Rota de colisão

Quando o computador está ligado, o BIOS (que é "apenas" outro programa, que é o primeiro executado) é lido na memória e executado pela CPU. (Não tenho idéia de como isso é feito, desculpe.) Em seguida, ele executa os preparativos ou testes necessários, de acordo com as configurações definidas.

Essas configurações (que às vezes são chamadas incorretamente de "BIOS") são as que você pode controlar quando inicializa o computador, pressionando, por exemplo, Del ou F10. Eles especificam de quais dispositivos o BIOS permite a inicialização.

Ao ler as configurações, o BIOS tenta, em ordem, ler o primeiro setor de cada dispositivo (chamado de Master Boot Record na maioria dos discos rígidos ou apenas "setor 0"), verifica se é inicializável (deve terminar em o número hexadecimal 0xAA55); nesse caso, ele apenas copia o setor para a memória e transfere o controle para o primeiro byte dos dados. Depois disso, o MBR é autônomo e precisa carregar o que for necessário.

Muitas vezes, para discos rígidos, isso significa que o MBR deve analisar a tabela de partições e ler o primeiro setor da partição ativa na qual deve inicializar e depois transferir o controle para esse setor (chamado setor de inicialização). O setor de inicialização lê todos os arquivos necessários da partição e chama o carregador de inicialização, que carrega o sistema operacional.

Obviamente, esta última peça não é necessária. O setor de inicialização do dispositivo pode fazer o que quiser e, no caso de CDs ou DVDs, existem outros padrões que governam o que está acontecendo, como o El Torito. Dispositivos diferentes se comportam de maneira diferente depois que obtêm o controle do BIOS, por isso é difícil dizer o que acontece depois disso sem conhecer um tipo específico de dispositivo.

user541686
fonte
thnaks para a resposta, e não há necessidade de pedir desculpas em primeiro parágrafo ^ _O
Ant's