7 de abril de 2010

Linux É "Linux"!

Há muita confusão desnecessária com o nome Linux. Criou-se uma pseudo-correção descabeçada que fez surgirem os tais: "Unix-like", "sistemas Unix", "Compatível com Unix", "Unix-family", "Posix" e "GNU/Linux".

Vamos desatar esses nós.

UNIX Bla-Bla-Bla
-----------------------
Linux foi desenvolvido baseado em Unix (pelo Minix) e com intuito de ser compatível com ele, o que não significará que ele é subproduto do Unix.

Você por acaso já ouviu alguém falar "QDOS-like" em vez de Windows, ou "Unix-like" em vez "Mac OS"?

Pois então, também não faz sentido chamar o filho do mesmo nome do pai. O Filho já cresceu, se tornou maior que o pai, de modo que a família a qual pertence Linux não é o mesmo que o nome próprio "Linux" -- o qual justamente o distingue dos demais sistemas derivados do Unix.

Esse uso só seria aceitável em casos bem restritos de aplicativos desenvolvidos para toda a família Unix, e mesmo assim seria melhor designar primeiro o sistema mais conhecido: "Desenvolvido para Linux (ou Unix-like)" ou ainda "Linux-like".

POSIX
---------
Esse aqui é ainda escabroso. Em Python se você invocar "os.name" em cima de Linux ele vai retornar "posix", mas POSIX é o nome de um conjunto de normas de interface destinada à família Unix, e jamais sinônimo de Linux, ou pior, o "nome" do sistema operacional.

GNU/LINUX
-------------------
Quem inventou esse nome foi Stallman na tentativa de se creditar ao projeto GNU o desenvolvimento de grande parte dos aplicativos de gerenciamento que rodam em cima do kernel (núcleo) de Linux.

Bem, esse nome é até aceitável. Ele envolve uma discussão abstrata e pouca precisa sobre terminologias.

Estamos certos de que o projeto GNU é importante, mas nos parece que ao criar mais um nome confuso para Linux acaba-se por atrapalhar a própria propagação dos aplicativos GNU, vez que atrapalham o fomento à adoção de Linux.

2 comentários:

semente disse...

Algumas ressalvas:

1. UNIX-like é diferente de UNIX. Chamar um sistema do tipo UNIX não é errado.

UNIX foi um sistema operacional que criou um ecossistema em torno dele. Tornou-se um modelo para vários sistemas "UNIX-like".


2. No Python, a variável os.name utiliza 'posix' para todos os sistemas cuja a interface ao sistema operacional pertence ao padrão C e POSIX. Outros nomes para os.name são: 'nt', 'os2', 'ce' e 'riscos'. Você realmente não irá ver aqui Windows, Mac OS X, etc. Não julgue uma variável pelo seu nome. :-P

3. A questão do nome GNU/Linux pode ser questão de interpretação ou gosto. Eu por exemplo acho muito errado dizer "kernel (núcleo) de Linux". O Linux por si só é o kernel. Kernel do Linux é meio contraditório, não?

O ponto principal dessa discussão está em: o que é um sistema operacional?

O Kernel Linux por si só não possui funcionalidade prática alguma, porém alguns o consideram como um sistema operacional de acordo com definições técnicas bastante convincentes. Por outro lado, outras pessoas também com definições técnicas bastantes convincentes não consideram o Linux como um sistema operacional completo.

O Kernel Linux com o conjunto de aplicativos GNU o tornam funcional, daí a idéia do sistema GNU/Linux.

Você pode tomar como parâmetro de comparação o Debian GNU/kFreeBSD, que é uma distribuição do sistema operacional GNU + kernel do FreeBSD.

Eu sou da opinião que o nome GNU/Linux é mais correto que apenas Linux para se referir ao sistema operacional GNU + Linux. Se tornou comum o uso de apenas "Linux", o que eu não reprovo por completo.

Bom, para polemizar ainda mais, se o Mac OS X rodasse sob Linux você o chamaria de Linux?

Para refletir: o sistema operacional Android, que utiliza o kernel Linux não é um sistema GNU pois não utiliza os componentes GNU, mas uns próprios desenvolvido pelo Google. Deveríamos chamar o Android de Linux? Android/Linux? Android?

Bom, sempre será um assunto polêmico. Eu continuarei usando meu sistema GNU, hoje com kernel Linux, amanhã talvez continue com Linux, ou com kFreeBSD, Hurd ou o mais apropriado na época.

Francisco Souza disse...

Eu já ouvi falar e chamo o Mac de Unix-like, pois ele é UNIX-like. Como o semente disse, não é sobre ser derivado com o UNIX, mas ser "like UNIX" :)