O Processo de Boot no Linux

tas

Bem, neste meu primeiro artigo para o Viva o Linux, descreverei os tipos de Boot no Linux e suas etapas.

[ Hits: 25.007 ]

Por: Tadeu Araujo Sales em 08/03/2012


Boot no Linux



Boot é o termo em inglês para o processo de inicialização do computador, que carrega o sistema operacional quando a máquina é ligada, neste artigo, descreverei os tipos de Boot no Linux e suas etapas.

- Boot Manual e Automático:
  • Boot Automático: O sistema executa tudo por sua conta.
  • Boot Manual: O sistema executa até um determinado ponto e passa o controle para um operador do sistema antes da maioria dos scripts serem executados.
Neste momento, o sistema está em modo monousuário. Este modo é utilizado somente se houver algum problema no sistema.

- Etapas do processo de inicialização:
  • Carga e inicialização do kernel;
  • Detecção e inicialização de dispositivos;
  • Criação e inicialização processos espontâneos;
  • Intervenção do operador (somente no modo manual);
  • Execução dos scripts de inicialização do sistema;
  • Operação multiusuário.

Carga e Inicialização do kernel

O kernel é um programa, e a primeira tarefa do Boot é alocar o kernel na memória para executá-lo. O caminho para localizar este programa é: “/vmlinux”, ou: “/boot/vmlinux”.

Durante o primeiro processo, a memória RAM carrega um pequeno programa de Boot procedente do disco. Este programa é responsável para organizar o kernel e fazer seu carregamento.

O kernel efetua alguns testes para verificar quanto de memória está disponível. Neste ponto, o kernel reserva um pouco de memória para algumas estruturas de dados internas.

O kernel imprime na tela a quantidade de memória RAM disponível para o usuário.

Detecção e Inicialização de Dispositivos

Uma das principais tarefas do kernel, é verificar o ambiente da máquina e localizar os dispositivos.

Ao criar um kernel, você informa quais dispositivos ele deve encontrar. Quando o kernel é executado, ele tenta localizar e executar estes dispositivos. A cada dispositivo encontrado, o kernel imprime uma linha criptografada.

Embora alguns dispositivos não sejam localizados completamente, o kernel do Linux faz um verificação sondando o barramento em busca de novos dispositivos.

Os dispositivos que não respondem à sondagem são desabilitados, se algum dispositivo for conectado após este procedimento, o mesmo pode ser carregado ou habilitado durante a execução.

Processos do Sistema

Após a inicialização básica do kernel, são criados processo espontâneos (Fork), no Linux não existe nenhum 'PID 0' visível (INIT é o PID 1).

O INIT, este é acompanhado de vários processos que manipulam a memória tipo: kilushd, kupdate, kpiod, e kswapd.

Destes, somente INIT é realmente um processo, os demais são partes do kernel que por razões de escalonamento, são arrumados para se parecerem um processo.

Depois dos processos serem criados, o papel do kernel no Boot está completado, no entanto, nenhum processo para Login foi criado e nenhum Daemon foi inicializado. Todas estas tarefas serão tratadas pelo processo INIT.

Intervenção do Operador

Se o sistema for iniciado no modo monousuário, o processo INIT recebe uma Flag notificando que ele deve executar o Sulogin, que e um Login mais radical, que executa quase todos os comandos Shell.

Nas distribuições openSUSE e Debian, só existe uma partição Raiz montada, por isso, para utilizar os comando essenciais e os programas em: “/bin /sbin”, ou: “/etc”, estas partições devem ser montadas e verificadas com o comando fsck, que deve ser executado manualmente.

Daemons não executa no modo monousuário, por isso, serviços que precisam de processos servidor, não funcionaram normalmente.

- Execução dos scripts de inicialização do sistema:

No momento que ele estiver pronto para executar os Scripts de inicialização, ele é reconhecidamente Linux. Os Scripts de inicialização são simplesmente Scripts Shell selecionados e executados por INIT através de um Algoritmo.

- Operação multiusuário:

Depois dos Scripts serem inicializados, o sistema está completamente operacional, mas não há nenhum processo de gerenciamento de Login. Então, o INIT é responsável por criar os processos Getty, responsável pelo Login e tornando o Linux multiusuário.

O processo INIT também cria os processos para Logins gráficos XDM e GDM.

Previamente publicado em: http://tas-3110.blogspot.com - Boot no Linux
   

Páginas do artigo
   1. Boot no Linux
Outros artigos deste autor

Runlevel

Leitura recomendada

Compilação do Kernel

Slackware 10.2 com dois kernels na mesma instalação

Kernel 2.6.7 compilado e configurado para nVIDIA

Debian Lenny com Kernel 2.6.28 + Layer7 + Firewall

Ksplice - atualizando o kernel sem necessidade de reboot

  
Comentários
[1] Comentário enviado por albfneto em 08/03/2012 - 13:29h

Bom artigo e assunto interessante. favoritado.

[2] Comentário enviado por Myssbot em 08/03/2012 - 17:51h

Belo Artigo, muito bem explicado.

Vlw por compartilhar!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts