Sobes.tech
Middle

Como ocorre o processo de carregamento do sistema operativo Linux?

sobes.tech IA

Resposta da IA

  1. BIOS/UEFI: Inicialização do hardware, verificação de periféricos, seleção do dispositivo de arranque.

  2. MBR/GPT: Leitura do conteúdo do registo de arranque principal (MBR) ou da tabela de partições GUID (GPT) do dispositivo de arranque.

  3. Bootloader (GRUB, LILO): Carregamento do carregador de arranque. Exibição do menu do carregador (se disponível), seleção do núcleo e do initramdisk.

  4. Kernel: Carregamento do núcleo do sistema operativo na memória. Inicialização do hardware, montagem do sistema de ficheiros raiz.

  5. Initial Ramdisk (initrd/initramfs): Carregamento do sistema de ficheiros raiz temporário na memória. Execução de scripts para detectar hardware e preparar a montagem do sistema de ficheiros raiz real.

  6. Root Filesystem: Montagem do sistema de ficheiros raiz real, definido nos parâmetros do núcleo ou no initrd/initramfs.

  7. Init System (SysVinit, systemd): Início do sistema de inicialização. systemd é mais moderno e amplamente utilizado.

    • SysVinit: Início de serviços baseado em níveis de execução.
    • systemd: Início de serviços em paralelo baseado em unidades (services, targets, etc.).
    # Exemplo de unidade systemd
    [Unit]
    Description=My Application Service
    After=network.target
    
    [Service]
    ExecStart=/usr/local/bin/my-app
    Restart=on-failure
    
    [Install]
    WantedBy=multi-user.target
    
  8. Runlevel/Target: Transição para o nível de execução correspondente (SysVinit) ou estado alvo (systemd), iniciando os serviços necessários (serviços de rede, interface gráfica, etc.).

  9. Login Prompt/Display Manager: Início da interface para login do utilizador (terminal) ou do gestor de login gráfico (GDM, LightDM, etc.).

  10. User Login: O utilizador faz login no sistema. A sessão do utilizador inicia-se.