Qual é a diferença em "Inicializar com BIOS" e "Inicializar com UEFI"

118

Agora, o Windows 8 suporta o UEFI bootloader e li que é diferente do BIOS, mas não está claro para mim depois de muitas pesquisas no Google.

Alguns pontos em mente estão abaixo: -

  • Como todos sabemos, o BIOS é uma parte importante do acesso às opções de inicialização. Então a UEFI fará isso agora? Quão?

  • Como eu saberia que estou inicializando com UEFI e não com BIOS?

  • Então, qual é a diferença real entre "inicializar com BIOS" e "inicializar com UEFI"?

avirk
fonte

Respostas:

134
  • Como todos sabemos, o BIOS é parte importante para acessar a opção de inicialização. Então agora a UEFI fará isso? Quão?

O BIOS inicializa lendo o primeiro setor em um disco rígido e executando-o; esse setor de inicialização, por sua vez, localiza e executa código adicional. O sistema BIOS é muito limitante devido a restrições de espaço e porque o BIOS executa código de 16 bits, enquanto os computadores modernos usam CPUs de 32 ou 64 bits. Por outro lado, o EFI (ou UEFI, que é apenas EFI 2.x) é inicializado carregando os arquivos de programa EFI (com .efiextensões de nome de arquivo) de uma partição no disco rígido, conhecida como ESP (Partição do Sistema EFI). Esses programas do carregador de inicialização EFI podem tirar proveito dos serviços de inicialização EFI para ler arquivos do disco rígido.

Por uma questão prática, se você estiver usando um sistema operacional como o Linux que possui carregadores de inicialização complexos no modo BIOS, a inicialização no modo EFI provavelmente será semelhante à inicialização no modo BIOS, desde o GRUB 2 (o carregador de inicialização no modo BIOS mais popular para Linux) foi portado para funcionar no EFI, e muitas distribuições Linux instalam o GRUB 2 por padrão nos sistemas EFI. OTOH, você pode substituir ou complementar o GRUB 2 por outros carregadores de inicialização EFI. De fato, o próprio kernel do Linux pode ser um carregador de inicialização EFI; código foi adicionado para fazer isso com o kernel 3.3.0. Utilizado dessa maneira, o próprio EFI carrega e executa o kernel do Linux, ou você pode usar um gerenciador de inicialização de terceiros, como rEFInd ou gummiboot, para selecionar o SO ou o kernel a inicializar.

  • Como eu saberia que estou inicializando com UEFI e não com BIOS?

Como diz Root, existem pistas na interface do usuário do firmware; no entanto, eles não são confiáveis ​​e variam de um computador para outro. A única maneira de ter certeza é verificar como o computador foi inicializado. No Linux, por exemplo, a presença de um diretório chamado /sys/firmware/efié de diagnóstico. Se estiver presente, você inicializou no modo EFI; se não estiver presente, você provavelmente inicializou no modo BIOS. (Esse diretório pode estar ausente em uma inicialização no modo EFI em algumas circunstâncias.) A dmesgsaída que se refere à EFI também é um diagnóstico de uma inicialização no modo EFI. No Windows, a tabela de partição do disco de inicialização é de diagnóstico; se for GPT, você inicializou no modo EFI e, se for MBR, você inicializou no modo BIOS.

  • Então, qual é a real diferença entre "inicializar com BIOS" e "inicializar com UEFI"?

A EFI pode ser mais rápida, mas isso não é certo. A maior diferença de velocidade está na inicialização do hardware no início do processo. Em meus sistemas, esta é uma fração do tempo total de inicialização, assim que uma redução no tempo de inicialização de hardware, enquanto bom, não faz tudo o que muita diferença. Afinal, não é como se eu estivesse reiniciando a cada dez minutos.

UEFI suporta um recurso chamado Secure Bootisso visa, como o nome sugere, a melhorar a segurança. Isso é feito exigindo uma "assinatura" digital dos gerenciadores de inicialização, que por sua vez deve exigir a assinatura de kernels e assim por diante. Isso deve dificultar a inserção de códigos de autores de malware no processo de pré-inicialização, melhorando a segurança. Isso parece bom, mas também complica as configurações de inicialização dupla, já que códigos como GRUB e o kernel Linux devem ser assinados. Os principais fornecedores de distribuição Linux estão trabalhando em maneiras de tornar esses requisitos menos onerosos para os usuários comuns do Linux, e eles já prepararam algumas coisas preliminares. No momento, porém, desativar o Secure Boot é a maneira mais fácil de lidar com isso. Essa é uma preocupação prática principalmente para computadores novos que acompanham o Windows 8, pois a Microsoft está exigindo que o Secure Boot seja ativado para obter a certificação do Windows 8. Algumas pessoas confundem UEFI e Secure Boot (o último é apenas um recurso do primeiro), mas merece menção como uma diferença entre BIOS e UEFI, porque está causando alguns problemas nos novos computadores com Windows 8. Se você possui um sistema mais antigo ou se sente à vontade com os utilitários de configuração de firmware para desativar a Inicialização Segura, isso não precisa ser um problema real.

