Para se falar sobre a historia do Linux é preciso que primeiro se fale sobre a historia do Unix. O Unix nasceu de um projeto dos Laboratórios Bell, a General Eletric e o Massachusetts Institute of Technology para a criação de um sistema operacional que oferecesse recursos multiusuários para processamento de dados para uma grande quantidade de usuários concorrentes, chamado de Multics. Embora esse projeto não tivesse atingido suas metas principais, em 1969 ele se encontrava rodando em um computador GE 645. O Multics e considerado um precursor dos sistemas operacionais modernos por ser interativo, ou seja, apresentava uma resposta imediata ao comando digitado  já que antes apenas sistemas operacionais orientados a lotes eram disponíveis.
    Ken Thompson e Dennis Ritchie são considerados os “pais” do Unix. Ken Thompson tinha trabalhado em um jogo chamado Space Travel  que foi escrito em Fortran e rodado em um computador Honeywell 635 com sistema operacional GECOS, mas  havia algumas dificuldades para se controlar a “nave espacial" no programa. Thompson descobriu então um obscuro computador com bom poder computacional  e um bom terminal gráfico , o DECPDP-7 . Richie e Thompson passaram então a implementar a primeira versão do  sistema de arquivos do Unix . O nome Unix foi colocado em referencia ao antigo projeto Multics em que eles trabalharam antes . Thompson começou a primeira  implementação do  Unix começou  a partir de um compilador Fortran  mas depois  inventou a linguagem B transformada depois por Dennis Richie em linguagem C . Assim em 1973 todo o Unix foi convertido para a linguagem C podendo assim ser convertido para qualquer maquina com um compilador C . O Unix recebeu um grande apoio da comunidade acadêmica devido ao fato de Thompson ter passado um ano como professor na Universidade de Berkley na Califórnia  . La ele apresentou o Unix e desenvolveu grande parte da versão conhecida como versão 6 . Muito do desenvolvimento do Unix se deu mesmo após a saída de Thompson, com alunos e professores desenvolvendo grande parto do hoje conhecido System V.
    Em 1991 o estudante de ciência da computação da universidade da Helsinki na Finlândia Linus Torvalds comprou o sistema Minix de Andrew Tanenbaum e começou a trocar idéias em uma lista de discussão na Internet    (comp.os.minix). Linus começou a mudar algumas rotinas desse sistema e a disponibilizar seus resultados em um diretório concedido pelo seu professor , divulgando freqüentemente seus avanços e modificações  nesta lista, permitindo assim  que milhares de pessoas pudessem melhorar e ate modificar algumas de suas rotinas . A esse projeto foi dado o nome de Linux , uma mistura do nome de seu criador (LINus ) e do sistema que deu origem ao Minix ( UniX ). O Linux mantém seu caráter aberto ate os dias atuais permitindo assim que pessoas de todo o mundo colaborem com idéias e melhorias para as próximas versões pois disponibiliza seu código fonte juntamente com o software que acompanha sua instalação .
    O Linux é  um SO tipo Unix de 32 bits que suporta todos os utilitários , ferramentas e outros recursos encontrados em produtos Unix comerciais . O mais novo Kernel (versão 2.0)  oferece melhoramentos como suporte a Java e a SMP ( Simetric Multiprocessing , Multiprocessamento Simétrico ) , que o torna melhor que alguns produtos Unix comerciais . A melhor coisa a respeito do Linux ‘e que ele ‘e essencialmente gratuito. Contudo , por esse mesmo motivo , muitas pessoas questionam sua legitimidade . Some-se a isso o fato Linux começou como um projeto universitário de Linus Torvalds , e parece bastante natural que ele seja algo do qual ninguém gostaria que sua empresa dependesse . Mas da forma como vemos a questão a pergunta mais lógica colocada pelo Linux é : “Por que não ?”
    O Linux roda , na maioria dos processadores como varias espécies de x86  ,a família PowerPC , a serie Alpha e os chips MIPS . Ele suporta a maior parte dos periféricos de hardware , com algumas armadilhas . Tipicamente os desenvolvedores de drivers de hardware são eles mesmos usuários do Linux . Se uma pessoa quer que um periférico funcione , ela ou escreve o driver ou espera que alguém o faca . O lado positivo dessa situação é que como o desenvolvedor utiliza os dispositivos e acaba descobrindo os mesmos bugs que o usuário , o s problemas são resolvidos rapidamente , geralmente em questões de dias ou semanas . Outra vantagem desse arranjo ‘e que a pessoa que de fato usa aquele periférico   em particular – mais uma vez , tipicamente o desenvolvedor – escreve a documentação . O lado negativo ‘e que periféricos mais antigos não conseguem arregimentar um suporte tão devotado de modo que encontrar um driver para hardware antiquado , como um velho drive de Cd-Rom ou uma velha placa de rede , pode ser problemático . Ademais , a pessoa mais adequada para escrever drivers de dispositivos pode não estar  devidamente capacitada para escrever documentação clara e amigável com o usuário .
    A documentação de todas as distribuições comercias do Linux aparece na forma de arquivos HOWTO . Como diz o nome , um HOWTO descreve como fazer alguma coisa . Pode ser algo relacionado com o software , como firewall HOWTO que descreve como configurar um firewall para Internet ou relacionado com o hardware como o Cd Write HOWTO que descreve como fazer com que certo dispositivo de CD-R funcionem sobre o sistema .
    É importante checar se existe um HOWTO para uma peca especifica de hardware , para o caso de ele descrever problemas que já’ foram descritos por alguém . Um bom exemplo é o CD-Write HOWTO . Embora exista um programa ( cdwrite ) que opera driver de Cd-r , nem todos os modelos funcionam com ele . O HOWTO descreve como fazer com que um driver SCSI padrão funcione com um drive Cd CD-R especifico .Muitos dos problemas do Hardware de Linux ocorre devido ao fato de os periféricos simplesmente serem novos demais no cenário Linux , de modo que não existem drivers . Outras vezes  , alterações no Kernel podem causar problemas nos drivers específicos .
    Se você esta perguntando “ De que adianta tudo isso se não existe software para rodar nele ?” A resposta é: “ Existe Sim” . Alem de suportar todos os programas que são padrão em um sistema UNIX o Linux suporta todos os protocolos de rede com os quais os usuários Unix estão acostumados como TCP/IP , NFS e HTTP . Alem disso há uma ampla variedade de aplicativos de software gratuito como se sistema de processamentos de texto , planilhas  e banco de dados . Se isso não for suficiente existe ainda uma grande variedade de softwares disponível . Nem todos os produtos de software rodam perfeitamente no Linux na primeira vez . A maior parte do software Linux não-comercial esta disponível na forma de código fonte que deve ser compilado no sistema hospedeiro . Isso aumenta a probabilidade que ele funcione corretamente . Contudo , deve-se checar o arquivo no README que acompanha o programa , que descreve os passos específicos a serem seguidos em cada plataforma .
    Tal como no caso do hardware , muitos produtos de software tem seus próprios arquivos HOWTO . O Java HOWTO descreve os passos necessários para fazer o Java funcionar em um sistema . Java requer suporte a binários Executable and Linking Format ( ELF) que não esta disponível nas versões de Kernel anteriores a 1.2.13. Alem disso , existem problemas conhecidos com o Java para versões especificas de Linux .
    Uma questão comum do Linux é sua compatibilidade com outros sistemas . Embora sua interoperabilidade com outros dialetos do Unix seja tida como certa , a conectividade com PC’s baseados em Windows pode ser uma causa de preocupação . “O Linux funciona muito bem como servidor da Internet mas ele é capaz de oferecer os serviços de arquivos e de impressão de outros dialetos Unix ? “  Sim , se o Samba estiver rodando . O Samba é um pacote de software que proporciona as funções Session Message Block (SMB ) necessários para o suporte ao Windows for Workgroups , Windows 95 , Windows NT e Lan Maneger . Na verdade qualquer cliente que suporte SMB pode acessar o Linux . A grande vantagem do Samba é que ele funciona nos Dois sentidos de modo que o Linux pode acessar outros sistemas como o NT . Um dos maiores argumentos contra o Linux é a falta de suporte . Como o Linux não foi desenvolvido por uma entidade única não existe a quem recorrer . Contudo o Linux é empacotado e distribuído por diversas companhias . Quem compra um desses pacotes geralmente recebe um suporte técnico com informações básicas como instalação . Muitas companhias trabalham exclusivamente com suporte a Linux . Outras, como a Workgroup Solutions , não apenas oferecem sistemas completos inclusive uma versão própria do Linux como também oferecem serviços de consultoria. Finalmente, o Linux desenvolveu um grande exercito de seguidores que podem ajudar , pois já’ passaram pelos problemas enfrentados pelos novatos .
    O Aspecto mais atraente do Linux é que ele tipifica por completo a mentalidade UNIX . O Unix é um sistema de opções . O Usuário escolhe como configurar o sistema e quais as funções ele terá’ . Pode – se optar para uma implementação para PC de baixo custo ou para Workstation de primeira linha . Para quem precisa de processamento em tempo real ele também esta disponível . O Linux leva isso um passo `a frente : Não apenas é possível alterar os parâmetros e a configuração a vontade , mas se necessário pode-se também modificar o comportamento básico do sistema operacional porque o código fonte esta disponível . Embora o Linux ainda não rode em MainFrames isso é apenas uma questão de tempo . Como o Linux roda em todas as principais arquiteturas de computadores as chances de que existam um sistema Linux para qualquer necessidade especifica são grandes . Por causa da quantidade de software e de suporte disponível o Linux encontrou seu lugar ao lado dos SO’s UNIX ate mesmo dos grandes fabricantes .

Marcello´s Homepage® 2000.