História do GNU/Linux Antes de mais nada, o que é um sistema operacional? Sistema operacional é um software básico que permite aos programas executarem suas tarefas. É o sistema operacional que fornece acesso ao hardware do computador (como a placa de som, placa de rede), a internet, aos arquivos que estão no nosso disco rígido, cdrom etc. “Um Sistema Operacional nunca faz nada sozinho. Ele está apenas esperando pelos programas pedirem por certos recursos ou pedirem por um certo arquivo no disco ou pedirem para serem conectados à internet.” Linus Torvalds O Linux é um sistema operacional clone de Unix criado como uma alternativa barata e funcional para quem não está disposto a pagar o alto preço de um Unix comercial. O Linux é desenvolvido por Linus Torvalds, com suporte à rede nativo, em formato 32 e 64 bits, baseado no formato UNIX de Sistema Operacional, com código­fonte aberto e otimizado para internet, com uso crescente mundialmente, tanto em servidores quanto usuários domésticos (desktops). Ele é executado em diferentes hardwares, que vai desde processadores de família Intel x86 até RISC, passando por PALM e arquitetura Sparc! Mas para enterdemos melhor a origem do Linux e seus avanços, devemos voltar um pouco na História... Origem do Unix UNIX é um sistema operacional portável, multitarefa, multiusuário, disponível para diversas plataformas de hardware originalmente criado por um grupo de programadores da AT&T da Bell Labs, General Electric (GE), que incluem Ken Thompson, Dennis Ritchie, Douglas McIlroye Peter Weiner. Foi criado no final da década de 1960 e início da de 1970, em uma época que os computadores eram grandes, caros e de difícil acesso a pessoas comuns. Na época, vários pesquisadores necessitavam de recursos desses computadores para desenvolverem seus trabalhos, mas os sistemas da época não satisfaziam às necessidades desses profissionais. Era, então, necessário que se criasse um sistema operacional multitarefa, multiusuário pois permite que seja possível executar várias tarefas ao mesmo tempo como vários usuários. Origem do Unix As raízes do Unix datam dos meados dos anos 60, quando a AT&T, Honeywell, GE e o MIT embarcaram em um massivo projeto para desenvolvimento de um utilitário de informação, chamado Multics (Multiplexed Information and Computing Service), que era um sistema modular em uma bancada de processadores, memórias e equipamentos de comunicação de alta velocidade. Em 1969, o projeto estava muito atrasado em relação ao seu cronograma e a AT&T resolveu abandoná­lo, havendo várias razões para a falha do Multics, uma das quais foi ele ser escrito em PL/I, uma linguagem muito pesada, com compilador ineficiente. Neste mesmo ano, Ken Thompson, um pesquisador da AT&T, que havia trabalhado no projeto , resolveu reescrever o Multics, numa versão bem menos ambiciosa, e seu trabalho obteve muito sucesso e com isso outros colegas como Dennis Ritchie, se juntaram a ele, nascendo assim o Unix. Origem do Unix Como a AT&T não estava no mercado de computadores, o Unix foi largamente usado pela própria AT&T e por várias Universidades que também tinham o direito de modificar o sistema. Para novas empresas como a SUN, o Unix se mostrou a maneira ideal de fornecer novas máquinas com tecnologia de ponta. Nessa época, o Unix se tornou o produto mais vendido sob diversas marcas com variações e adaptações dos fornecedores. Isso gerou duas consequências que foram fundamentais para a história do Linux: 1ª Como cada fornecedor fazia suas próprias modificações, acabou havendo uma grande falta de padronização do sistema; 2ª As empresas começaram a comercializar o Unix de tal modo que o preço subiu assustadoramente. Origem do Unix As turbulências do mundo Unix permitiram que, no final dos anos 90, o mercado redescobrisse o Unix através de um de seus “clones”, desenvolvido como reação a política vigente do Unix: o GNU/Linux. Curiosidade Atualmente, Unix (ou *Nix) é nome dado a uma grande família de sistemas operacionais que partilham muitos conceitos dos sistemas Unix originais, sendo todos eles desenvolvidos no padrão POSIX (Portable Operating System Interface). Sistemas operacionais Unix­like (tipo Unix) atuais: Linux Família BSD (FreeBSD, OpenBSD, NetBSD) Solaris, HP­UX, AIX, IRIX Mac OS X Linux: Software Livre Uma das características mais conhecidas no Linux é que ele é livre. Entretanto, nesse contexto a palavra tem um significado ambíguo. Em certo sentido, o Linux é livre pois você pode obtê­lo gratuitamente. Mas o mais importante: ele oferece uma liberdade técnica sem precedentes, ou seja, ele é baseado na licença GPL. Portanto, o termo mais correto a se falar quando falamos do sistema operacional Linux é GNU/Linux. Aquilo a que normalmente nos referimos no singular como o sistema operacional Linux é na realidade uma coleção de ferramentas de software que foram criadas com o propósito expresso de resolver problemas específicos de computação. E aí que entra o projeto GNU... O projeto GNU O início da computação fez avanço por motivos simples: compartilhamento gratuito de idéias e código de programação. Grupos de programadores eram patrocinados por fabricantes e se uniram para resolver problemas complexos. Mas isso com o tempo mudou. O Projeto GNU foi iniciado em 1984, cujo seu grande líder é Richard Stallman, para desenvolver um sistema operacional completo, compatível com o UNIX, que fosse software livre: o sistema GNU. (GNU é um acrônimo recursivo para “GNU Não é UNIX” e é pronunciado como “guh­noo”). Sua grande arma é a licença GPL. A GPL foi criada para preservar 4 liberdades: 1ª) A liberdade de executar o programa, para qualquer propósito; 2ª) A liberdade de estudar como o programa funciona e adaptá­lo para as suas necessidades; 3ª) A liberdade de redistribuir cópias de modo que você possa ajudar ao seu próximo ; 4ª) A liberdade de aperfeiçoar o programa, e liberar os seus aperfeiçoamentos, de modo que toda a comunidade beneficie deles. O projeto GNU O projeto GNU escreveu componentes principais, essenciais mas não excitantes, como o montador (assembler) e o editor de ligação (linker), porque não é possível ter um sistema sem eles. Um sistema completo necessita mais do que simplesmente ferramentas de programação; o Bourne Again Shell e a biblioteca GNU C são igualmente importantes. O desafio do GNU era enorme. Havia a necessidade de desenvolver o kernel (núcleo do sistema operacional que é responsável por controlar o hardware), utilitários de programação, de administração do sistema, de rede, comandos etc. Porém, no final da década de 1980, o projeto tinha “fracassado”: apenas os utilitários de programação e os comandos estavam prontos, e o kernel, não. Nessa mesma época, vários esforços independentes estavam em andamento. O Dr. Andrew Tanenbaum desenvolveu o Minix como instrumento de ensino, baseando­se no microprocessador Intel 8086, por estar bem disponível e com um custo baixo. Surgimento do Linux Linus Torvalds, um aluno da Universidade de Helsinque, na Finlândia, no final da década de 80, estava disposto a construir um kernel clone do Unix. Era um trabalho gigantesco e na prática impossível para apenas uma pessoa concluí­lo, mesmo entendendo muito de sistema operacional. Em 1991, Linus iniciou um projeto particular inspirado no Minix de Tanenbaum. Ele queria criar “um Minix melhor que o Minix”. Depois de um certo tempo conseguiu fazer várias coisas funcionarem e reconhecendo que não conseguiria continuar sozinho desenvolvendo o projeto postou uma mensagem numa lista de discussão: “Você suspira por melhores dias do Minix 1.1, quando os homens serão homens e escreverão seus próprios "device drivers"? Você está sem um bom projeto e está morrendo por colocar as mãos em um S.O. no qual você possa modificar de acordo com suas necessidades? Você está achando frustante quando tudo trabalha em Minix? ... Surgimento do Linux Chega de atravessar noites para obter programas que trabalhem correto? Então esta mensagem pode ser extamente para você? Como eu mencionei a um mês atrás, estou trabalhando em uma versão independente de um S.O. similar ao Minix para computadores AT­386. Ele está finalmente, próximo ao estágio em que poderá ser utilizado (embora possa não ser o que você esteja esperando), eu estou disposto a colocar os fontes para ampla distribuição. Ele está na versão 0.02..., contudo, eu tive sucesso rodando o bash, gcc, gnu­make, gnu­sed, compressão, etc. nele.” Linus Torvalds Em 5 de outubro de 1991, Linus lançou a primeira versão “oficial” do Linux: o Linux 0.02. Depois disso, programadores do mundo todo têm colaborado a fazer o Linux. Destaques do mundo GNU/Linux Richard Matthew Stallman Frequentemente abreviado como RMS é um famoso hacker, fundador do movimento free software , do projeto GNU, e da Free Software Foundation. Um aclamado programador, seus maiores feitos incluem Emacs (e o GNU Emacs, mais tarde), o GNU C Compiler e o GNU Debugger. Ele ainda é o autor da GNU General Public License (GNU GPL or GPL), a licença livre mais usada no mundo, que inaugurou o conceito de copyleft. Tudo começou quando Richard M. Stallman pediu para um fabricante o driver aberto e as especificações do hardware de uma impressora e recebeu um solene não. De tão indignado com a negativa ele resolveu empreender o que seria o início do movimento Open Source. Destaques do mundo GNU/Linux Linus Torvalds Ele foi incluído na lista das 50 maiores personalidades século XX por ser o criador de um sistema operacional código aberto chamado Linux. Esse finlandês é o responsável direto pela quebra do tirânico monopólio da Microsoft, o que terminou elevando­o à categoria de herói da sociedade da informação e figura obrigatória na mídia. Quando em 1991 ele anunciou ao mundo o nascimento do Linux, ninguém podia prever um crescimento tão avassalador para um projeto de Sistema Operacional. Destaques do mundo GNU/Linux John “Maddog” Hall Presidente da Linux International, é uma das personalidades de maior reconhecimento internacional no movimento Linux. De fala mansa, raciocínio, arguto, humor refinado, ele nos mostra que estamos diante de um diplomata tarimbado, de um homem cuja marca é a distinção. Seu trabalho é o de ser um embaixador do Linux, que corre o mundo em reuniões com grandes corporações, instituições e comitês, para consolidar padrões abertos para a indústria, representando os interesses de grandes projetos dessa plataforma. Destaques do mundo GNU/Linux Alan Cox Um dos programadores mais ativos no desenvolvimento do kernel. Cox é o protótipo do hacker no sentido original da palavra, ou seja, uma pessoa que gosta de computadores e dedica sua vida a essas máquinas. Sua sala é abarrotada de micros e periféricos de todos os tipos, doados por fabricantes de hardware do mundo inteiro. Trabalha incansavelmente e a impressão que se tem é de que ele nunca dorme. Bibliografia Linux – Guia do Administrador do Sistema Autor: Rubem E. Pereira Editora: Novatec Manual Completo do Linux (Guia do Administrador) Autor: Evi Nemeth, Garth Snyder, Trent R. Hein Editora: Pearson Books Guia Foca GNU/Linux http://focalinux.cipsga.org.br/ Site do projeto GNU http://www.gnu.org/home.pt.html