A Microsoft vincula o tipo de tabela de partição do disco de inicialização ao tipo de firmware (MBR para BIOS; GPT para UEFI). Como o MBR chega ao 2TiB (assumindo tamanhos de setor padrão), isso significa que o UEFI é uma necessidade prática para inicializar o Windows em discos com mais de 2TiB. No entanto, você ainda pode usar discos grandes como discos de dados no Windows e inicializar alguns SOs não-Microsoft (como Linux e FreeBSD) em grandes discos usando GPT no BIOS.

Por uma questão prática, se você estiver preocupado ou interessado na UEFI, o maior problema é simplesmente que o UEFI é novo o suficiente para que o suporte seja um pouco irregular, principalmente em sistemas operacionais mais antigos e mais exóticos. A UEFI é nova o suficiente para que a maioria de suas implementações seja de buggy, e aquelas que não são suficientemente variadas entre si, pode ser difícil descrever as coisas em geral. Portanto, usar UEFI pode ser um desafio. OTOH, UEFI é o futuro. Possui algumas vantagens modestas, algumas das quais se tornarão mais importantes com o tempo (como o limite de disco de inicialização de 2TiB do Windows). A mudança para uma inicialização UEFI alterará alguns detalhes do processo de inicialização, mas sua experiência geral de computação não mudará muito assim que você superar os problemas de inicialização que encontrar.


EDITAR:

Você poderia expandir as configurações do OpRom (Opção Rom). Eles parecem permitir que você escolha entre a inicialização UEFI ou "Legacy" e se aplicam à placa de vídeo, placa de rede e vários outros dispositivos PCI.

Muitas placas de plug-in fornecem firmware que faz interface com o firmware na placa-mãe. Os dois tipos de firmware devem ser capazes de "falar" se o firmware da placa for bom. É necessário usar a placa antes da inicialização do sistema operacional - por exemplo, para exibir as opções do firmware ou o menu do gerenciador de inicialização em uma placa de vídeo, para executar uma inicialização de rede via placa de rede ou para inicializar a partir de um disco rígido conectado ao uma placa controladora de disco.

Assim como nos gerenciadores de inicialização, o código no firmware de um dispositivo de plug-in é escrito para fazer interface com o BIOS ou EFI (embora as placas de plug-in possam suportar ambos, se não me engano). Algumas EFIs oferecem opções para habilitar ou desabilitar esse suporte em detalhes, como você observou. Em alguns casos, uma EFI pode usar o suporte ao modo BIOS de uma placa para permitir que ela funcione no modo EFI, "convertendo" as chamadas. (Isso é comum nas placas de vídeo, por exemplo; você pode conectar uma placa de vídeo antiga com nada além do suporte da BIOS no firmware e ainda usá-la para inicializar no modo EFI.)

Não sei exatamente o que cada uma das configurações que você observa faz. Por exemplo, não sei se "Somente BIOS" para uma dessas opções faria com que a placa funcionasse apenas no modo BIOS, "traduza" para que o EFI possa usar as chamadas do modo BIOS no modo EFI ou qualquer outra coisa. De fato, dada a falta de padrões em outras áreas da interface do usuário da EFI, eu esperaria que os detalhes diferissem de uma EFI para outra, portanto, talvez você precise consultar a documentação ou a experiência do seu computador se precisar conhecer os detalhes. Vi alguns computadores com opções de som muito semelhante em dois menus diferentes, o que complica ainda mais as coisas.

Rod Smith
fonte
Se um disco rígido possui uma partição de inicialização do BIOS E uma partição do sistema EFI, isso significa que esse disco rígido pode ser inicializado no modo BIOS e no modo EFI? Então, o disco rígido é "independente do modo de inicialização"? Vi no tutorial do gdisk que ele configurava uma partição de inicialização do BIOS e uma partição do sistema EFI. Também em outros casos, alguns disseram que você pode precisar /bootde uma partição diferente (principalmente porque estou tentando usar o ZFS). Como reconciliar uma RAIDED /bootcom a partição de inicialização do BIOS e a partição do sistema EFI?
CMCDragonkai
Um disco pode ter uma partição de inicialização ESP e BIOS. O último é usado apenas pelo GRUB, portanto, um disco pode ser inicializável no EFI e no BIOS, mesmo sem o último, dependendo do carregador de inicialização usado. Uma /bootpartição Linux separada normalmente existe fora de uma matriz RAID. Não importa o modo de inicialização, o carregador de inicialização deve poder ler o kernel, e a maioria dos carregadores de inicialização não pode lidar com o RAID de software. (GRUB supostamente pode fazê-lo, mas poucas pessoas sequer tentar.)
Rod Smith
Preciso usar um RAID flexível /bootporque o ZFS não pode ter /bootnele. Eu perguntei na lista de discussão do ZFS no Linux.
CMCDragonkai
1
O BIOS não tem nada nem remotamente equivalente ao Secure Boot.
Rod Smith
1
O suporte UEFI é muito bom nos sistemas operacionais mais populares, principalmente no Windows 7 e nas distribuições Linux mais recentes. Se você sair dessa região, pesquise o suporte UEFI do seu SO específico. A última vez que verifiquei, por exemplo, ReactOS, Haiku e FreeDOS, não teve suporte a UEFI; no entanto, já faz um tempo desde que eu verifiquei algum deles, então é possível que um ou mais deles agora tenham suporte a UEFI.
Rod Smith
21
  • Como todos sabemos, o BIOS é parte importante para acessar a opção de inicialização. Então agora a UEFI fará isso? Quão?

