INTRODUÇÃO
A produção coletiva de programas de computadores tem seu início na década de 1960,quando programadores buscavam criar sistemas operacionais que rodassem em todas asmáquinas, com aperfeiçoamentos constantes (CASTELLS, 2003). Mas esse comportamentocoletivo sofre grande abalo em 1984, quando da decisão comercial da AT&T de reivindicar direitos de propriedade sobre o sistema operacional UNIX, criado com a colaboração dediversos programadores. A AT&T fechou o código fonte
do UNIX e o sistema passou a ser de propriedade dela. O que parecia uma ruptura no sistema livre de trabalho dosprogramadores entusiastas, acabou desencadeando o movimento do software livre – ummovimento político tecnológico – criado por Richard Stallman, programador do Laboratóriode Inteligência Artificial do Instituto de Tecnologia de Massachussets _MIT, nos EstadosUnidos. Stallmam, junto com um grupo de programadores, começou então nesse momento odesenvolvimento de um novo sistema operacional, baseado no UNIX, que foi nomeado deGNU.Simultaneamente ao desenvolvimento desse sistema, Stallmam cria a Free SoftwareFundation (FSF) e elaborou um esboço jurídico que garante a abertura do código fonte, aplena liberdade de uso, aperfeiçoamento e distribuição dessa tecnologia.Apesar de ter sido criado as condições políticas favoráveis à manutenção e aodesenvolvimento de softwares livres, um dos sistemas centrais do Projeto GNU, o Kernel
HURD, não funcionou como deveria. Em 1991, o estudante Linus Torvalds cria um novokernel para o projeto GNU, que ele chamou de Linux, hoje utilizado em milhões decomputadores, como sistema alternativo às plataformas operacionais de softwaresproprietários.O software livre se caracteriza pelo desenvolvimento colaborativo e pelo livre acessoao código fonte, o que assegura aos seus usuários as quatro liberdades (Silveira, 2004): 1- A
4
É o conjunto de palavras ou símbolos escritos de forma ordenada, contendo instruçõesem uma das linguagens de programação existentes, de maneira lógica. Existemlinguagens que são compiladas e as que são interpretadas. As linguagens compiladas,após ser compilado o código fonte, transformam-se em software, ou seja, programasexecutáveis. Este conjunto de palavras que formam linhas de comandos deverá estardentro da padronização da linguagem escolhida, obedecendo a critérios de execução.Atualmente, com a diversificação de linguagens, o código pode ser escrito de formatotalmente modular, podendo um mesmo conjunto de códigos ser compartilhado pordiversos programas e, até mesmo, linguagens.
5
O Kernel de um sistema operacional é entendido como o núcleo deste ou, numa tradução literal, cerne. Elerepresenta a camada de
software
mais próxima do
hardware
, sendo responsável por gerenciar os recursos dosistema computacional como um todo.
2