Arquitetura do Linux
Índice
- Introdução
- Kernel
- Biblioteca de funções padrão
- Shell
- Aplicações
Introdução a Arquitetura Linux
A arquitetura do sistema operacional #Linux é subdividida em hardware, Kernel, Biblioteca de funções padrão, Shell e Aplicações, conforme demonstra a imagem a seguir.
Principais Componentes da Arquitetura Linux
O Hardware é o componente que representa a camada física. Os demais componentes são descritos nos próximos tópicos.
Kernel
A camada responsável pela interface entre o hardware e as aplicações. Como próprio nomo diz, kernel (kernel é a palavra núcleo em inglês) é o núcleo responsável¹ pelas funções essenciais e necessárias para o funcionamento do Sistema Operacional.
¹ O Linux é monolítico, isso é: as funções do núcleo são executadas no espaço de núcleo.
Ao contrário de muitos outros sistemas operacionais, o Linux permite modificações em seu kernel, para habilitarmos e desabilitarmos funcionalidades, conforme a necessidade. Tal função gera benéficos em ganho de performance, pois a medida que customiza, o usuário torna o kernel enxuto e adaptável.
Resumo das principais funções do kernel:
- Detecção de hardware.
- Gerenciamento de entrada e saída.
- Manutenção do sistema de arquivos.
- Gerenciamento de memória e swapping
- Controle da fila de processos
Biblioteca de funções padrão
É a camada que permite o acesso a recursos através da execução de chamadas feitas por processos. Tais chamadas são geradas por funções padrão suportadas pelo kernel.
Resumo das principais funções da biblioteca de funções padrão:
- Habilitar funções padrão como open, read, write e close
- Mante a comunicação entre as aplicações e o kernel
Shell
O Shell é um processo que executa funções de leituras de comandos de entrada de um terminal, interpreta estes comandos e gera novos processos, sempre que requisitados. É conhecido também como interpretador de comandos.
O Shell exibe é quem exibe mensagem sinalizando que o Sistema Operacional está pronto ler e executar comandos (da mesma forma que acontece com o DOS, por exemplo, quando exibe a linha de interpretação de comando c:>). Quando o usuário digita um comando, o interpretador identifica o programa, procura pelo arquivo com o mesmo nome do programa e então inicia sua execução.
Resumo das principais funções do Shell:
- Lê e interpreta comandos
- Cria novos processos à medida que são requisitados
Aplicações
A camada mais conhecida e mais próxima do usuário comum. Aplicações são programas com os quais interagimos ao usar o sistema operacional #Linux.
- editores de texto
- browser de navegação web
- editores de mídias
- compiladores
- softwares de administração do SO
- gerenciadores de arquivos
- dentre outros