Quando um computador começa, várias coisas são carregadas na memória, amplamente categorizadas da seguinte forma:
*
BIOS/UEFI: O sistema básico de entrada/saída (BIOS) ou a interface de firmware extensível unificada (UEFI) é a primeira coisa carregada. É firmware residente na ROM (memória somente leitura) e inicializa o hardware, executa o post (autoteste de energia) e carrega o carregador de inicialização.
*
bootloader: Este programa, como Grub ou Systemd-Boot, é carregado pelo BIOS/UEFI. Seu trabalho é localizar e carregar o kernel do sistema operacional.
*
kernel do sistema operacional: O núcleo do sistema operacional (como Linux, Windows, MacOS) é carregado em seguida. Isso inclui drivers essenciais para funcionalidade básica de hardware, gerenciamento de memória, programação de processos e sistema de arquivos.
*
Drivers iniciais: Os drivers para hardware essencial (teclado, mouse, controlador de disco) são carregados ao lado ou imediatamente após o kernel. Isso permite que o sistema operacional interaja com o hardware e continue inicializando.
*
Arquivos de configuração do sistema: O SO carrega arquivos de configuração que definem várias configurações e serviços. Esses detalhes determinam como o sistema é executado, incluindo configurações de rede, contas de usuário e aplicativos de inicialização.
*
Processos essenciais do sistema: Vários processos cruciais para a funcionalidade do sistema operacional são lançados. Isso pode incluir o processo init (responsável por iniciar outros processos), processos relacionados ao gerenciador de janelas ou shell e outros serviços em segundo plano.
É importante observar que não * todos os arquivos * no disco rígido são carregados na RAM na inicialização. Somente os arquivos e programas necessários para a funcionalidade inicial de inicialização e principal são carregados. Outros aplicativos e dados são carregados sob demanda, conforme necessário. O conteúdo exato da RAM na startup varia um pouco, dependendo do sistema operacional e de sua configuração.