Qual é a diferença entre o U-Boot e o BIOS?

2

Qual é a diferença entre o U-Boot e o BIOS? Esses dois dispositivos estão presentes em uma CPU específica ou quando um único dispositivo pode estar presente por vez? Seria bom se alguém fornecesse exemplos.

    
por vishram0709 28.01.2014 / 15:28

4 respostas

6

What is difference between U-Boot and BIOS ? Are both these devices present on a particular CPU or once a single device can be present at a time?

Existem inúmeras diferenças entre o U-Boot e um BIOS.
BTW, estes são software e não "dispositivos".

  • O BIOS é essencialmente um conceito de PC, tendo aparecido nos computadores pessoais CP / M e no IBM PC original.
    O U-Boot tenta fazer jus ao seu nome ("Universal Boot") e foi portado para muitas arquiteturas / plataformas.

  • As funções do BIOS incluem a inicialização básica do sistema após uma reinicialização ou energização, executando Testes Automáticos de Potência (também conhecidos como POST), fornecem uma interface de configuração de hardware interativa (também conhecida como configuração do BIOS) e inicializam o PC. O uso dos drivers de dispositivo integrados do BIOS original do IBM PC foi abandonado em favor dos drivers de dispositivo do sistema operacional. As funções do U-Boot incluem a inicialização básica do sistema e o bootstraping do sistema. A seqüência de inicialização pode opcionalmente ser abortada para entrar em uma sessão de linha de comando interativa. Como o U-Boot é extensível, qualquer número de recursos pode ser configurado ou adicionado, como POST e outros diagnósticos, utilitários de manutenção do sistema de arquivos, recursos de rede como recuperação de hora do dia (SNTP) ou endereço IP (cliente DHCP) e leitura / gravação / modificação de locais de memória. Os recursos e recursos reais do U-Boot variam de sistema / instalação para sistema.

  • O BIOS lida com a inicialização do PC como primeiro bootloader. Ele normalmente é executado no local (XIP) na memória Flash em que ele reside.
    O U-Boot é tipicamente um segundo (ou mesmo terceiro) bootloader de estágio. Pode ser o bootloader de primeiro estágio como um BIOS, já que ele pode XIP, mas não sei se alguma plataforma realmente fez isso. Normalmente, o U-Boot é carregado a partir da memória Flash e executado na memória principal, por ex. SDRAM.

  • Como um bootloader de primeiro estágio, o BIOS é bastante limitado, já que é carregado e executado, como o registro mestre de inicialização (MBR) de um disco rígido. O BIOS normalmente não carrega a imagem real do sistema operacional. O U-Boot, quando é fornecido o formato de arquivo uImage, está ciente do SO que está sendo carregado e pode preparar adequadamente buffers de memória e parâmetros para a inicialização adequada do sistema operacional.

  • O BIOS, como é baseado em PC, geralmente usa o adaptador de vídeo e o teclado como dispositivos de E / S de operador. Normalmente, o U-Boot usa uma porta serial RS232 como o dispositivo de E / S do operador.

  • O IBM PC BIOS original foi publicado nos documentos técnicos do IBM PC como uma listagem de linguagem assembly x86. Versões modernas vendidas pela AMI, Award e Phoenix são proprietárias.
    O U-Boot é lançado sob a GNU GPL.

O Linux em PCs geralmente usa o Grub como o programa de boot post-BIOS. Suponho que o U-Boot possa ser usado no lugar do Grub, mas não sei as razões a favor ou contra tal implementação.

    
por 29.01.2014 / 00:01
2

Eu acredito que a diferença é que o U-boot é Open Source.

O U-Boot foi criado pela primeira vez para um 8xx PowerPC. Foi movido para o sourceforge.net com o nome de PPCBoot. Dois anos depois, fundiu-se com o ARMBoot, um gerenciador de inicialização para a CPU ARM. Depois, evoluiu para suportar vários outros chips e plataformas.

O BIOS foi criado para PCs da IBM. Então eu acho que é de código fechado.

    
por 28.01.2014 / 16:16
0

De um modo geral, não há diferença. Tanto o U-Boot quanto o BIOS são formas de carregadores de inicialização. Você não teria ambos em um sistema, você toma um ou outro.

O seu BIOS (Basic Input / Output System) é um conjunto complexo de software de armazenamento flash que é executado na inicialização para inicializar o hardware do sistema e carregar o sistema operacional.

O U-Boot é um gerenciador de partida de código aberto que é usado em vários sistemas Linux e acredito que alguns sistemas ARM o usem. Mais uma vez, ele é usado para processar hardware e sistemas operacionais na inicialização.

Desculpas se isso for um pouco breve. Se você quiser ler os detalhes completos em torno do u-boot, ele estará disponível em seu github e a Internet estará coberta com informações sobre o BIOS.

    
por 28.01.2014 / 15:40
0

A principal diferença é que o u-boot é apenas um bootloader. Um Bios é um gerenciador de inicialização e funciona para usar o hardware em sua placa.

    
por 28.01.2014 / 17:15