UNIX – Uma breve história: da origem aos dias de hoje
A maioria dos sistemas operativos pode ser agrupada em duas famílias diferentes. Para além dos sistemas operativos baseados no Windows NT, quase tudo o resto tem as suas origens no UNIX. Linux, macOS, Android, iOS, Chrome OS… todos estes sistemas operativos são parentes e derivam do UNIX.
O sistema operativo UNIX introduziu uma gigantesca revolução no mundo dos sistemas operativos e é, ainda hoje, considerado uma das mais belas e influentes peças de software alguma vez desenvolvidas. Embarque nesta jornada que começou nos anos 70 e venha conhecer a história do famoso sistema operativo.
Antes de começar… O que é um sistema operativo?
Um sistema operativo, também conhecido por SO, é um programa que permite ao utilizador interagir com todo o software presente no computador. Basicamente, existem duas formas de o fazer: através da linha de comandos ou através de uma interface gráfica (GUI).
Antes da revolução gráfica, utilizava-se a linha de comandos. Sem dúvida, grande parte da juventude nunca viu uma linha de comandos e poderá nunca vir a ver. Mas era através dela que se dizia ao computador o que fazer. Por exemplo, no DOS, escrevia-se um comando específico e, de acordo com as instruções enviadas, o computador respondia.
Mas, entretanto, surgiu a Interface Gráfica que permitiu uma autêntica revolução no modo de utilização dos computadores. Através dela, o utilizador interage com o computador através das imagens e botões que lhe aparecem pela frente, usando o rato e o teclado.
Apesar das evoluções que se seguiram, tudo começou no UNIX…
Março de 1969 – O fim do Multics
Durante mais de 5 anos, a AT&T (American Telephone and Telegraph Company) investiu vários milhões de dólares num projeto chamado Multics e colocou alguns dos seus melhores cientistas e investigadores a trabalhar nele. Do lote de cientistas destacam-se Dennis Ritchie e Ken Thompson, que em 1983, viriam a ganhar o Turing Award (prémio mais importante a nível mundial na Área da Ciência de Computadores) pelo seu trabalho na teoria de sistemas operativos e desenvolvimento do UNIX.
O Multics (Multiplex Information and Computing Service) era um ambicioso sistema interativo de “Partilha de Tempo”, que permitia várias pessoas utilizarem o mesmo computador em simultâneo. Para além disso, o Multics permitia juntar a técnica de “Partilha de Tempo” com outras inovações e avanços tecnológicos da época. Assim, os utilizadores podiam telefonar para um computador a partir de terminais, ler e-mails, editar documentos, realizar operações matemáticas e muito mais.
Olá UNIX!
Mas este novo sistema estava muito à frente do seu tempo, o seu desenvolvimento estava a dar muitos problemas e, por isso, estava muito atrasado em relação aos prazos estabelecidos. Por isso, no fim, a AT&T decidiu abandonar o projeto. Quando isto aconteceu, coordenadores nos Laboratórios Bell, impediram a realização de mais investigação em volta de sistemas operativos para computadores, o que deixou grande parte dos investigadores que trabalhavam no Multics muito frustrados e desanimados.
Mas mesmo com ordens superiores para abandonar a investigação, Dennis Ritchie, Ken Thompson e outros colegas nos Laboratórios Bell ignoraram as indicações que lhes tinham sido dadas e continuaram a desenvolver sistemas operativos. Hoje, cerca de 40 anos mais tarde, devemos agradecer a todos os talentosos programadores, que ignoraram os seus patrões e continuaram a trabalhar naquilo que realmente gostavam e que culminou no desenvolvimento do UNIX – um dos melhores sistemas operativos de todos os tempos.
O nome UNIX e os primeiros utilizadores
O nome UNIX surgiu a partir de uma piada que um dos colegas de Ken Thompson fez. Como o novo sistema operativo criado por parte da equipa do Multics apenas suportava ser utilizado por um utilizador, ele viu que podiam alterar o nome original do Multics colocando “Un” atrás. Assim ficava: “Un-multiplexed Information and Computing Service” ou Unics. Mais tarde, o nome sofreu uma alteração ficando definitivamente UNIX.
Em primeira instância, o UNIX começou a ser usado por 3 pessoas que trabalhavam no departamento de patentes da AT&T para editar e formatar documentos de patentes. Foi um sucesso e o departamento decidiu adotar o novo sistema para ser usado por todos. Isto deu credibilidade aos cientistas que trabalhavam no UNIX. Assim, convenceram os seus superiores a investir num computador mais potente para continuar o desenvolvimento do sistema operativo.
Durante os primeiros tempos o UNIX estava sempre a evoluir, portanto, lançar versões não parecia muito prático na altura. Mas os investigadores lançavam novas edições do manual do programador periodicamente. A primeira edição deste manual foi terminada em 1971 e pode ser consultada aqui.
A Filosofia do UNIX
Os primeiros programadores do UNIX foram extremamente importantes, pois trouxeram para o ramo da Engenharia de Software conceitos fundamentais, como por exemplo: modularidade e reutilização. Como o passar do tempo, os programadores líderes do UNIX e os programas que corriam neste sistema operativo estabeleceram uma série de normas e valores culturais para o desenvolvimento de software; normas essas que se tornaram tão importantes e influentes como a tecnologia do próprio UNIX. São estas normas que constituem a “filosofia do UNIX”.
A “Filosofia do UNIX” aponta para a criação de código simples, curto, limpo, modular e que possa ser facilmente mantido e reutilizado por outros programadores que não os seus criadores. Originalmente, estes valores foram documentados por Doug McIlroy, em 1978 no “Bell System Technical Journal”.
De uma forma resumida esta é a Filosofia do UNIX:
-
- Escrever programas que façam uma coisa e que a façam bem
- Escrever programas que trabalhem bem em conjunto
- Escrever programas que manipulem texto, pois essa é uma interface universal
O UNIX é simples. Apenas é preciso ser um génio para perceber a sua simplicidade.
Dennis Ritchie
UNIX e a Linguagem de Programação C
Um dos desafios enfrentados pela equipa do UNIX foi fazer com que o sistema operativo fosse portátil, de modo a poder ser utilizado em várias máquinas. Antigamente, a maioria dos Kernels dos sistemas operativos eram escritos na linguagem Assembly que correspondia à arquitetura do processador utilizado em cada máquina.
Mas, neste caso, era necessária um linguagem próxima do processador (de baixo-nível) mas que fosse portátil. Na altura isto era impensável, pois ninguém imaginava o Kernel de um sistema operativo escrito noutra linguagem que não Assembly. Então Dennis Ritchie criou a linguagem de programação C para utilizar no UNIX.
Deste modo, podemos dizer que UNIX e o C são os dois lados da mesma moeda. A linguagem C foi criada apenas com o propósito de escrever o Kernel do UNIX.
A influência do UNIX
O UNIX tornou-se uma referência na comunidade tecnológica, em parte devido ao seu design elegante, à sua simplicidade e à sua portabilidade. Mas, ainda mais importante do que isso foi a comunidade de seguidores e utilizadores devotos que rapidamente cresceu à sua volta.
Nos anos 70, a popularidade do UNIX crescia à velocidade da luz; principalmente na indústria tecnológica e nas Universidades, e atingiu o seu ponto mais alto no início dos anos 90.
Sem dúvida, o UNIX é o sistema operativo mais influente alguma vez inventado e, por isso, tem centenas de outros sistemas operativos que derivaram de si. Por exemplo, um sistema operativo baseado em UNIX, a Berkeley Software Distribution (BSD) teve influência no desenvolvimento do macOS da Apple.
No entanto, foi nas distribuições de Linux que o UNIX teve mais influência. O próprio Linus Torvalds disse que provavelmente nunca teria criado o Linux, um sistema operativo baseado em UNIX, se na altura o UNIX estivesse disponível.
As vantagens do UNIX
O UNIX é sem dúvida, um dos melhores sistemas operativos que alguma vez existiu, mas o que é que o torna assim tão especial?
Em primeiro lugar, o sistema operativo UNIX é muito flexível e, portanto, pode ser instalado em vários tipos de computadores. Para além disso, é muito estável e não apresentando falhas tão frequentemente como o Windows. Por isso, necessita de menos manutenção.
A segurança também é um ponto forte do UNIX, tendo melhor funcionalidades de segurança e permissões do que o Windows. Mas não é só. O UNIX tem melhor poder de processamento que o Windows. Não é por acaso que, muitas vezes, computadores da Apple, com especificações inferiores, obtêm melhores resultados quando comparados a computadores Windows com melhor hardware.
Conclusão
Ao conhecer esta história fica a perceber melhor o que é que um sistema operativo baseado em UNIX representa, quais são as vantagens e tudo aquilo que representa para a comunidade tecnológica.
Este artigo tem mais de um ano
Excelente artigo!
Bom artigo. Obrigado.
queremos mais posts destes, excelente artigo, está nos meus favoritos.
obrigado por partilharem esse conhecimento.
E mesmo assim, não dá para jogar Battlefield num Mac…..
É incrível a tua linha de pensamento… n sei se é ignorância ou… sei lá…
É essa a tua conclusão sobre este artigo? Enfim…
Ao Pplware os parabéns pelo excelente artigo.
Reclame com a EA.
Porque os desenvolvedores não querem.
Dá sim! Instala Windows num Mac…
no MAC logico que da, e so desaproveitar o hardware instalando M$ Windiows nele.
Bom artigo!
Apenas um reparo, nesta frase há qualquer coisa que não está correcto:
“O próprio Linus Torvalds disse que provavelmente nunca teria criado o Linux, um sistema operativo baseado em UNIX, se na altura o UNIX tivesse disponível.”
Deves querer dizer “… se na altura o UNIX ‘não’ tivesse disponível.”, certo?
Eu tenho ideia que o UNIX não era free. Daí talvez a indisponibilidade do UNIX. E foi desenvolvido um SO de raíz, o Linux, com base na ideologia do UNIX.
Certíssimo! O Linux foi criado com a visão Open source, uma vez que o Linux era pago! Continuação do bom trabalho!
uma vez que o “UNIX” era pago.
Achei este artigo muito interessante, até porque comecei a trabalhar em informática em 1978 e portanto acompanhei esta extraordinária evolução dos últimos 50 anos. E a propósito disso, gostaria de “reposicionar” algumas afirmações que me parecem menos exactas. Embora cronologicamente o Unix tenha começado na década de 70, demorou muitos anos até ser adoptado no “mundo real”. Inicialmente era apenas usado nos meios académicos, porque o “mundo real”, isto é, o mundo empresarial, era dominado pelos fabricantes de hardware como IBM, Digital ou Unisys (para só mencionar alguns). O que se vendia era hardware e não funcionalidade. Nessa época cada fabricante dispunha do seu SO “privativo”, que muitas vezes era específico de cada modelo de equipamento, mesmo dentro da marca. Compatibilidade e interacção era coisa que não existia. Do ponto de vista conceptual houve dois SO’s que na minha opinião (e não só!) foram os melhores SO’s alguma vez produzidos: o VMS (da Digital, e ao qual o actual Windows muito deve!) e o AOS/VS (da Data General), embora este último estivesse mais limitado ao mundo académico. No mundo comercial o Unix apenas começou a ganhar espaço por meados da década de 80, e continua a haver muita resistência à sua adopção generalizada, embora exista uma tendência de aumento de penetração.
Também gostei muito de trabalhar com estações DEC a correr o VAX/VMS. que era um SO fantastico em várias áreas, principalmente em multi-tasking e clustering
Excelente artigo! Venha mais!
Belos tempos que trabalhei com unix em estações gráficas Intergraph (Unix System V Release 3.1) e depois em Solaris!
Ando a tentar fazer uma instalação VirtualBox com Solaris2.5… mas não está fácil…
https://osu.pb.unizin.org/graphicshistory/chapter/10-5-intergraph-bentley-dassault/
Abraço
Também trabalhei em estações da Intergraph que corriam um flavou chamado Clix, que era o Unix para estações Clipper.
Já tentou com o VMware ?
Sim, já tentei Vmware, mas parece que acaba por ter resultados semelhantes ao VirtualBox.
A questão penso que tem mais a ver com alguma “afinação” por causa de processadores e ou placas gráficas que eram suportadas naqueles tempos… Ainda assim quando arranjo tempo e paciência vou tentando. Mas se houver dicas… claro que são bem aceites.
Abraço.
Já agora… só por curiosidade… deve haver muito mais sítios com “velharias” destas…
https://winworldpc.com/library/operating-systems
Abraço.
Correcção no artigo: “Não é por acaso que, muitas vezes, computadores da Apple, com especificações inferiores, obtêm melhores resultados quando comparados a computadores Windows com melhor hardware.”
Computadores da Apple são PCs – Intel Based como outras marcas como Asus, Acer etc, e tipicamente em termos de hardware inferiores. O desempenho dos MACs são tipicamente inferiores (mesmo em aplicações como Adobe Suit, Office like software, etc.) apesar de poderem ter melhor hardware.
Lá por não concordares com a sentença transcrita, ou não a aceitares, não quer dizer que ela esteja errada.
Talvez precises de corrigir a tua maneira de ver certas coisas.
😉
Quando as coisas não estão escritas assentes numa verdade comprovada devem ser fundamentadas ou corrigidas. Qualquer pesquisa no Google garante o que está escrito aqui em acima com benchmarks nas especificações que quiseres. Se calhar tens é que perceber que quando a madeira é a mesma, tem o mesmo nome, independentemente dos retoques finais que lhe deres.
A única verdade comprovada e fundamentada por qualquer pesquisa no Google mostra que independentemente da plataforma que se use, macOS ou Windows, NESTE CASO em particular no uso de software Adobe suite ou outros do género, resume se basicamente a uma questão de gosto ou preferência pela plataforma. Os designers gráficos, usam macOS por tradição, por ter sido a primeira plataforma informática a trazer para o mundo do design gráfico suites Adobe, entre outras. Principalmente aqueles que já trabalham há cerca de duas décadas na área. Mas eles próprios admitem que qualquer PC Windows com mesmo hardware consegue ter um desempenho semelhante ao macOS, ao trabalhar com suites de design gráfico. Em outros aspectos no geral é que em muitas outras áreas de trabalho o macOS consegue ter melhor desempenho, que o Windows, mesmo com hardware inferior, pois é um sistema mais robusto, estável e menos propenso a ter problemas já típicos da plataforma Windows. Até porque a Apple tem um controlo apertado na questão de atualizações para o portfólio das suas máquinas. Qualquer problema, há logo correcção. Até o Windows funciona melhor num Mac do que em qualquer outro PC. Por isso esquece lá isso dos benckhmark, que na prática nem sempre serve para nada. Só serve para enganar os menos atentos. Utilização real é o que pode definir o melhor ou pior. Ou gostos, simplesmente. Só um nota final. Um PC Windows com o mesmo hardware que um Mac pode ser mais caro. Exemplo do Surface Studio ou Surface Book. Já para não falar de estes últimos terem algum hardware obsoleto, face aos computadores da Apple.
Thunderbolt 3 com interface USB type C (40 Gbps) vs USB type C 3.1 (10 Gbps). Uma porta Thunderbolt 3 permite expandir 2 monitores 4k em simultâneo, muito útil para designers gráficos.
https://thunderbolttechnology.net/blog/thunderbolt-3-usb-c-does-it-all
A compra dum computador da Apple pode para muitos ser a escolha mais acertada, pois permite ter o melhor de todo os mundos, macOS, Windows, Linux, etc.
E concordo que por vezes a madeira até pode ser a mesma, mas os retoques finais, esses sim fazem toda a diferença. Estes que mencionei por exemplo. Era uma filosofia se Steve Jobs, os pormenores são o que fazem toda a diferença, em relação ao outros. Os pormenores!!
As coisas estão fundamentadas e corrigidas. Cabe agora a cada um aceitar ou não. Somos livres.
Abraço
Os “melhores resultados” são algo que pode (e é muitas vezes!) manipulado para dar os resultados mais convenientes (seja lá qual for a bitola de referência). Os resultados de performance dependem duma grande quantidade de factores, CPU, clock, disco/ssd, placa gráfica, sistema operativo, aplicações, etc, etc, etc! Não vou entrar na guerra PC-Apple, mas há dois factores que julgo serem absolutamente indiscutíveis, embora só por si não cheguem para classificar como “melhor” cada um um destes dois mundos: os Apple são um exemplo de boa engenharia e o Windows é muito mais aberto. São factos que não têm nada a ver um com o outro, e portanto cada um que valorize o que lhe der mais jeito!!!
Excelente artigo e uma boa lição para muita gente que anda por aí a comentar sem saber do que fala.
Só é pena este erro: “[…] se na altura o UNIX tivesse disponível.”… Deveria ser “estivesse disponível”. Bem sei que agora esta é uma forma corrente (ainda que incorrecta) de falar mas quem escreve profissionalmente deveria ter um pouco mais de cuidado.
De qualquer modo, obrigado pelo artigo.
Tem toda a razão, muito obrigada pela correcção.
Bom artigo, queremos mais!
PARABÉNS!
Parabéns Tomás! Continua. 😉
O melhor SO que trabalhei nos anos 90.
“O próprio Linus Torvalds disse que provavelmente nunca teria criado o Linux, um sistema operativo baseado em UNIX, se na altura o UNIX estivesse disponível.”
Baseou.-se no MINIX, que muita gente ignora.
“In 1987, Tanenbaum wrote a clone of UNIX, called MINIX (MINi-unIX), for the IBM PC. It was targeted at students and others who wanted to learn how an operating system worked. Consequently, he wrote a book that listed the source code in an appendix and described it in detail in the text.[23] The source code itself was available on a set of floppy disks. Within three months, a Usenet newsgroup, comp.os.minix, had sprung up with over 40,000 subscribers discussing and improving the system. One of these subscribers was a Finnish student named Linus Torvalds who began adding new features to MINIX and tailoring it to his own needs. On October 5, 1991, Torvalds announced his own (POSIX like) kernel, called Linux, which originally used the MINIX file system, but it is not based on MINIX code.”
Excelente artigo ainda me faz gostar mais de o usar todos os dias ; quando se pode é uma excelente ferramenta de trabalho 🙂
O link para a primeira edição já não funciona 🙂
Saúde a todos(as)
O link correto é https://www.singlix.com/runix/pdf_archive/unix_v1_programmers_manual.pdf
O link colocado no artigo é http://www.singlix.com/rUNIX/pdf_archive/unix_v1_programmers_manual.pdf
Poderá parecer igual mas o mundo Linux diferencia as maiúsculas das minúsculas.
Parabéns pelo artigo , eu também usei muito tempo unix, e OS2Warp da IBM
Parabéns pelo artigo, é uma bela ajuda para que eu possa estudar ainda mais na faculdades de TI.
Abraços PPLWARE
Gostei de ler. Mas para quem se interessa por estas coisas basta lerem no Wikipedia o que lá está sobre David Neil “Dave” Cutler, Sr e depois venham-me falar no Jobs…
Saudações do Brasil aos irmãos ultramarinos de Portugal !
Uma pergunta para o nosso filólogo Pedro Gonçalves: meu caro Pedro, devemos dizer “… se na altura o Unix não tivesse disponível.”, ou “… se na altura o Unix não estivesse disponível.” ?
Oh, glória: corrigir o português de um português!
ABRS
Muito bom artigo… excelente!
Parabéns! Que excelente artigo, obrigado ☺️