segunda-feira, 12 de abril de 2010

A História do Linux



Linux básicamente é um derrivado do sistema Unix e foi criado por Linux Trovald (Lunis + Unix =LINUX) em meados de 1991. Não entrarei em detalhes quanto ao UNIX, mas ele era um projeto que foi cancelado pela Massachusets Institute of Technology (MIT), pela General Eletric (GE) e pelos laboratórios Bell (Bell Labs) e American Telephone na Telegraph (AT&T). Após o cancelamento do Projeto o funcionário Ken Thompsom da Bell labs continuou estudando o sistema e mais tarde ele foi reescrito em C por Dennis Ritchie (proprio inventor da linguagem C).
Linus era um estudante de Ciência da computação da Universidade de Helsinki, na Filândia, que resolveu fazer um SO do zero, apenas por hobbie. O Unix possuia uma versão menor, gratuita e com código Fonte-Aberto, o Minix. Linux queria desenvolver um SO melhor que o Minix.
Para divulgar a ideia, Linus mandou uma mensagem para um grupo da Usernet (antecessora da internet) como podemos ver no final do post. Nessa mensagem, Linus ofereceu a versão 0.02 do Kernel do Linux. O kernel de um SO seria a parte fundamental, que faz a interpretação da linguagem da máquina para o usuário. Na versão 0.02, ainda não era bem um SO, pois ele não podia ser compilado sem o Minix. Ou seja, para usa-lo, você precisava do Minix. E ele não tinha muitas funções ainda. Em 1994 foi lançado a versão 1.0 do Kernel. Até o momento, a versão mais recente é o 2.6.21.
Mas por que o Linux é gratuito?

Linus Torvalds, quando desenvolveu o Linux, não tinha a inteção de ganhar dinheiro e sim fazer um sistema para seu uso pessoal, que atendesse suas necessidades. O estilo de desenvolvimento que foi adotado foi o de ajuda coletiva. Ou seja, ele coordena os esforços coletivos de um grupo para a melhoria do sistema que criou. Milhares de pessoas contribuem gratuitamente com o desenvolvimento do Linux, simplesmente pelo prazer de fazer um sistema operacional melhor.

Licença GPL

O Linux está sob a licença GPL, permite que qualquer um possa usar os programas que estão sob ela, com o compromisso de não tornar os programas fechados e comercializados. Ou seja, você pode alterar qualquer parte do Linux, modificá-lo e até comercialiazá-lo, mas você não pode fechá-lo (não permitir que outros usuários o modifiquem) e vendê-lo.

GNU

A história do Linux não termina aqui. É necessário saber também o que é GNU. GNU é um projeto que começou em 1984 com o objetivo de desenvolver um sistema operacional compatível com os de padrão Unix. O Linux em si, é só um kernel. Linus Torvalds, na mesma época que escrevia o código-fonte do kernel, começou a usar programas da GNU para fazer seu sistema. Gostando da idéia, resolveu deixar seu kernel dentro da mesma licença.

Mas, o kernel por si só, não é usável. O kernel é a parte mais importante, pois é o núcleo e serve de comunicador entre o usuário e o computador. Por isso, com o uso de variantes dos sistemas GNU junto com o kernel, o Linux se tornou um sistema operacional.

Mas você pode ter ficado confuso agora. O que é o Linux então? O que é GNU? Simplesmente, várias pessoas uma versões modificadas dos sistemas GNU, pensando que é o Linux em si. Os programadores que trabalham com ele, sabem que o Linux, é basicamente o kernel, conforme já foi dito, mas todos, chamam esse conjunto de Linux (há quem defenda o uso de GNU/Linux).

Finalizando, o projeto GNU é um dos responsáveis pelo sucesso do Linux, pois graças à �mistura� de seus programas com o kernel desenvolvido por Linus Torvalds, o Linux vem mostrando porque é um sistema operacional digno de habilidades insuperáveis por qualquer outro sistema.

Mensagem de Linus para o grupo na Usernet (traduzido):

Você sente falta dos dias do Minix/1.1 quando homens eram homens e escre-
viam seus próprios drivers? Você está sem nenhum projeto legal e está
ansioso para mexer num sistema operacional que você possa modificar
para atender às suas necessidades? Você está achando chato quando tudo
funciona no minix? Não ficar mais a noite inteira tentando arrumar
um programa legal? Então esta mensagem pode ser para você.

Como eu disse há um mês (?) atrás, eu estou trabalhando numa versão
grátis dum similar para o Minix, para computadores AT-386. Ela
finalmente atingiu o estágio onde já é usável (apesar de talvez
não ser, dependendo do que você quer), e eu estou a fim de colocar
(online) o código fonte para uma distribuição melhor. É apenas a ver-
são 0.02 (com mais um patch) mas eu já rodei bash/gcc/gnu-make/gnu-sed/
compress dentro dela.

Códigos fontes para este hobby meu podem ser encontradas em nic.funet.fi
(128.214.6.100) no diretório /pub/OS/Linux. O diretório também contem
alguns arquivos README e um conjunto de arquivos para permitir
trabalho no Linux (bash, update e GCC, o que mais você queria? :-).
O código-fonte do kernel está disponível por inteiro, porque nenhum
do código do Minix foi usado. Os códigos-fontes das bibliotecas são
apenas parcialmente abertos, portanto não podem ser distribuidos. O
sistema pode compilar "como está" e é provado que funciona. (hehehe)
Código-fonte dos programas (bash e gcc) podem ser encontrados no mesmo FTP
em /pub/gnu.

PERIGO! AVISO! NOTA! Este código fonte ainda precisa do Minix/386 para
compilar (e o gcc-1.4.0, ou o 1.3.7, não testei) e você precisa do Minix
para configurá-lo, então ele ainda não é um sistema por si só para vocês
que não tem o Minix. Eu já estou trabalhando nisto. Você também precisa
ter um jeito hacker (?) para configurá-lo, então para aqueles torcendo
por uma alternativa ao Minix/386, me esqueçam. Ele é atualmente para
hackers com interesse no 386 e no Minix.

O sistema precisa de um monitor EGA/VGA e um disco rígido compatível (IDE
serve). Se você ainda está interessado, pegue no FTP o readme/relnotes
e/ou me mande um e-mail para saber mais.

Eu posso (bem, quase) ouvir vocês perguntando para si mesmos: porquê? O Hurd
vai sair em um ano (ou dois, ou em um mês, quem sabe), e eu já tenho o Minix.
Este é um programa feito por e para hackers. Eu gostei de fazer ele, e alguém
pode começar a olhá-lo e até mesmo modificá-lo às suas necessidades. Ele ainda é
pequeno para entender, usar e modificar, e eu estou otimista em relação a algum
comentário que vocês tenham a fazer.


Eu também estou interessado em alguém que tenha escrito alguns dos utilitários/
bibliotecas para o Minix. Se o seu trabalho pode ser distribuído publicamente
(registrado ou mesmo domínio público), eu gostaria de ouvir comentários de vocês,
e para que eu possa adicioná-los ao sistema. Eu estou usando o Earl Chews estdio
agora mesmo (obrigado, Earl, por um sistema que funciona), e trabalhos similares
seriam bem-vindos. Seus (C)'s obviamente serão mantidos. Me deixe uma mensagem
se você quer deixar que a gente use seu código.

Um comentário:

  1. Parabéns pelo tópicos interessantes e cheios de informações verdadeiras... sucesso para nós nessa empretada!! rsrsrsrs..

    abraço

    ResponderExcluir