Carregador de inicialização
De Wikipedia, a enciclopédia encyclopedia
Um carregador de inicialização[lower-alpha 1] é um programa de computador responsável por inicializar um computador. Se ele também fornece um menu interativo com múltiplas opções de inicialização, então é frequentemente chamado de gerenciador de inicialização[lower-alpha 2].[2]
Quando um computador está desligado, seu software (incluindo sistemas operacionais, código de aplicativo e dados) permanece armazenado em memória não volátil. Quando o computador está ligado, ele normalmente não tem um sistema operacional ou seu carregador na memória de acesso aleatório (M.A.A.)[lower-alpha 3]. O computador primeiro executa um programa relativamente pequeno armazenado na memória somente de leitura (M.S.L.)[lower-alpha 4] (e depois na memória somente de leitura programável apagável eletricamente (M.S.L.P.A.E.)[lower-alpha 5], NOR flash) junto com alguns dados necessários, para inicializar a memória de acesso aleatório (M.A.A.)[lower-alpha 3] (especialmente em sistemas x86), para acessar o dispositivo que não é volátil (geralmente dispositivo de bloco como flash NAND, por exemplo) ou dispositivos a partir dos quais os programas e dados do sistema operacional podem ser carregados na memória de acesso aleatório (M.A.A.)[lower-alpha 3].
Alguns sistemas de computador anteriores, ao receber um sinal de inicialização de um operador humano ou de um dispositivo periférico, podem carregar um número muito pequeno de instruções fixas na memória em um local específico, inicializar pelo menos uma unidade de processamento central (U.P.C.)[lower-alpha 6] e, em seguida, apontar a unidade de processamento central (U.P.C.)[lower-alpha 6] para as instruções e iniciar suas execuções. Essas instruções normalmente iniciam uma operação de entrada a partir de algum dispositivo periférico (que pode ser selecionado por chave pelo operador). Outros sistemas podem enviar comandos de hardware diretamente para dispositivos periféricos ou controladores de entrada/saída (E/S)[lower-alpha 7] que fazem com que uma operação de entrada extremamente simples (como "ler o setor zero do dispositivo do sistema na memória começando no local 1000") seja executada, carregando efetivamente um pequeno número de instruções do carregador de inicialização na memória; um sinal de conclusão do dispositivo de entrada/saída (E/S)[lower-alpha 7] pode então ser usado para iniciar a execução das instruções pela unidade de processamento central (U.P.C.)[lower-alpha 6].
Computadores menores geralmente usam mecanismos de carregador de inicialização menos flexíveis, mas mais automáticos, para garantir que o computador seja iniciado rapidamente e com uma configuração de software predeterminada. Em muitos computadores de mesa, por exemplo, o processo de inicialização[lower-alpha 8] começa com a unidade de processamento central (U.P.C.)[lower-alpha 6] executando o software contido na memória somente de leitura (M.S.L.)[lower-alpha 4] (o Sistema básico de entrada/saída (S.B.E.S.)[lower-alpha 9] de um Computador pessoal da Corporação de Máquinas para negócios internacionais (IBM PC)[lower-alpha 10] ou compatível, por exemplo) em um endereço predefinido (algumas unidades de processamento central (U.P.C.)[lower-alpha 6], incluindo a série Intel x86, são projetadas para executar este software após a reinicialização sem ajuda externa). Este software contém funcionalidades rudimentares para procurar dispositivos qualificados para participar da inicialização e carregar um pequeno programa de uma seção especial (mais comumente o setor de inicialização) do dispositivo mais promissor, normalmente iniciando em um ponto de entrada [en] fixo, como o início do setor.