O termo “open source” ficou conhecido em janeiro de 1998, em Palo Alto na Califórnia, quando a Netscape liberou o código fonte de seu navegador de internet Nescape Navigator, na tentativa de frear as investidas da Microsoft no mercado de navegadores de internet até então dominado pelo Navigator.
Um grupo de pessoas formado por Eric S. Raymond, Jon Hall e outros programadores propôs o termo Open Source para designar softwares de código fonte aberto, mas que não eram exatamente livres, como o Navigator, cujo código fonte foi licenciado sob NPL (Netscape Public License), uma licença um pouco restritiva.
Antes disso, apenas o termo “Free Software” (software livre) era mais conhecido, e este já existia desde 1983 com o início do projeto GNU e da criação da Free Software Fundation (FSF), de Richard Stallman.
O Projeto GNU
![]() Reprodução/GNU Richard Stallman, fundador do Projeto GNU e da Free Software Foundation |
Grande parte dos programas de computador já eram vendidos e distribuídos com o código fonte incluso. Com tantos processadores e plataformas diferentes, essa estratégia tornava o programa portável. O usuário poderia assim readaptar o programa para rodar na sua plataforma preferida, de modificando-a também para as suas necessidades pessoais.
Estudantes de programação se beneficiaram muito com isso, já que podiam estudar como o programa havia sido desenvolvido e aprender novas técnicas de programação.
Os efeitos desse modelo de colaboração era que os usuários avançados melhoravam o código fonte dos programas e essas melhorias eram normalmente repassadas para os fabricantes e fornecedores de software, e posteriormente para os outros usuários. Esse modelo de colaboração, entre programadores, foi chamada de Cultura Hacker.
Nos final dos anos 70 e início dos anos 80 a Cultura Hacker ameaçava fragmentar-se. Para evitar que os softwares fossem executados em plataformas concorrentes, muitos fabricantes começaram a não mais distribuir o código fonte junto com o software, e este último passou a vir com direitos autorais (copyrights) e licenças para limitar ou proibir a cópia do software e sua redistribuição.
Prevendo a fragmentação e a extinção da Cultura Hacker, Richard Stallman propôs à comunidade de programadores a criação de uma plataforma de software livre, que fosse portável para qualquer processador/plataforma e que qualquer pessoa teria direito de usar, modificar e redistribuir, como eram feitos os softwares alguns anos antes.
![]() Reprodução Símbolo do GNU |
O projeto juntou os programadores que aceitaram a idéia de Stallman, desenvolvendo de forma colaborativa o Sistema Operacional GNU, o primeiro sistema operacional livre inspirado e compatível com o Unix, criado do zero, sem utilizar partes de código do Unix.
Em 4 de outubro de 1985, Richard Stallman fundou a Free Software Foundation, uma entidade sem fins lucrativos criada para dar suporte ao movimento de software livre e ao Projeto GNU.
O kernel Linux
No início da década de 90, sistema operacional GNU estava quase pronto. Já havia bibliotecas de código, compiladores, um shell, sistema de janelas e editores de texto. Porém, o principal ainda não estava pronto: o kernel.
O kernel é o núcleo de um sistema operacional. É o componente responsável pela comunicação entre os programas e o hardware, criando uma camada de abstração para os programas e gerenciando os recursos da máquina, como memória, espaço em disco, entrada e saída de dados.
O sistema operacional GNU ainda não dispunha de um kernel finalizado e pronto para o uso. Em seu projeto original, o sistema deveria incluir um kernel chamado GNU/Hurd, que foi criado para suportar a maioria das plataformas de processamento que existiam na época e que viessem a existir no futuro. Para que essa portabilidade ocorresse, o Hurd foi desenvolvido de forma modular e complexa, fator que contribuiu para a demora do lançamento de uma versão estável.
![]() Reprodução Linus Torvalds, criador do kernel Linux |
O kernel foi então lançado sob licença GPL (GNU General Public License), o que o tornou legalmente compatível com as bibliotecas e aplicativos da GNU, completando assim provisoriamente o sistema operacional GNU, até que o kernel Hurd estivesse pronto.
O sistema operacional Linux
O kernel Linux acabou ganhando mais popularidade que o projeto GNU, isto fez com que o nome “Linux” fosse usado para designar todo o sistema e não apenas o kernel.
A Free Software Foundation (FSF) recomendou chamá-lo de GNU/Linux para não esquecer de todo o ecossistema de aplicativos “GNU” que compõe o sistema operacional. A diferença de termos entre Linux e GNU/Linux gerou muita discussão na comunidade de software livre.
![]() ©2008 HowStuffWorks Tux, o símbolo do Linux |
Atualmente o GNU/Linux é o sistema operacional mais utilizado em servidores e supercomputadores, sistemas embebidos e desktops de baixo custo, sendo o mais forte concorrente do Microsoft Windows.
Mas o que aconteceu com o Hurd? O kernel original do projeto GNU ainda está em desenvolvimento e suas primeiras versões não estão prontas para uso. Em comparação com o Linux, o Hurd tem poucas pessoas envolvidas em seu desenvolvimento.
O BSD
Enquanto o GNU e o GNU/Linux se destacavam por ser um sistema Unix-like compatível, em termos de código, com a grande maioria de programas para Unix mas sem conter partes de código do Unix e com isso livre de processos legais, o BSD enfrentava um problema com a AT&T (na época, dona dos direitos autorais do Unix) e com a Justiça.
![]() Reprodução Beastie, mascote do projeto FreeBSD |
Por conter partes de código do Unix, o BSD sofreu pressão legal, e seu fonte teve de ser reescrito. Esse atraso fez com que o projeto GNU e o kernel Linux ganhassem mais popularidade e usuários.
Do BSD surgiram duas variações: O FreeBSD e o NetBSD, o primeiro destinado a diversos usos, como Desktops e Servidores e o último focado em portabilidade. Acredite, há torradeiras que são capazes de rodar NetBSD!
![]() Reprodução Torradeira com NetBSD |
Enquanto o GNU/Linux e o projeto GNU reinventaram o Unix inserindo novos padrões de design de sistema operacional, os BSDs se caracterizam por seguir à risca todos os padrões do Unix, porém nenhum deles pode ser legalmente chamado de Unix.
O nome Unix é marca registrada da The Open Group, instituição que provê vários testes para garantir se um sistema operacional pode ou não ser chamado de Unix. Tanto o FreeBSD, quanto o NetBSD e o OpenBSD passariam nesses testes, porém os projetos não dispõem de recursos financeiros para realizá-los. Dessa forma, o termo Unix-like foi o escolhido para especificar o tipo de sistema operacional.
A sigla BSD também é usada como referência a programas que usam a licença BSD, que em comparação à GPL da GNU é muito menos restritiva. A licença BSD permite, entre outras coisas, que a empresa que desenvolve um software proprietário possa utilizar código BSD como base sem ter a obrigação de devolver para a comunidade as novas alterações por ele desenvolvidas. A única obrigação da empresa seria apenas, em algum lugar do software, colocar as notas de copyrights dizendo de onde o software se originou e que partes de código ele utiliza.
Já para a GPL, se um software usa código GPL desenvolvido pela comunidade, todo o software deve ser GPL, garantindo assim à comunidade todas as alterações que forem feitas por empresas e o direito infinito de alterar e redistribuir o software nessas condições.
A licença BSD permitiu que o código fonte do protocolo TCP/IP fosse utilizado em sistemas operacionais proprietários e abertos, cada qual alterando a sua licença, e o sistema BSD usado como subsistema do Mac OS X, da Apple.
![]() Reprodução Gráfico exibe as descendências dos sistemas operacionais Unix-like |