You are on page 1of 7

Introduo: Uma breve histria do Linux

O sistema operacional o responsvel por ativar todos os perifricos e criar o ambiente sobre o qual todos os outros programas rodam. ele o responsvel por reservar processamento suficiente para que o MP3 que voc est ouvindo em background continue sendo tocado mesmo quando voc precisa abrir outro aplicativo pesado, ou por transferir programas e bibliotecas sem uso para a memria virtual quando a memria principal est quase toda ocupada, por exemplo. Isso faz com que o trabalho do sistema operacional seja uma atividade inglria, j que voc s se lembra dele quando alguma coisa d errado. :) Para tristeza de alguns e alegria de outros, o Windows o sistema operacional mais usado em desktops, o que faz com que ele seja a plataforma mais familiar para a maioria. Muitas tarefas so complicadas (experimente tentar encontrar drivers para alguma placa-me antiga, por exemplo), mas, como muita gente usa e muitos passam pelos mesmos problemas, acaba existindo uma rede de suporte em torno do sistema. O domnio da Microsoft na rea de sistemas operacionais comeou em 1981, com o lanamento do primeiro PC e da primeira verso do MS-DOS. Embora no tivesse nada de especial com relao a outros sistemas da poca, o DOS cresceu em popularidade junto com os PCs, seguido pelas diversas verses do Windows. Apesar disso, a Microsoft uma pgina recente na histria da informtica. Enquanto o MS-DOS ainda dava seus primeiros passos, o Unix j era um sistema maduro, usado na maioria dos computadores de grande porte e em estaes de trabalho. A histria do Unix comeou em 1969, na frente de um computador igual a este:

Este um PDP-7, um "minicomputador" da dcada de 1960 que possua apenas 8 kbytes de memria RAM e utilizava fitas magnticas para o armazenamento de dados. Hoje em dia, qualquer agenda eletrnica ou celular possui muito mais memria e poder de processamento do que ele, mas na poca era um equipamento relativamente poderoso, que custava US$ 72.000. Devido s pesadas limitaes da mquina, o sistema operacional deveria ser extremamente enxuto e otimizado, de forma a extrair o mximo de desempenho e consumir o mnimo possvel de memria. A combinao da criatividade dos desenvolvedores, a necessidade e as limitaes impostas pelo equipamento, resultou em um sistema bastante otimizado e elegante. Muitas das idias surgidas nessa poca continuam sendo usadas at hoje. O Unix evoluiu durante a dcada de 1970, passando a ser usado em cada vez mais equipamentos e ganhando mais recursos. Quase sempre ele era usado em aplicaes "srias", incluindo instalaes militares, bancos e outras reas onde no existe margem para falhas. Devido a tudo isso, o sistema se tornou muito robusto e estvel. Os primeiros sistemas Unix foram desenvolvidos de forma colaborativa, dentro de universidades e centros de pesquisa. Embora naquela poca ainda no existisse a Internet como a conhecemos hoje, existia uma grande colaborao entre os desenvolvedores. Isso mudou na dcada de 1980, quando empresas como a AT&T, Sun e SCO, que detinham os direitos sobre o sistema, passaram a desenvolver verses proprietrias e a concorrerem

entre si. A colaborao deixou de acontecer e a plataforma foi fragmentada em verses incompatveis. Outro fator importante foi a falta de investimento em verses destinadas a micros PCs. Na poca, os PCs eram vistos como computadores muito limitados, incapazes de rodar sistemas Unix completos (lembre-se de que estou falando do incio da dcada de 1980, quando ainda eram usados micros XT e 286). Somados, estes dois fatores fizeram com que a plataforma definhasse, deixando o caminho livre para o crescimento da Microsoft e das diferentes verses do Windows. Chegamos, ento, ao Linux. Tudo comeou em 1991, quando Linus Torvalds comeou a trabalhar no desenvolvimento de um sistema Unix para rodar em seu 386. Na poca, o nico sistema similar era o Minix, um sistema operacional para uso acadmico, que era bastante limitado. No incio, Linus usava o Minix para rodar o editor, compiladores e outras ferramentas de desenvolvimento que utilizava para desenvolver o kernel Linux, mas, a partir de um certo ponto, ele passou a usar o prprio Linux. Ou seja, depois de um breve perodo de encubao dentro do Minix, o Linux passou a ser desenvolvido dentro do prprio Linux. :) De incio, o kernel Linux era um projeto muito pequeno, o hobby de um nico programador. Entretanto, ele tinha uma grande vantagem em relao aos sistemas UNIX que o precederam: o simples fato de ser disponibilizado sob a licena GPL. Isso permitiu que outros programadores adotassem o projeto, passando a contribuir com melhorias e correes. Subitamente, toda a demanda acumulada em relao a um sistema Unix para micros PC foi canalizada em torno do Linux, fazendo com que o sistema passasse a crescer em um ritmo cada vez mais acelerado, chegando ao que temos nos dias de hoje. A licena GPL, to comentada, mas ao mesmo tempo to mal-

