UEFI: Por que a demora para inicializar?

Author Photo
11:05 am - 26 de fevereiro de 2012

Por que a demora?

O procedimento de inicialização de um computador pode ser subdividido em etapas. Mas, seja qual for o caso, seu objetivo final é carregar o sistema operacional e pôr a máquina à disposição do usuário, pronta para a labuta.

É claro que uma observação superficial do fenômeno indica uma aparente contradição. Pois quem carrega programas é o Sistema Operacional. Por outro lado, o próprio sistema operacional é um programa. Um programa poderoso, especial, que controla e gerencia a máquina, porém nem por isto deixa de ser um programa. Ora, se quem carrega programas na memória é o sistema operacional e ele mesmo é um programa, como ele foi carregado na memória?

Este assunto já foi discutido aqui mesmo tantas vezes (por exemplo: na coluna “O aparente mistério do ?boot?“) que nem vou me dar ao trabalho de entrar em detalhes. Mas vale a pena, pelo menos, mencionar a razão pela qual ele é conhecido em inglês pelo termo “boot“, que significa “bota”, “botina” e que, aparentemente, nada tem a ver com o assunto.

De fato “boot” quer dizer “botina”, mas em informática ele derivou da simplificação do termo pelo qual o procedimento era conhecido originalmente: “bootstrap“, que significa “cordão da botina”, aqueles cordões utilizados para amarrar as botas. Agora sim ficou claro, pois não?

[photoframe folder=wp-content/blogs.dir/4/files/uefi_1-1419661887 filename=

Acha que não? Ainda não consegue perceber a relação entre os cordões das botinas e o procedimento de inicialização dos computadores? Ah, certamente porque não conhece o ditado em inglês “Pull yourself up by your bootstraps” cuja tradução é “levante-se do chão puxando para cima os cordões das botas (como o cavalheiro da Figura 3, obtida no sítio “Enterprise Irregulars”).

Ele é usado para indicar que alguém deseja realizar algo que é impossível ser feito com os meios de que dispõe, como o cara que pretende acelerar um barco à vela sentado no banco traseiro segurando um ventilador apontado para a vela. Que, aparentemente, é justamente o que ocorre durante a carga do sistema operacional, que é um programa e precisa de que ele mesmo já esteja carregado para que possa carregar-se a si mesmo, como alguém que tentasse flutuar puxando para cima os cordões das próprias botinas.

Agora, sim, dá para explicar. O ditado deriva de uma das folclóricas mentiras do Barão de Munchausen, interessante personagem que certa feita relatou ter atravessado um pequeno pântano sem molhar as botinas novas apelando para este recurso. E foi como alusão ao ditado que o procedimento de inicialização passou a ser conhecido como “bootstrap” e, mais tarde, acabou simplificado para “boot“. Agora deu para entender, pois não? (uma ocasião, após relatar isto em classe, ouvi um aluno comentar que sempre pensara que o termo derivava do fato de que a máquina passava a se movimentar sozinha ao ser ligada como se, aparentemente, tivesse sido chutada por alguém calçando botinas, uma ideia que me pareceu disparatada até me deparar com a imagem exibida na Figura 1, no início desta coluna, obtida no sítio “Idioms4You” …)

Bem, então vamos lá: como resolver esta aparente contradição?

Simples: para que um programa seja executado, basta que seu código esteja na memória da máquina. Em geral na memória RAM, aquele trecho de memória volátil onde bits são escritos e sobrescritos incessantemente durante o funcionamento da máquina. Mas não necessariamente nela. De fato, estando armazenado em um chip de memória volátil ou não, desde que dentro do espaço de endereçamento da máquina (ou seja, em um trecho de endereços de memória que a máquina pode acessar), qualquer código pode ser executado.

É aí que entra o BIOS.

Newsletter de tecnologia para você

Os melhores conteúdos do IT Forum na sua caixa de entrada.