Artigo original: UEFI vs BIOS: What's the Difference?
É possível que você já tenha ouvido falar nas siglas BIOS e UEFI em algum lugar, especialmente ao tentar mudar de sistema operacional ou ao brincar com overclocking.
Também é possível que você saiba o que querem dizer essa siglas (Unified Extensible Firmware Interface e Basic Input/Output System, respectivamente). Mas você já se perguntou como elas são usadas em um sistema computacional?
Vamos desmistificar esses termos e seus significados agora.
Procedimento de boot
Em primeiro lugar, sei que estamos desviando do assunto, mas prometo que isso vai ajudar com alguns conceitos mais tarde.
Como é feito o boot no computador? Vamos ver isso passo a passo:
- Você pressiona o botão de ligar/desligar do seu laptop ou desktop.
- A CPU inicia, mas precisa de algumas instruções para funcionar (lembre-se: a CPU sempre precisa fazer algo). Como a memória principal está vazia neste momento, a CPU se restringe às instruções de carregamento do chip do firmware da placa-mãe e começa a executar essas instruções.
- O código do firmware faz um Power On Self Test (POST, ou autoteste de inicialização), inicializa o hardware restante, detecta os periféricos conectados (mouse, keyboard, pen drive etc.) e verifica se todos os dispositivos conectados estão funcionando bem. Você pode se lembrar de ouvir um 'bipe' que os desktops normalmente usavam quando o POST tinha êxito.
- Por fim, o código do firmware analisa todos os dispositivos de armazenamento e procura por um carregador de boot (geralmente localizado no primeiro setor de uma unidade de disco). Se o carregador de boot é encontrado, o firmware entrega a ele o controle do computador.
Não precisamos saber mais sobre esse tópico para fins deste artigo. Se estiver interessado, no entanto, siga lendo (do contrário, pode passar para a próxima seção).
- Agora que o carregador de boot está carregado, sua tarefa é carregar o resto do sistema operacional. O GRUB é um desses carregadores de boot. Ele é capaz de carregar sistemas operacionais do tipo UNIX e de carregar em sequência o SO Windows. O carregador de boot está disponível somente no primeiro setor de uma unidade de disco, que tem 512 bytes. Dada a complexidade dos sistemas operacionais modernos, alguns desses carregadores de boot tendem a fazer carregamento em diversos estágios, onde o carregador de boot principal carrega o carregador de boot do segundo estágio em um ambiente no qual ele não está restrito aos 512 bytes.
- O carregador de boot em seguida carrega o kernel na memória. Sistemas operacionais do tipo UNIX, então, rodam o processo
init
(o processo principal, a partir do qual os outros processos são derivados/executados) e finalmente inicializa os níveis de execução. - No Windows, o
wininit.exe
é carregado junto de alguns processos, como oservices.exe
, para o controle de serviços, olsass.exe
, para a segurança local e a autoridade (semelhante aos níveis de execução) e olsm.exe
, para o gerenciamento da sessão local. - Depois de tudo isso, e após alguns outros drivers serem inicializados, a Interface Gráfica de Usuário (GUI) é carregada e você visualiza a tela de login.
Essa foi uma visão bastante geral do processo de boot. Se estiver interessado em sistemas operacionais, eu recomendo que leia mais sobre o assunto em osdev.net (em inglês).
Bem, agora, vamos voltar ao nosso tópico original.
BIOS:
BIOS significa Basic Input/Output System, o firmware de que falamos acima, na parte sobre o procedimento de boot.
Ele é armazenado em uma EPROM (Erasable Programmable Read-Only Memory), o que permite ao fabricante lançar as atualizações com facilidade.
Ele fornece muitas funções auxiliares que permitem a leitura dos setores de boot das unidades de armazenamento conectadas e imprimir coisas na tela. Você pode acessar o BIOS durante as fases iniciais do procedimento de boot pressionando, normalmente, del
, F2
ou F10
.
UEFI:
UEFI significa Unified Extensible Firmware Interface. Ela faz o mesmo trabalho que o BIOS, mas com uma diferença básica: ela armazena todos os dados sobre inicialização e início em um arquivo .efi, em vez de armazená-las no firmware.
Esse arquivo .efi é armazenado em uma partição especial chamada EFI System Partition (ESP) no disco rígido. Essa partição ESP também contém o carregador de boot.
A UEFI foi projetada para vencer as várias limitações do antigo BIOS, incluindo:
- A UEFI da suporte a tamanhos de unidade de até 9 zetabytes, enquanto o BIOS dá suporte a apenas 2,2 terabytes.
- A UEFI fornece tempo de inicialização mais rápido.
- A UEFI tem suporte a unidades discreto, enquanto o BIOS tem o suporte a unidades armazenado em sua ROM. Desse modo, atualizar o firmware do BIOS é um pouco difícil.
- A UEFI oferece segurança, por exemplo, com o "Secure Boot", que evita que o computador faça boot a partir de aplicações não autorizadas/não assinadas. Isso ajuda a evitar os rootkits, mas também dificulta o boot dual, já que trata o outro SO como uma aplicação não assinada. No momento, apenas o Windows e o Ubuntu são SOs assinados (fique à vontade para informar o autor caso ele esteja errado).
- A UEFI roda em modo de 32 ou de 64 bits, enquanto o BIOS roda em modo de 16 bits. Por isso, a UEFI consegue fornecer uma GUI (de navegação com o mouse), diferente do BIOS, que somente permite a navegação com o teclado.
Você pode não precisar da UEFI
Apesar de todos os computadores modernos já virem equipados com a UEFI por padrão, há motivos para os quais você escolheria o BIOS em vez da UEFI. São eles:
- Se você é um iniciante e não se importa com brincar com qualquer tipo de firmware, o BIOS é para você.
- Se você tem menos de 2 TB por disco rígido ou partição, pode utilizar o BIOS.
- O BIOS permite rodar vários sistemas operacionais sem alterar configurações. Isso pode ser um problema de segurança sob a ótica moderna, mas, ao menos, não incomoda o usuário.
- O BIOS fornece informações do sistema ao sistema operacional. Assim, se o seu SO estiver rodando em modo de 16 bits, ele não precisa escrever código para interagir com o hardware, podendo usar métodos fornecidos diretamente pelo BIOS. Do contrário, se o SO estiver em modo de 32 ou de 64 bits, será preciso fornecer suas próprias sub-rotinas para interagir com o hardware.
- Se você é alguém que prefere um teclado e UI baseada em texto em vez da navegação com o mouse em uma GUI, o BIOS é para você.
O UEFI leva em conta essas limitações e provê um modo legado. Nele, você pode executar tudo como se estivesse em um firmware do BIOS. Lembre-se, porém, que a Intel anunciou que deixaria de dar suporte ao BIOS tradicional desde 2020.
Conclusão
Este artigo deu uma visão geral sobre as diferenças entre BIOS e UEFI. Ele também dá sugestões sobre quando usar um ou outro e sobre como essas situações de uso diferem.
Se tiver perguntas, o autor se encontra disponível no Twitter. Obrigado por sua leitura.