compreendida, pode ser resumida em 4 direitos bsicos e uma obrigao: 1- Aplicativos disponibilizados sob a GPL podem ser usados por qualquer um e para qualquer fim, sem limitaes. Mesmo que eventualmente os criadores mudem de ideia e resolvam passar a distribuir novas verses do programa sob outra licena, as verses que foram distribudas sob a GPL continuam disponveis, o que permite que outros desenvolvedores criem uma derivao e continuem o desenvolvimento. Isso traz uma boa dose de segurana para quem usa o aplicativo, j que reduz a chance de ele ser descontinuado e ficar indisponvel. Enquanto houver um volume

considervel de usurios interessados no aplicativo, bem provvel que o desenvolvimento continue, de uma forma ou de outra. 2- Direito de tirar cpias do programa, distribu-las ou at mesmo vend-las a quem tiver interesse. Existe a possibilidade de ganhar algum dinheiro vendendo CDs gravados, por exemplo, mas como todo mundo pode fazer a mesma coisa, preciso vender por um preo relativamente baixo, cobrando pelo trabalho de gravao e no pelo software em si, que est largamente disponvel. Isso faz com que a forma mais eficiente de ganhar dinheiro com os softwares seja prestar suporte e vender servios de personalizao e no com a venda direta, como no caso dos softwares comerciais. Para o cliente, acaba sendo vantajoso, pois o custo de implantao ser o gasto com a consultoria e treinamentos, enquanto ao implantar um software comercial qualquer, ele gastaria tambm com as licenas de uso. 3- Direito de ter acesso ao cdigo fonte do programa, fazer alteraes e redistribu-las. Para um programador este o principal atrativo, j que permite criar novos projetos usando como base o cdigo fonte de programas j existentes (ao invs de ter sempre que comear do zero), sem falar na grande oportunidade de aprendizado que examinar o cdigo fonte de outros programas propicia. 4- Direito (e ao mesmo tempo a obrigao) de redistribuir as modificaes feitas. Este o ponto onde existem mais mal-entendidos. Se voc desenvolve um software por hobby, ou para us-lo internamente na sua empresa, e no possui interesse em explor-lo comercialmente, voc pode simplesmente divulgar o cdigo fonte para todo mundo, o que o caminho mais lgico se voc pretende atrair outros interessados em ajud-lo no desenvolvimento. Mas, caso voc pretenda receber pelo seu trabalho de desenvolvimento, existem duas opes: a) Voc pode distribuir o software livremente para aumentar a base de usurios e ganhar vendendo suporte, treinamentos e personalizaes. b) Voc s obrigado a distribuir o cdigo fonte a quem obtm o software, de forma que voc pode trabalhar batendo de porta em porta, vendendo o software para alguns clientes especficos e fornecendo o cdigo fonte apenas para eles. No existe nada de errado com este modelo, mas voc perde a possibilidade de ter contribuies de outros desenvolvedores, o que pode ser ruim a longo prazo.

Os softwares distribudos sob a GPL tambm no "contaminam" softwares comerciais ou de outras licenas no caso de distribuio conjunta. Por exemplo, uma revista pode distribuir alguns softwares GPL no meio de um monte de aplicativos proprietrios na mesma edio. Os softwares GPL continuam sendo GPL, com todas regras que vimos acima, enquanto os softwares proprietrios continuam sendo fechados. A revista deve incluir o cdigo fonte dos aplicativos GPL (ou pelo menos a informao de como obt-los via Internet) mas, naturalmente, no precisa fazer o mesmo com os outros aplicativos includos no CD. Voc pode tambm usar algum software GPL em conjunto com o seu aplicativo comercial, desenvolvendo um aplicativo qualquer que utiliza o Postgree SQL (um servidor de banco de dados), por exemplo. O Postgree SQL continua sendo GPL e o seu aplicativo continua sendo fechado; qualquer um pode usar e tirar cpias do Postgree SQL, mas voc controla a distribuio do seu aplicativo. Uma coisa no interfere com a outra. Ou seja, muito embora alguns vejam a GPL como algum tipo de licena comunista, que diz que todos os programadores devem fazer voto de misria e passar a trabalhar de graa em nome do bem comum, ela na verdade apenas uma licena que estimula a colaborao e o reaproveitamento de softwares e componentes, e que vem nos trazendo diversas mudanas positivas. De certa forma, podemos dizer que a GPL uma licena at bastante capitalista (no bom sentido), pois estimula a concorrncia entre projetos e empresas e dificulta a criao de monoplios, que so ruins para o sistema econmico. Voltando histria, embora o kernel seja o componente mais importante do sistema (e tambm o mais complexo), ele no o nico. Qualquer sistema operacional moderno a combinao de um enorme conjunto de drivers, bibliotecas, aplicativos e outros componentes. O kernel apenas uma base sobre a qual todos eles rodam. Alm do perodo de incubao dentro do Minix, o Linux se beneficiou de diversos outros projetos anteriores, tais como o X (responsvel pela interface grfica) e inmeros utilitrios, bibliotecas, linguagens de programao, compiladores e assim por diante. A eles se soma uma grande lista de interfaces e aplicativos que surgiram nos anos seguintes, tais como o GNOME, o KDE, o Firefox e o OpenOffice. Entre as ferramentas usadas desde os primeiros dias, esto o Emacs e o GCC, desenvolvidos pela Free Software Fundation, como parte do projeto GNU. O Emacs um editor de texto que combina uma grande quantidade

