O que exatamente queremos dizer quando dizemos que estamos usando o Linux?

8

Eu estava passando por um artigo sobre o GNU que é algo como abaixo

There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine's resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the GNU operating system: the whole system is basically GNU with Linux added, or GNU/Linux. All the so-called “Linux” distributions are really distributions of GNU/Linux.

Eu sempre achei o Linux como um kernel e sistema operacional, mas parece Linux = kernel Linux e GNU OS.

Alguém poderia apontar a funcionalidade exata de cada um na terminologia "Linux" que usamos no nosso dia-a-dia. Além disso, de acordo com o wiki, o design do GNU é do tipo Unix, mas difere do Unix por ser software livre e não conter código Unix. Eu pensei que o Unix é opensource. Não é?

    
por Aniket Thakur 22.08.2013 / 06:40

3 respostas

7

Acredito que a parte que você está se referindo é abordada aqui no site da Free Software Foundation (FSF):

De acordo com a FSF, sua alegação é que o Linux é apenas um Kernel. Um sistema utilizável é composto de um Kernel + as ferramentas como ls , find , shells, etc. Portanto, ao se referir a todo o sistema, ele deve ser chamado de GNU / Linux, já que as outras ferramentas junto com o O Kernel Linux compõe um sistema utilizável completo. Eles até falam sobre o FSF Unix Kernel, Hurd , fazendo argumentos de que o Hurd e o Linux são essencialmente Kernels intercambiáveis para o sistema GNU / X.

Acho o argumento inteiro cansativo e acho que há coisas melhores a fazer com o nosso tempo. Um nome é apenas um nome e o fato de que as pessoas consideram um sistema que inclui o software GNU + o Kernel Linux + outro software não-GNU como Linux ou GNU / Linux uma questão de gosto e realmente não importa no grande esquema de coisas. Na verdade, acho que o argumento faz mais para prejudicar o Linux e o GNU / Linux, fraturando a comunidade e confundindo o público em geral com o que cada coisa realmente é.

Para mais do que você sempre quis saber sobre este tópico, dê uma olhada na Wikipédia intitulada: controvérsia de nomenclatura do GNU / Linux .

Todos os Unixes opensource?

Até onde sei, nem todos os Unixes são opensource. A maior parte da funcionalidade dentro do Unix é especificada para que as coisas funcionem, mas implementações específicas dessa funcionalidade são ou não abertas dependendo de qual distro é uma parte.

Por exemplo, até recentemente o Solaris, um Unix, não era considerado de código aberto. Somente quando os componentes principais da Sun Microsystem foram lançados no projeto OpenSolaris, pelo menos os componentes do Solaris se tornaram open source.

Histórico do Unix

Não sou de forma alguma um especialista neste tópico, por isso, sugiro dar uma olhada na página Unix da Wikipédia para mais sobre o assunto.

Histórico do Linux

Dê uma olhada no diagrama da Linhagem Unix para saber mais sobre quais Unixes são considerados abertos, mistos ou de código fechado.

Eutambémachoo projeto da linha de tempo de distribuição GNU / Linux útil ao ter essa conversa.

    
por 22.08.2013 / 07:06
3

Normalmente, o que geralmente chamamos de Sistema Operacional, é uma combinação de software que envolve um kernel , cujo trabalho é gerenciar os recursos da máquina e alguns aplicativos que são executados sobre o kernel, chamado o userland (isso contém navegadores, compiladores, leitores de pdf, qualquer coisa que não seja o kernel, ou um driver, ou talvez um hypervisor vm).

O restante desta pergunta não pode ser respondido sem algum contexto histórico. Richard Stallman anunciou o Projeto GNU em 27 de setembro de 1983. O objetivo era fornecer o software necessário para desenvolver um UNIX como sistema operacional (e o userland associado) como software livre . Em 1992, o Projeto GNU havia completado quase todas as peças essenciais para o seu software - exceto uma: o kernel. Ao mesmo tempo, Linus Torvalds lançou seu kernel Linux (versão 0.12) como software livre, licenciado sob o Licença GPL . Então, pela primeira vez, seria possível rodar um computador composto (quase) inteiramente de software livre.

O Linux (como mencionado) é um kernel e, embora seja a base última do software que permite a você usar seu computador, não é de muita utilidade sozinho. Você deve emparelhá-lo com algum tipo de aplicativo (userland) para que ele seja executado. Isso é o que as distribuições GNU / Linux, como o Debian ou o Ubuntu, fazem.

Vale a pena mencionar que um kernel é importante e não importante ao mesmo tempo. Permita-me explicar. A maioria das pessoas que usa um computador está acostumada com o userland ao invés do kernel. O kernel é principalmente transparente, e a maioria das pessoas usaria outro kernel com a mesma terra de usuário e talvez nem notasse a diferença (a menos que eles estejam dependendo de um recurso fornecido por um kernel específico) .

Portanto, quando você usa o Linux , você está realmente usando uma realização do sistema operacional GNU; isto é, o kernel Linux e o userland GNU (GNOME, GNU Compiler Collection, depurador GNU, GNU Coreutils, GNU binutils, etc). É por isso que a FSF insiste em chamá-lo de GNU / Linux (na minha opinião, um pedido justo).

Você pode, é claro, usar o Linux sem a userland GNU (dica: Android, Busybox ) e é claro usar a userland GNU no topo de outros kernels (kfreebsd, hurd, etc).

Quanto ao Unix é open source e afins, essa é uma questão que pode envolver um pouco de argumentação. No entanto, você pode encontrar algumas informações úteis aqui

    
por 22.08.2013 / 08:46
2

O kernel do Linux é um programa que contribui com as seguintes funções para o sistema operacional:

linkoriginalparaaimagem: link

O kernel é essencial e, além disso, você tem utilitários e todo o restante do software empacotado. A diferença entre o SO completo e o kernel é igual ao resto do software e como ele é reunido pelos mantenedores da distribuição.

Esses mantenedores não necessariamente fazem todo esse software extra, eles montam e modificam às vezes e juntam tudo para fornecer o que a experiência do Linux é para a maioria das pessoas hoje - eles adicionam o "sabor" por assim dizer e muitas vezes existe uma linhagem para distribuições muito estabelecidas como Debian e Redhat, etc. A questão é que uma proporção significativa dos utilitários e softwares iniciais que são empacotados nas distribuições linux incluem software que foi adaptado do GNU project . Muitos desses softwares foram montados pelo projeto GNU usando seus recursos antes mesmo de o kernel do linux ser inventado. E é grátis e muitos desses softwares ajudaram a construir a popularidade do Linux, já que ambos eram softwares livres e de código aberto, vinculados pela licença GPL. O libc framwework, o Gnome Desktop e o compilador gcc são exemplos de software mantido pelo GNU.

Certamente não é trivial e reconhecendo que não deveria ser tão político, mas há pessoas vocais de ambos os lados e há um debate. Quaisquer que sejam as aplicações práticas, saber mais sobre a história do software nas distribuições que usamos e seus criadores é um esforço válido.

    
por 22.08.2013 / 07:26

Tags