O que é um kernel, o que é um sistema operacional? Você sabe a diferença?
Um sistema operacional é um conjunto de software que faz um computador funcionar. É o pilar de todos os programas do computador, permitindo que estes (outros) programas possam ser instalados e executados. Sem um sistema operacional, você não poderia usar um computador.
Um kernel é o componente mais importante de um sistema operacional. Para que o sistema funcione, ele precisa de um kernel. A tarefa do kernel é de lidar com o hardware e administrar o uso dos recursos do computador (alocação de memória, acesso ao disco, uso de periféricos...). O kernel se situa entre o hardware e o software sendo executado.
Os outros software que são essenciais para que um sistema operacional seja completo são: interfaces gráficas, drivers, compiladores, administradores de arquivo, ferramentas de desenvolvimento, calculadora, editor de texto, jogos... Um sistema operacional não é um software claramente definido, é simplesmente um conjunto de software. Existem vários pontos de vista sobre qual software deve ser considerado como parte de um sistema operacional e qual não deve. O que a maioria das pessoas concorda porém é que o sistema como um todo é um conjunto de software que faz o computador funcionar.
Na maioria dos casos, não há razões para diferenciar o sistema operacional do seu kernel. Porém é necessário fazer esta distinção para diferenciar o Linux do GNU/Linux. De fato, o Linux não é um sistema operacional propriamente dito, ele é um kernel. Apesar disso, é muito comum chamar os sistemas operacionais baseados em Linux de “Linux”. O GNU/Linux é um sistema operacional que combina o kernel Linux com os programas do GNU. Por sua vez, o GNU também não é um sistema operacional pois não possui um kernel em estado de funcionamento. O projeto GNU chegou a desenvolver um kernel chamado HURD mas ele não é suficientemente estável para que o GNU possa ser um sistema operacional completo. Existem também pontos de vista distintos sobre o assunto. Richar Stallman considera que o GNU é um sistema operacional completo enquanto que Linus Torvalds acha que o Linux é um sistema operacional completo. (A tragédia humana por trás do Software Livre).
Aquilo que a maioria das pessoas chamam de “Linux” é na verdade um sistema operacional “GNU/Linux”. Por exemplo: Debian, Ubuntu ou Fedora são sistemas GNU/Linux. Por outro lado, o Android é um sistema operacional baseado no Linux (kernel) mas não é um sistema GNU/Linux... e por sinal, ninguém o chama de Linux.
A pesar do fato que a maior parte do código de uma plataforma GNU/Linux seja escrita para o GNU, o nome Linux é, de longe, o mais popular. É um pouco como chamar o nosso planeta de “Terra” embora que, ao observar que 70% do nosso planeta é coberto por oceanos, o nome “Água” seria mais apropriado.
Leia também:
Wikipedia - Sistema operacional
Wikipedia - Kernel
A diferença entre GNU e Linux segundo Gnu.org
Linux Torvalds não concorda com o termo "GNU/Linux"


Comentar