Linux não é apenas Linux 8 PCs de software que compõem os sistemas Linux
Distribuições Linux não são apenas o kernel do Linux. Todos eles contêm outros softwares críticos, como o gerenciador de inicialização Grub, shell Bash, utilitários de shell GNU, daemons, servidor gráfico X.org, um ambiente de desktop e muito mais..
Todos esses programas diferentes são desenvolvidos por diferentes grupos de desenvolvimento independentes. Eles são combinados por distribuições Linux, onde eles constroem um sobre o outro para criar um sistema operacional "Linux" completo. Isso é diferente do Windows, que é desenvolvido inteiramente pela Microsoft.
Bootloader
Quando você liga o computador, o firmware do BIOS ou do UEFI do computador carrega o software do seu dispositivo de inicialização. O primeiro programa que carrega com qualquer sistema operacional é o gerenciador de inicialização. Com o Linux, este é geralmente o gerenciador de inicialização do Grub.
Se você tem vários sistemas operacionais instalados, o Grub oferece um menu que permite escolher entre eles - por exemplo, se você tiver o Linux instalado em uma configuração de inicialização dupla, poderá escolher Linux ou Windows quando inicializar.
O Grub pode inicializar seu sistema Linux quase instantaneamente se você tiver apenas um sistema operacional instalado, mas ele ainda está lá. O Grub lida com o processo de inicializar o Linux, emitindo opções de linha de comando e permitindo que você inicialize o Linux de outras maneiras para solução de problemas. Sem um gerenciador de inicialização, uma distribuição do Linux simplesmente não inicializaria.
O kernel do Linux
A parte precisa do software Grub boots é o kernel do Linux. Esta é a parte do sistema que na verdade é chamada de “Linux”. O kernel é o núcleo do sistema. Ele gerencia seus dispositivos de CPU, memória e entrada / saída, como teclado, mouse e monitores. Como o kernel fala diretamente ao hardware, muitos drivers de hardware fazem parte do kernel Linux e rodam nele.
Todos os outros softwares são executados acima do kernel. O kernel é o software de nível mais baixo, que faz interface com o hardware. Ele fornece uma camada de abstração acima do hardware, lidando com todas as peculiaridades de hardware, de modo que o resto do sistema possa se importar com elas o mínimo possível. O Windows usa o kernel do Windows NT e o Linux usa o kernel do Linux.
Daemons
Os daemons são essencialmente processos em segundo plano. Eles geralmente começam como parte do processo de inicialização, então eles são uma das próximas coisas que são carregadas após o kernel e antes de você ver sua tela gráfica de login. O Windows refere-se a esses processos como “serviços”, enquanto sistemas semelhantes ao UNIX se referem a eles como “daemons”.
Por exemplo, o crond, que gerencia tarefas agendadas, é um daemon - o d no final significa “daemon”. Syslogd é outro daemon que tradicionalmente gerencia seu log de sistema. Servidores, como o servidor sshd, são executados como daemons no segundo plano. Isso garante que eles estejam sempre em execução e ouvindo conexões remotas.
Daemons são essencialmente apenas processos em segundo plano, mas são processos em nível de sistema que você geralmente não percebe.
A concha
A maioria dos sistemas Linux usa o shell Bash por padrão. Um shell fornece uma interface de processador de comandos, permitindo que você controle seu computador digitando comandos em uma interface de texto. Shells também podem executar scripts de shell, que são uma coleção de comandos e operações executados na ordem especificada no script.
Mesmo se você estiver usando apenas uma área de trabalho gráfica, os shells estão em execução e sendo usados em segundo plano. Quando você abre uma janela de terminal, você vê um prompt de shell.
Utilitários da Shell
O shell fornece alguns comandos internos básicos, mas a maioria dos comandos do shell que os usuários do Linux usam não está embutida no shell. Por exemplo, comandos tão críticos quanto o comando cp para copiar um arquivo, o comando ls para listar arquivos em um diretório e o comando rm para excluir arquivos fazem parte do pacote GNU Core Utilities..
Os sistemas Linux não funcionariam sem esses utilitários críticos. De fato, a própria shell Bash é parte do projeto GNU. É por isso que tem havido controvérsia sobre se o Linux deveria realmente ser chamado de “Linux” ou “GNU / Linux”. Críticos do nome “Linux” apontam corretamente que muito mais software entra em sistemas Linux típicos, o que geralmente não é reconhecido. Críticos do nome “GNU / Linux” apontam corretamente que um sistema Linux típico também inclui outros softwares críticos que o nome “GNU / Linux” não inclui..
Nem todos os utilitários de shell e programas de linha de comando são desenvolvidos pelo projeto GNU. Alguns comandos e programas de terminal têm seu próprio projeto dedicado a eles.
Servidor Gráfico do X.org
A área de trabalho gráfica do Linux não faz parte do kernel do Linux. É fornecido por um tipo de pacote conhecido como "servidor X", pois implementa o "sistema X window" que surgiu há muitos anos.
Atualmente, o servidor X mais popular - ou servidor gráfico - é o X.org. Quando você vê uma janela de login gráfica ou área de trabalho aparecer, o X.org está trabalhando sua mágica. Todo o sistema gráfico é executado pelo X.org, que faz interface com sua placa de vídeo, monitor, mouse e outros dispositivos.
O X.org não fornece o ambiente de área de trabalho completo, apenas um sistema gráfico que os ambientes de área de trabalho e os kits de ferramentas podem construir em cima de.
Ambiente de trabalho
O que você realmente está usando em um desktop Linux é um ambiente de desktop. Por exemplo, o Ubuntu inclui o ambiente de desktop Unity, o Fedora inclui o GNOME, o Kubuntu inclui o KDE, e o Mint geralmente inclui o Cinnamon ou o MATE. Esses ambientes de área de trabalho oferecem tudo o que você vê - o plano de fundo da área de trabalho, painéis, barras de título da janela e bordas.
Eles também geralmente incluem seus próprios utilitários criados para se adequarem ao ambiente de desktop como um todo. Por exemplo, o GNOME e o Unity incluem o gerenciador de arquivos Nautilus desenvolvido como parte do GNOME, enquanto o KDE inclui o gerenciador de arquivos Dolphin desenvolvido como parte do projeto KDE..
Programas de Desktop
Nem todo programa de desktop faz parte de um ambiente de desktop. Por exemplo, o Firefox e o Chrome são agnósticos em ambiente de desktop. Eles são apenas programas que podem ser executados normalmente em qualquer ambiente de desktop. O OpenOffice.org é outro conjunto de programas que não está ligado a um ambiente de desktop específico, seja.
Você pode executar qualquer programa de desktop Linux em qualquer ambiente de desktop, mas aqueles projetados para determinados ambientes de desktop podem parecer fora de lugar ou arrastar em outros processos. Por exemplo, se você tentou executar o gerenciador de arquivos Nautilus do GNOME no KDE, ele pareceria fora de lugar, exigiria que você instalasse uma variedade de bibliotecas GNOME e, provavelmente, iniciasse os processos da área de trabalho GNOME em segundo plano ao abri-lo. Mas seria executado e seria utilizável.
As distribuições do Linux executam as etapas da última etapa. Eles pegam todo esse software, combinam-no para funcionar bem juntos e adicionam seus próprios utilitários necessários. Por exemplo, as distribuições criam seus próprios instaladores do sistema operacional para que você possa instalar o Linux, bem como os gerenciadores de pacotes para instalar software adicional e manter seu software instalado atualizado.
Crédito de imagem: tao mai no Flickr