1. Inicialização do BIOS ou UEFI
Ao pressionar o botão de ligar, o BIOS (Basic Input/Output System) ou UEFI (Unified Extensible Firmware Interface) inicia o processo de inicialização. Estes softwares preparam o hardware do computador para operação.
2. Power-On Self-Test (POST)
O BIOS ou UEFI executa um teste de autodiagnóstico chamado Power-On Self-Test (POST) para garantir que todos os componentes de hardware estejam funcionando corretamente. Caso exista algum problema, uma mensagem de erro aparece na tela.
3. Carregamento do bootloader
Se o POST é bem-sucedido, o BIOS ou UEFI carrega o software de bootloader. Por padrão, o bootloader verifica o disco rígido primeiro e, se não encontrar nada, procura por unidades USB ou CDs.
4. Localização do kernel
O bootloader localiza o kernel do sistema operacional, o carrega para a memória e inicia o código do kernel. Os bootloaders comuns incluem Lelo e Grub2.
5. Inicialização do kernel
O kernel assume o controle dos recursos do computador, verifica o hardware, carrega drivers de dispositivo e módulos do kernel, e inicia processos e serviços em segundo plano.
6. Inicialização do sistema
O processo init, normalmente Systemd, assume o controle e se torna o pai de todos os outros processos no Linux. Systemd inicializa o sistema, carrega sistemas de arquivos, inicia serviços em segundo plano e lida com logins de usuário.
7. Configuração do sistema
Systemd usa arquivos de configuração de destino para decidir qual modo de inicialização utilizar, como multi-usuário de dados, multi-usuário de texto ou alvo gráfico.
Em resumo, são esses os passos que transformam o hardware do computador em um sistema Linux funcionando quando você pressiona o botão de ligar.