UEFI é uma interface de firmware multiplataforma que substitui o padrão de firmware específico para x86 chamado BIOS. Muitas implementações de UEFI também incluem um modo de compatibilidade / legado do BIOS, para permitir a inicialização a partir de MBRs e a apresentação de uma interface semelhante ao BIOS para os sistemas operacionais; no entanto, isso não é exigido pelo padrão.

  • Como eu saberia que estou inicializando com UEFI e não com BIOS?

Se você tiver uma placa-mãe compatível com UEFI que ofereça inicialização BIOS compatível / legada, o menu de firmware fornecerá opções como definir um modo de inicialização padrão ou até inicializar dispositivos únicos no modo UEFI ou BIOS: caso contrário, pode não ser fácil maneira de saber, sem, por exemplo, investigar o firmware usando um sistema operacional.

  • Então, qual é a real diferença entre "inicializar com BIOS" e "inicializar com UEFI"?

Existem muitas diferenças:

  • O UEFI define uma interface de firmware do sistema operacional semelhante ao BIOS, mas não é específica para nenhuma arquitetura de processador. O BIOS é específico da arquitetura do processador Intel x86, pois conta com a interface "modo real" de 16 bits suportada pelos processadores x86.
  • O UEFI pode ser configurado para acelerar várias partes do processo de inicialização, por exemplo, o UEFI no Gigabyte GA-EP45-DS3 é inicializado em 11 segundos versus o BIOS em 19 segundos .
  • O modo UEFI pode apresentar recursos diferentes de firmware / hardware para o mesmo sistema operacional instalado do que o modo BIOS.

Veja mais informações sobre UEFI .

Elmo
fonte
1
Nem sempre é possível dizer qual é o modo de inicialização real apenas com base nas configurações de firmware, porque a maioria das EFIs depende de fatores baseados em disco e de firmware para determinar o modo de inicialização. Esses fatores baseados em disco incluem o tipo de tabela de partição, configurações de sinalizador "boot / active" no MBR, a presença / ausência da partição do sistema EFI ou dos arquivos nela, e assim por diante. A única maneira de ter certeza é verificar sinais de inicialização no modo EFI ou BIOS no sistema operacional que você inicializou, e esses sinais são específicos do sistema operacional.
Rod Smith
1
Não, o UEFI nem sempre é "implementado em cima de um BIOS tradicional". UEFI é um tipo de firmware que substitui o tipo mais antigo chamado BIOS. Pode incluir um modo de compatibilidade / legado que permite inicializar a partir de um MBR no estilo do BIOS e apresentar uma interface equivalente ao BIOS para sistemas operacionais que desejam um, mas isso não significa que ele tenha o BIOS embaixo dele.
Underscore_d
1
O que significa P0 / P1 / P2 na sua imagem?
precisa saber é o seguinte
O link da imagem é quebrada
Dan Dascalescu
1
@underscore_d, não são implementions EFI que rodam em cima de um BIOS tradicional. Eu escrevi sobre um deles, o "EFI híbrido" da Gigabyte aqui. Minha experiência com isso foi bastante negativa. Existem também o Clover e o DUET, que são executados como carregadores de inicialização em computadores padrão baseados em BIOS para permitir a execução de carregadores de inicialização e sistemas operacionais no modo EFI. Clover e DUET não são tecnicamente firmware, portanto, não tenho certeza se eles realmente contam.
Rod Smith
8

P: Como todos sabemos, o BIOS é uma parte importante do acesso às opções de inicialização. Então agora a UEFI fará isso? Quão?

A: Isso é uma confusão sobre os termos. Por exemplo, “Entre no BIOS para alterar o blabla”. O termo politicamente correto é “utilitário de configuração de firmware” para o que você digita. Se você fala sobre “BIOS” contrastando com “UEFI”, refere-se a outra coisa, a saber: o ambiente de execução de inicialização.

Portanto, se você quer dizer esse utilitário de configuração, a) não o chame de UEFI eb) é basicamente a mesma coisa que antigamente.

Como o utilitário de configuração se comunica com o hardware e seu armazenamento permanente é privado para o firmware. Então, nada mudou lá também.

P: Qual é a verdadeira diferença entre "inicializar com BIOS" e "inicializar com UEFI"?

R: O ambiente em que os carregadores de inicialização se encontram é diferente. E com a UEFI, esse ambiente é mais claro, muito mais moderno e rico em recursos.

Robert Siemer
fonte