de recursos e ferramentas teis para programadores, enquanto o GCC o compilador que permite transformar o cdigo escrito nele em arquivos executveis. Isso deu origem a uma das maiores flame-wars da histria da informtica, com Richard Stallman passando a exigir o uso do termo "GNU/Linux" (que pronunciado como "gu-nuu isslchi Linux") para designar o sistema, em vez de simplesmente "Linux", argumentando que o projeto GNU foi iniciado antes e que por isso merece crdito. Este um caso em que as opinies se dividem, com alguns dando razo ele e realmente usando o "gu-nuu isslchi Linux" (ou "gun barra Linux", que a verso aportuguesada), e outros argumentando que os componentes do projeto GNU correspondem a apenas uma pequena parte do sistema e que por isso se fosse para dar o crdito devido a todos os inmeros componentes que formam uma distribuio atual, seria preciso chamar lista.../GNU/Linux. O fato que, excluindo qualquer discusso filosfica, o nome "Linux" puro e simples muito mais fcil de pronunciar, o que faz com que o "GNU/Linux" no seja usado fora de alguns crculos especficos. Continuando a histria, embora o Linux tenha sido originalmente o sistema de X/Qt/KDE/GTK/GNOME/Mozilla/Firefox/OpenOffice/...longa-

desenvolvido para ser usado em micros PC (mais especificamente no 386 que Linus Torvalds usava em 1991), a modularidade do sistema, o fato de ele ter sido escrito inteiramente em C e as boas prticas empregadas no desenvolvimento permitiram que ele ganhasse verses (ou ports) para outras plataformas. Hoje em dia, o Linux roda em praticamente todo o tipo de sistemas: de PCs domsticos equipados com chips de 32 ou 64 bits, a equipamentos especializados, usados em maquinrio industrial. Existe at mesmo um fork do kernel Linux que capaz de rodar em processadores 8088 e 286 (o ELKS), como os usados nos primeiros micros PC. Embora estejam obsoletos nos PCs a mais de duas dcadas, verses modernizadas desses chips so relativamente populares em sistemas embarcados, concorrendo com chips Z80 e outros processadores de 8 ou 16 bits, que, embora desconhecidos do grande publico, so produzidos e usados em quantidades gigantescas nos mais diversos tipos de dispositivos. justamente essa versatilidade que faz com que o Linux seja usado em tantas reas diferentes, de celulares a supercomputadores.

Ao ver micros com Linux em exposio nas lojas e em mercados, tenha em mente que esta apenas a ponta do iceberg. O uso do Linux em micros domsticos, pelo grande pblico, uma coisa relativamente recente. Antes de chegar aos desktops, o Linux cresceu entre os desenvolvedores e usurios avanados, dominou os servidores, invadiu o mundo dos dispositivos embarcados (celulares, roteadores, pontos de acesso wireless e at mesmo modems ADSL) e se tornou o sistema dominante no mundo dos supercomputadores. Segundo o http://www.top500.org/ (que mantm um rank atualizado dos 500 supercomputadores mais poderosos do mundo), em novembro de 2008 nada menos do que 439 dos 500 supercomputadores mais poderosos rodavam diferentes verses do Linux (http://www.top500.org/stats/list/32/osfam). Dos restantes, 25 rodavam outros sistemas Unix e apenas 5 rodavam Windows, um deles com o HPC Server 2008 e quatro com o Windows Computer Cluster Server 2003, duas verses do Windows especialmente otimizadas para a tarefa.

You might also like