historia do unix


Tudo sobre o Unix
http://images.apple.com/au/macosx/leopard/technology/images/unix_hero20071016.png

O Unix é um sistema operacional multitarefa e multiusuário, disponível para diversas plataformas de hardware.

A história do Unix começou no final da década de 1960 e início de 1970, em uma época em que os computadores eram grandes, caros e de difícil acesso a pessoas comuns. Havia poucos computadores e vários pesquisadores necessitando dos recursos destes para poderem dar andamento aos seus trabalhos, e os sistemas operacionais da época não satisfaziam às necessidades desses profissionais. Era então, imprescindível desenvolver um sistema operacional multiusuário, multitarefa, que pudesse ser convertido para diferentes plataformas de hardware.

O Unix é um sistema operacional multiusuário, pois permite que vários usuários utilizem o mesmo computador ao mesmo tempo, por meio de terminais remotos, e também um sistema operacional multitarefa, pois permite que vários programas sejam executados somultaneamente.

Além disso, o Unix apresenta uma vasta gama de possibilidades relacionadas à rede, como sistema de cota de disco, FTP, e-mail, WWW, DNS, possibilidade de diferentes níveis de acesso, de executar programas em background, etc.

Inicialmente o Unix foi escrito em linguagem Assembly, que varia muito de um computador para outro. A necessidade de converter o Unix para diversas plataformas de hardware levou à criação de uma linguagem de programação na qual qualquer programa pudesse ser convertido facilmente, com pouca ou nenhuma alteração, para qualquer uma das plataformas. Essa linguagem foi denominada C, que mesmo nos dias de hoje, continua moderna e poderosa. Logo o Unix foi reescrito em C e convertido para as mais diversas plataformas de hardware, sendo executado atualmente tanto em computadores de bolso como em supercomputadores.

No início, o UNIX era distribuído gratuitamente pela AT&T (empresa que o desenvolveu) para as universidades. Mais tarde, porém, percebendo o sucesso do Unix no meio comercial, a AT&T logo passou a disponibilizá-lo por um preço muito alto. Logo em seguida, departamentos de ciência da computação de diversas universidades no mundo inteiro começaram a desenvolver programas comerciais para o Unix, criando um grande número de usuários e desenvolvedores de utilitários e programas.

unix-process-list

Entre os vários pesquisadores que desenvolveram o Unix, destaca-se o grupo da Universidade da California, em Berkeley, que em 1975 licenciou a versão 6 da AT&T, fez diversos aprimoramentos e relançou-o como Unix BSD. Conseqüentemente, os dois maiores centros de desenvolvimento do Unix são a AT&T e Berkeley.

Com o advento das workstations (estações de trabalho) na década de 80, surgiram muitas versões comerciais do Unix, como Sun OS e Solaris, da Sun Microsystems, AIX, da IBM, OSF/1 (hoje chamado de digital Unix), da Digital, IRIX, da Silicon Graphics, e HP-UX, da Hewlett Packard.

Todas essas versões são baseadas nas versões da AT&T e de Berkeley, freqüentemente com muitos cruzamentos e acréscimos, resultando em uma confusão de versões do Unix, porém, em 1990, o IEEE (Instituto de Engenheiros Elétricos e Eletrônicos) começou a desenvolver o padrão POSIX (Portable Operating Systems Interface Unix) para uniformizar as características dos sistemas Unix.

Até meados da década de 80, o Unix ainda não possuia uma interface gráfica própria. Porém, com o advento do X Window System (sistemas de janela X), desenvolvido pelo MIT (Massachussets Institute Of Technology), ele passou a dispor de um sistema gráfico do tipo cliente-servidor e independente de arquitetura do computador.

Em 1988, o controle do X Window System foi passado para o X Consorcium (Consórcio X), organização sem fins lucrativos criada para garantir a evolução do X.

UNIX é um dos mais importantes sistemas operacionais já desenvolvidos.

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).
Multics era um sistema modular montado em uma bancada de processadores, memórias e equipamentos de comunicação de alta velocidade. Pelo desenho, partes do computador poderiam ser desligadas para manutenção sem que outras partes ou usuários fossem afetados. O objetivo era prover serviço 24 horas por dia 365 dias por ano - um computador que poderia ser tornado mais rápido adicionando mais partes.
Em 1969, o projeto estava muito atrasado em relação ao seu cronograma e a AT&T resolveu abandona-lo. O projeto continuou no MIT.
Neste mesmo ano, Ken Thompson, um pesquisador da AT&T que havia trabalhado no Projeto Multics, pegou um computador PDP-7 para pesquisar algumas idéias do Multics por conta própria. Logo Dennis Ritchie, que também trabalhou no Multics, se juntou a ele. Enquanto Multics tentava fazer várias coisas, UNIX tentava fazer uma coisa bem: rodar programas.
Este pequeno escopo era todo ímpeto que os pesquisadores precisavam. Em 1971 saiu a primeira versão do UNIX, V1, muitos meses antes do Multics, em assembler em um computador PDP-11 da Digital. Incluía sistema de arquivos, fork(), roff, ed. Era utilizado como uma ferramenta de processamento de texto para a preparação de patentes. Pipe() apareceu na V2.
Em 1973 o UNIX foi reescrito em C, talvez o fato mais importante da história deste sistema operacional. Isto significava que o UNIX poderia ser portado para novo hardware em meses, e que mudanças eram fáceis. A linguagem C foi projetada para o sistema operacional UNIX, e portanto há uma grande sinergia entre C e UNIX.
Em 1975 foi lançada a V6, que foi a primeira versão de UNIX amplamente disponível fora dos domínios do Bell Labs, especialmente em universidades. Este foi o início da diversidade e popularidade do UNIX. Nesta época a Universidade de Berkley comprou os fontes do UNIX e alunos começaram a fazer modificações ao sistema.
Em 1978 Berkley Software Distribuition lança a série 2.xBSD para PDP - 11 (a versão 2.11 foi lançada em 1992). Nesta versão saiu o csh. Neste ano também saiu a série 3BSD, que teve uma importante contribuição, virtual memory.
Em 1979 saiu a V7 e o Unix foi portado para o novo VAX da Digital. Esta versão incluia C K&R completo, uucp, Bourne Shell. O kernel tinha meramente 40 bytes! Esta foi a primeira versão vendida comercialmente do sistema, mas usada principalmente por universidades.
Em 1983 é lançado o System V da AT&T e o 4.2 BSD. O SV incluía o pacote IPC (shm, msg, sem) para comunicação entre processos. Surgiram outras versões do SV com a inclusão de novas características como sharedlibs no SVR4.
O 4.2BSD foi talvez uma das mais importantes versões do UNIX. O seu software de conexão de redes tornava muito fácil a tarefa de conectar computadores UNIX a redes locais. Nessa versão é que foram integrados os softwares que implementam TCP/IP e sockets.
Em 1988 foi lançado o SVR4. Este sistema era um merge de releazes anteriores do SV, BSD e SunOs, uma implementação decendente de BSD. Neste releaze foram incorporados as seguintes características:
  • BSD: TCP/IP, sockets, csh, ...
  • SVR3: sysadmin, ...
  • SunOs: NFS, OpenLook GUI, X11/NeWS, virtual memory subsystem with memoy mapped files, shared libraries (!= SVR3)
  • ksh
O 4.4BSD foi lançado em 1992 para várias plataformas: HP 9000/300, Sparc, 386, DEC e outras, mas não em VAX. Entre as novas características estão:
  • Novo sistema de memória virtual baseado em Mach 2.5
  • Suporte ISO/OSI (baseado em ISODE)
A Sun Microsystem também lançou a sua versão do UNIX a partir do BSD. Isto ocorreu até a versão SunOs 4.x. A nova versão, SunOs 5.x está baseada no SVR4, embora tenha herdado algumas características do SunOs 4.x. O novo sistema operacional da Sun, Solaris 2.x, é um SO que engloba SunOs 5.x, Open Network Computing e Open Windows. É o solaris que provê o pacote de compatibilidade entre os BSD/SunOs e o SVR4/SunOs 5.x.
A Microsoft também lançou uma versão do UNIX, chamada XENIX, que rodava em PCs. Este sistema era inicialmente baseado na Versão 7, depois herdou características dos SIII e depois do SV.


Vídeo Historia do UNIX - legendado



O Unix é um sistema operacional multitarefa e multiusuário, disponível para diversas plataformas de hardware.

O Unix foi criado no final da década de 1960 e início de 1970, em uma época em que os computadores eram grandes, caros e de difícil acesso a pessoas comuns. Havia poucos computadores e vários pesquisadores necessitando dos recursos destes para poderem dar andamento aos seus trabalhos, e os sistemas operacionais da época não satisfaziam às necessidades desses profissionais. Era então, imprescindível desenvolver um sistema operacional multiusuário, multitarefa, que pudesse ser convertido para diferentes plataformas de hardware.

O Unix é um sistema operacional multiusuário, pois permite que vários usuários utilizem o mesmo computador ao mesmo tempo, por meio de terminais remotos, e também um sistema operacional multitarefa, pois permite que vários programas sejam executados somultaneamente.

Além disso, o Unix apresenta uma vasta gama de possibilidades relacionadas à rede, como sistema de cota de disco, FTP, e-mail, WWW, DNS, possibilidade de diferentes níveis de acesso, de executar programas em background, etc.

Inicialmente o Unix foi escrito em linguagem Assembly, que varia muito de um computador para outro. A necessidade de converter o Unix para diversas plataformas de hardware levou à criação de uma linguagem de programação na qual qualquer programa pudesse ser convertido facilmente, com pouca ou nenhuma alteração, para qualquer uma das plataformas. Essa linguagem foi denominada C, que mesmo nos dias de hoje, continua moderna e poderosa. Logo o Unix foi reescrito em C e convertido para as mais diversas plataformas de hardware, sendo executado atualmente tanto em computadores de bolso como em supercomputadores.

No início, o UNIX era distribuído gratuitamente pela AT&T (empresa que o desenvolveu) para as universidades. Mais tarde, porém, percebendo o sucesso do Unix no meio comercial, a AT&T logo passou a disponibilizá-lo por um preço muito alto. Logo em seguida, departamentos de ciência da computação de diversas universidades no mundo inteiro começaram a desenvolver programas comerciais para o Unix, criando um grande número de usuários e desenvolvedores de utilitários e programas.

Entre os vários pesquisadores que desenvolveram o Unix, destaca-se o grupo da Universidade da California, em Berkeley, que em 1975 licenciou a versão 6 da AT&T, fez diversos aprimoramentos e relançou-o como Unix BSD. Conseqüentemente, os dois maiores centros de desenvolvimento do Unix são a AT&T e Berkeley.

Com o advento das workstations (estações de trabalho) na década de 80, surgiram muitas versões comerciais do Unix, como Sun OS e Solaris, da Sun Microsystems, AIX, da IBM, OSF/1 (hoje chamado de digital Unix), da Digital, IRIX, da Silicon Graphics, e HP-UX, da Hewlett Packard.

Todas essas versões são baseadas nas versões da AT&T e de Berkeley, freqüentemente com muitos cruzamentos e acréscimos, resultando em uma confusão de versões do Unix, porém, em 1990, o IEEE (Instituto de Engenheiros Elétricos e Eletrônicos) começou a desenvolver o padrão POSIX (Portable Operating Systems Interface Unix) para uniformizar as características dos sistemas Unix.

Até meados da década de 80, o Unix ainda não possuia uma interface gráfica própria. Porém, com o advento do X Window System (sistemas de janela X), desenvolvido pelo MIT (Massachussets Institute Of Technology), ele passou a dispor de um sistema gráfico do tipo cliente-servidor e independente de arquitetura do computador.

Em 1988, o controle do X Window System foi passado para o X Consorcium (Consórcio X), organização sem fins lucrativos criada para garantir a evolução do X.

O projeto GNU (G is not Unix) é mais antigo (1983) que o Linux (que se refere ao Kernel desenvolvido por Linus Torvalds em 1989), a questão é que o GNU era praticamente um SO pronto, com interpretador de comandos e algumas aplicações, porém lhe faltava o Kernel (núcleo do sistema operacional), Richard Stallman soube da mensagem enviada por Linus nos tempos da Usenet e chegaram na conclusão que ambos estavam desenvolvendo um novo Sistema Operacional de código fonte aberto com basicamente o mesmo objetivo e filosofia, um possuia o Kernel pronto e outro possuia todo o sistema porém sem Kernel, em 1992 o Projeto GNU se juntou ao Linux e nascia então o GNU/Linux.

 

Algumas curiosidades sobre a história do Unix:

 

1) O Unix foi precedido por um sistema chamado Multics desenvolvido pela Bell Labs (AT&T), General Eletric e MIT, o Multics era um sistema monousuário e monotarefa e não conseguiu atingir seu propósito, ainda sim o último sistema rodando Multics só foi desativado em 30 de Agosto de 2000 exatamente as 17:08 UTC no Canadá.

 

2) Dois engenheiros da AT&T, Ken Thompson e Dennis Ritchie fanáticos por um jogo chamado Space Travel perderam acesso ao sistema e decidiram portar o jogo para um computador PDP-7 que estava parado, nascia um novo sistema operacional que a princípio foi chamado de Unics, o novo SO foi assim chamado pois ao contrário do Multics era multitarefa (time sharing) e multiusuário e Ken Thompson achou engraçado fazer essa alusão ao Multics, o mais interessante do Unics é que este foi idealizado para ser altamente "portável" e rodar em praticamente qualquer hardware existente, uma das premissas de sua criação era construir um SO de programador para programadores, mais tarde o Unics foi portado para uma máquina PDP-11, posteriormente o Unics foi escrito em linguagem C (linguagem também criada por Dennis Ritchie) e devido a essa particularidade finalmente o Unics se tornava realmente um sistema portável.

 

3) Não se sabe ao certo quando e porquê o Unics veio a ser chamado de Unix, algumas teorias dizem que foi por puro marketing, outros dizem que era uma limitação do sistema em usar um nome com 5 caracteres, a teoria mais plausível é a da própria Bell Labs que diz que o Unix assim como a Fenix ressurgiu das próprias cinzas graças ao esforço multiorganizacional de seus idealizadores em criar um sistema multitarefa seguro, esse trabalho em equipe e a filosofia em que o sistema foi concebido era algo inimaginável nos anos 60, desde então o Unics passou a ser chamado Unix herdando a letra "x" da "Fenix".

 

4) Richard Stallman decidiu criar um SO do tipo Unix gratuito pq muitos programadores que contribuíram para o aperfeiçoamento do Unix foram injustiçados quando a AT&T decidiu se apropriar do sistema que fora fruto do trabalho destes.

 

5) Ao contrário do que muitos pensam Linus Torvalds não escreveu o Linux Kernel do zero, reza a lenda que Linus ao ver seu tio sofrendo na pobre interface shell do DOS decidiu escrever um sistema operacional mais flexível e poderoso, que fosse multi-tarefa e lhe permitisse explorar mais o hardware disponível.Para isso ele usou como base o Kernel do Minix (SO tipo Unix escrito por Andrew Tannenbaum)

 

6) Assim como acontece no GNU/Linux o Unix também possui muitas variantes, o que dificulta um pouco o trabalho dos profissionais dessa área, conceitualmente as variantes Unix se diferem das variantes GNU/Linux pois as primeiras são adaptadas ao hardware específico de um fabricante, temos como exemplo o HP-UX da HP, o AIX da IBM, o Solaris da SUN (que possui também versão para plataforma x86), o Irix da Silicon Graphics, entre outros.

 

7) Aqui acho que vou assustar muita gente, muitos associam a Microsoft só ao Windows mas até ela já teve seu Unix que se chamava Xenix, posteriormente esse foi vendido para a SCO mas ainda sim serviu de base para o desenvolvimento do MS-DOS, aliás o MS-DOS embora conceitualmente seja muito diferente do Unix estruturalmente possui várias semelhanças, como redirecionamento de dispositivos de I/O, pipes "|", estruturas de arquivos e alguns comandos.

História do Unix e do Software Livre

Unix: Primórdios

 1876: Invenção do telefone por Graham Bell

– Fundação da AT&T
– Bell Labs
 
 Importante centro de pesquisas e avanços tecnológicos durante o século 20
 
 1927: primeira transmissão de televisão
 1947: transistor
 1958: raio laser
 1962: tecnologia de celulares


Primeiros Sos ­ 1960 Máquinas da época

– Algumas dezenas/centenas de KBs de RAM e de disco (Celulares modernos têm mais memória)

– Monitores: ainda na sua infância / Teletipos

Primeiros Sos ­ Aspirações

 Multitarefa / time sharing
– Execução em batches
– Monotarefa

 Memória virtual

– Programas precisavam gerenciar a memória primária/secundária do sistema (arquivos overlay,etc.)

Primeiros SOs

● 1961: CTSS – Compatible Time Sharing System
– Primeiro SO a implementar time sharing – MIT
– Primeiro em um IBM 709, depois em um IBM 7090

● Reescrito – sem portabilidade de código

● 1962: MIT Project MAC
– Time sharing, memória virtual
– Inteligência artificial

● Multics (Multiplexed Information and Computing Service)
– Suportado pela ARPA
– Bell Labs empresta Thompson e Ritchie pro MIT
– Bell Labs/AT&T não queriam fazer seu próprio SO

Multics ­ 1969
● Bell Labs deixa o projeto
● Excesso de planejamento, poucos resultados práticos
● Integrantes do projeto mantêm contato com
funcionários do Bell Labs

Unix: Inspiração

● Ken Thompson e Dennis Ritchie
– Dois excelentes programadores, com conhecimentos avançados de estrutura de SOs
– Desilusão com o projeto Multics
– Criam um projeto pessoal

Unix: Desenvolvimento

● “Unics”

● Design simples e informal

● Objetivos: provar conceitos na prática, fazer um SO simples mas funcional
– “Fazer uma coisa só, mas fazê­la bem” (no caso, rodar programas)

Unix: Desenvolvimento

● Desinteresse do Bell Labs
– Desenvolvimento inicialem quadro­negro e papel
– PDP­7 usado encontrado abandonado em um departamento
– Primeira versão escrita em assembly

Unix: Desenvolvimento

● 1970: PDP­7 já estava muito obsoleto

● Apoio de outros departamentos
– Formatador de texto nroff do Unix era um sucesso

● Compra de um PDP­11
– Reescrita do SO

Unix: Desenvolvimento

● Desenvolvimento em Assembly
– Uso de linguagens comuns (Fortran) inviável
– Mudança do PDP­7 para o PDP­11 exigiu reescrita do sistema inteiro
– Linguagem B – simplificação do BCPL
– Aperfeiçoamento do B – Linguagem C
– 1973: Reescrita do Unix, em C (version 4)

Unix: Inovações

● Pipes: Douglas McIlroy
– Transferência de dados entre processos
– comando1 | comando2 | comando3
– Implementado por Thompson em uma noite

● Portabilidade: primeiro SO não escrito em assembly

● Formatação de texto: nroff

Unix nas universidades

● 1974: paper sobre o Unix
– Design simples, sucesso de uso
– Universidades se interessaram
– AT&T não podia vendê­lo: caso anti­truste de 1958

● 1976: aulas de Ken Thompson
– Universidade da Califórnia em Berkeley
– Ensinou o Unix
– Desenvolveu o Unix v6

Unix nas universidades

● Professores e alunos experimentam idéias com o novo SO e contribuem com mais código fonte
– University of Toronto: uso de impressora/plotter
– Yale University: melhoras no shell
– Purdue University: melhoras no desempenho, rede
– Berkeley: novo shell e utilitários

● Fortalecimento do sistema
– Fluxo de idéias entre indústria e meio universitário

Unix: Novos rumos

● University of California – campus de Berkeley
– Ponto focal importante de desenvolvimento do Unix (Aulas de Ken Thompson)
– 1977: Lançamento do BSD (Berkeley Software Distribution)

Unix: Novos rumos

● 1980: ARPA, TCP/IP o e o Unix
– PDP­10s da ARPA ficando obsoletos
– Novos VAX com SO VMS da DEC exigiriam reescrita de tudo
– ARPA escolhe Unix como nova plataforma – código fonte disponível e livre de patentes

Unix e TCP/IP

● Unix: suporte fraco a rede
– UUCP sobre linhas discadas

● TCP/IP: tecnologia de ponta
– Necessitava de plataforma estável e independente

● Projetos Unix e TCP/IP se completam
– TCP/IP portado para BSD
– Culturas de ambas as comunidades começam a se fundir

Unix: Indústria

● Máquinas fabricadas especificamente para rodar Unix

● SCO: Santa Cruz Operations
– Primeira empresa a prestar serviços em Unix, em 1978

● Compilador C Whitesmiths
– Primeiro compilador C comercial para Unix, em 1978


Unix: Indústria

● Outras empresas portam Unix para outros computadores

● Microsoft: Xenix, em 1980

● Sun: SunOS, em 1982 (depois Solaris)

Unix Wars

● 1983: AT&T perde caso anti­truste
● Dividida em empresas menores
● Determinação judicial de 1958 impedia AT&T de
comercializar produtos de informática
● Mas agora a subsidiária AT&T Computer Systems podia

Unix Wars

● AT&T fecha código do Unix e começa a comercializá­lo
● Unix System V
● O começo da morte do Unix ­ “Mas em
compensação o espalhou internacionalmente” Ken Thompson

● Inovação no Unix pára
– Fluxo de idéias e implementações novas entre
universidades, empresas e Bell Labs pára
– Código fonte vendido por $40.000

● Derivados: SunOS, AIX, HP­UX, Xenix, ...
– Todos fecham seus códigos
– Começam a diferenciar seus produtos – vários Unix, todos diferentes

Unix Wars

● System V x BSD

● 1988: Aliança entre AT&T e Sun

● Outros fabricantes criam aliança contra AT&T/Sun
– OSF – Open Software Foundation
– IBM, DEC, HP, ...

● 1985: Richard Stallman inicia Projeto GNU

Unix Wars
● 1987:
– AT&T/Sun – System V Release 4 (SVR4)
– OSF – OSF/1 (padrão BSD)

● 1993: AT&T vende Unix à Novell, que o repassa à X/Open

● 1996:X/Open e OSF se fundem e criam uma especificação única para Unix

● ...mas a esta altura, o Unix já era irrelevante para o mercado

Historia do Unix Anos 80/90

● Unix tende a perder cada vez mais mercado
– Microcomputadores, redes locais
– Windows, Netware

● (Re)Surgimento do software livre / código aberto

Minix: Andrew Tanenbaum

● Década de 80:
– Código fonte do Unix não estava mais disponível
– Necessidade de exemplos para
aulas de estrutura de SO

● Minix
– “Mini Unix”
– Inteiramente livre, porém simples

Projeto GNU: Richard Stallman

● Laboratório de IA do MIT
– ITS – Incompatible Timesharing System

● Driver de impressora Xerox

● Troca de PDP­10 do MIT
– Mudança do ITS para software proprietário

Projeto GNU

● 1983: Começa o Projeto GNU
– Objetivo: um sistema operacional inteiramente livre
– Começa a escrever o sistema pelos utlitários
– Maiores contribuições: GCC, Comandos básicos, Emacs

● 1985: Lança Manifesto GNU
– Funda FSF – Free Software Foundation

Linux: Linus Torvalds

● 1991: Estudante de CC na Finlândia
– Inicia projeto de SO como um hobby
– Anuncia no grupo de discussão do Minix

● Discordância com Tanenbaum

Linux

● Objetivo: rodar um sistema Unix­like no 386
– Que funcione adequadamente
– Onde o usuário possa ele mesmo criar os drivers

● Pragmatismo
– “Free software because all software should be free” Stallman
– “Free software because it works better” ­ Torvalds

● Linux: apenas um kernel

Anúncio do Linux

From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds) Newsgroups: comp.os.minix
Subject: O que você gostaria de ver a mais no Minix? Date: 25 Aug 91 20:57:08 GMT

Olá para todos que estão usando Minix ­Eu estou fazendo um sistema operacional independente (apenas um hobby, nada grande e profissional como o GNU) para AT 386 (486) e similares. Iniciei em abril e, agora, está começando a dar certo. Eu preciso de um retorno sobre as coisas que as pessoas gostam/não gostam no Minix, porque o meu sistema se parece com ele (o mesmo layout de filesystem (por causa de razões práticas), dentre outras coisas). Atualmente, eu estou portando o bash (1.08) e o gcc (1.40) e as coisas têm funcionado. Isto significa que vou ter algo prático em poucos meses e eu gostaria de saber quais características as pessoas vão querer. Qualquer sugestão será bem vinda, apesar d’eu não prometer que vou implementá­la :­)
Linus (torvalds@kruuna.helsinki.fi)

Obs: Sim ­ ele é independente de qualquer código Minix e ele tem um filesystem do tipo multi­ threaded. Ele NÃO é portável (usa características do 386 etc.) e provavelmente nunca irá suportar qualquer outro tipo de HD que não seja AT, pois isto é tudo o que eu consegui.

BSDs

● 1986: Intel 386 ­ a possibilidade de se portar o Unix para a plataforma PC

● 1990: 386BSD ­ Iniciado por William Jolitz
– Já em 1988, começou­se a tirar código da AT&T do BSD

● 1991: BSD/386
– Empresa BSDi, portando o 4.3BSD NET/2

● 1992: Processo da AT&T

● 1995: 4.4BSD­Lite release 2
– Último BSD
– Completamente livre de patentes da AT&T
– Pouco após seu lançamento, o núcleo de desenvolvimento em Berkeley se desfez


FreeBSD

● 1993: Iniciado com o 386BSD
● Medo de processos levou à reengenharia do sistema inteiro, baseado no 4.4BSD­ Lite

NetBSD

● Também derivado do 386BSD e do 4.4BSD

● Iniciou a partir da frustração com o 386BSD

● Foco em portabilidade

OpenBSD

● “Fork” do NetBSD em 1995
– Criado por Theo de Raadt, depois de discordâncias com o NetBSD

● Foco em segurança, acima de tudo

Cenário atual

● GNU/Linux – diversas distribuições

● Família BSD – diversos SOs

● Unix comercial tende a desaparecer por completo

● “Retorno às raízes”:
– Free Software x Open Source x Código fonte compartilhado
– Comprovação prática da viabilidade técnica do software livre


Mais sobre a História do unix

O unix tem uma interessante história. Aquilo que começou como um passatempo de um jovem pesquisador, tornou-se um empreendimento que gera bilhões de dólares, envolvendo universidades, corporações multinacionais, agências governamentais, e entidades internacionais de padronização. Citaremos a seguir um breve e resumido histórico desse sistema operacional, o UNIX.

A princípio torna-se indispensável a abordagem da situação histórica que resultou no Unix. Nos anos 40 e 50, existia um problema da maneira que os computadores eram utilizados, ou seja, era preciso o usuário enviar ao centro de processamento de dados um job em cartões perfurados, para que estes fossem processados. Após uma série de submissões o usuário podia buscar listagem contendo os resultados do seu programa.

Para tentar solucionar tal impasse, o sistema de compartilhamento de tempo foi inventado no Darmouth College e no M.I.T. . Em pouco tempo, os pesquisadores do M.I.T. se juntaram ao da General Electric e os do Bell Labse desenvolveram um sistama de segunda geração, o Multics (Multiplexed Information and Computing Service). Este sistema não teve muito sucesso, pois um dos motivos do seu insucesso foi o fato de ele ter sido escrito em PL/I, uma linguagem muito pesada, com compilador muito ineficiente.

Com esse fracasso, a equipe do Bell Labs fez com que um de seus pesquisadores, Ken Thompson , começasse a reescrever o Multics, em linguagem de máquina e com muito menos ambição, usando um PDP-7. A denominação veio a partir de outro pesquisador, Brian Kernighan, chamando o sistema de Unics.

Com este sucesso e admiração, o trabalho de Thompson teve logo adesão de Dennis Ritchie. A partir daí, o unix saiu do PDP-7 para os então modernos PDP-11/20, logo depois PDP-11/45 e para o PDP-11/70, sendo que estas duas últimas máquinas dominaram o mercado durante toda a década de 70. Com estas evoluções, Thompson reescreveu o Unix na linguagem B. Como esta linguagem tinha suas debilidades, Ritchie desenvolveu a linguagem C, e escreveu um compilador para ela.

Em 1974, Ritchie e Thompson publicaram um artigo sobre o Unix, que teve seu devido reconhecimento com o recebimento do Turing Award. Com isso muitas universidades começaram a solicitar ao Bell Labs cópias do Unix.

A versão que se tornou padrão no mundo acadêmico foi a 6, e poucos anos depois foi substituida pela 7. Toda uma geração de estudantes foi formada neste sistema o que contribuiu para sua divulgação fora do círculo acadêmico. Já em meados dos anos 80, o Unix era amplamente utilizado tanto em minicomputadores como nas estações de trabalho de várias empresas.

O primeiro sistema Unix implantado numa máquina diferente do PDP-11 rodou no minicomputador Interdata 8/32. Isto revelou que o Unix mantinha uma série de compromissos com a máquina hospedeira, entre eles considerar que todos os números inteiros eram de 16 bits, que todos os ponteiros eram de 16 bits também, e que a máquina possuia três registradores disponíveis para armazenamento temporário, isto caracterizava o UNix no PDP-11, e nenhuma delas era válidas no Interdata.

Um outro problema que apesar do compilador C ser muito eficiente e rápido, ele só gerava código objeto para o PDP-11. Ao invés de escrever um compilador para cada máquina específica, Steve Johnson do Bell Labs projetou e implementou um compilador C portátil, que pode ser customizado para gerar código objeto para qualquer máquina. Por diversos anos, quase todos os compiladores C eram baseados naquele projetado por Johnson, o que facilitou a difusão do Unix e seu emprego em novas arquiteturas.

Uma das primeiras universidades a adquirir o Unix versão 6 foi a University of California at Berkeley, com o código fonte disponível. Sendo assim o pessoal de Berkeley, foi capaz de analisar e modificar o sistema, chegando a produzir o 1SBD( First Berkeley Software Distribution), com o apoio do DARPA, Defense Advanced Research Projects Agency, esta versão e suas subsequentes( 2BSD, 3BSD, 4BSD) foram desenvolvida para o PDP-11.

A versão 4BSD incorporava um grande número de melhoramentos. O principal deles foi o uso da memória virtual e da paginção, permitindo que os programas fossem maiores que a memória física, dividindo-os em páginas que iam e vinham da memória, conforme a necessidade. A ligação em rede de máquinas Unix, outra carcterística desenvolvida em Berkeley, fez com que o protocolo de rede do BSD, o TCP/IP, se tornasse o padrão com uma utilização muito maior que a dos padrões oficiais, como o OSI.

O pessoal de Berkeley acrescentou vários utilitários ao Unix, tais como um novo editor de texto, um novo shell, compiladores Pascal e Lisp entre outros. Essas modificações fizeram com que vários fabricantes de computadores baseassem suas versões do Unix no Unix de Berkeley, oa invés da versão oficial da AT&T, o System V.

A falta de padronização do Unix, com a divulgação de duas versões incompatíveis e diferente, a 4.3BSD e a System V release 3, além de cada fabricante adicionar seus próprios melhoramentos, levou a um racha no mundo do Unix. Somado ao fato de não haver padrão para o formato dos programas em binário, isso inibiu o sucesso comercial desse sistema.

A primeira tentiva de rencociliar as duas vertentes do Unix começou com o Comitê de Padronização do IEEE. O nome do projeto foi POSIX. Este produziu um padrão chamado 1003.1. A idéia do POSIX era de que o fornecedor de software que escrevesse programas para Unix tivesse certeza de que, se usasse apenas os procedimentos definidos pelo padrão 1003.1, seu programa ia rodar em qualquer sistema Unix aderente ao padrão.

Apesar de o padrão 1003.1 preocupar-se somente com as chamadas de sistemas, outros documentos também produzidos sob a inspiração do comitê tentaram padronizar os programas utilitários, a ligação em rede, e muitas outras características do Unix. A linguagem C também foi padronizada pelo ISO e pela ANSI.

Um grupo de empresas não queria ver a AT&T ditando as regras do Unix e formaram um consórcio OSF (Open Software Foundation), para produzir um sistema que estivesse de acordo com todos os padrões vigentes, não só o IEEE, mas que também continha algumas características adicionais, tais como um sistema de janelas, uma interface gráfica, processamento distribuído e muito mais. Como toda ação tem uma reação, a AT&T constituiu seu próprio consórcio, o UI (Unix International). A versão UI do Unix é baseado no System V.

O resultado dessa concorrência levou a um sem querer, porém "satisfatório" . Pois os usuários estão tão próximos de um padrão quanto estavam antes da iniciativa do IEEE.

Portanto, uma propriedade comum a todos esses sistemas é o fato de eles serem extremamente grandes e complexos, justamente o contrário da idéia original do Unix.



Resumo da história do sitema operacional Unix


Tudo começou em 1965 quando formou-se um grupo de programadores, composto por Ken Thompson, Dennis Ritchie, Douglas McIlroy e Peter Weiner, num esforço conjunto da AT&T (bell labs), da General Electric (GE) e do MIT (Massachussets Institute of Technology) para o desenvolvimento de um sistema operacional chamado Multics(Multiplexed Information and Computing Service),o multics por sua vez deveria ser um sistema multiusuário,um sistema de arquivos de alta confiança,suporte a vários tipos de aplicações,suporte a vários ambientes de programação e interfaces de usuário.Em 1965 com a saída da AT&T.

Ken Thompson e Dennis Ritchie haviam criado um jogo chamado “Space War”. Com o fim do projeto e motivados a continuar a utilização do jogo, eles tiveram que reescrever todo o sistema operacional para um computador disponível bem menos potente, um DEC PDP-7, de 4 kbytes de memória. Thompson concluiu o trabalho de criar todo o Unix no verão de 1969, utilizando a linguagem BCPL (conhecida popularmente como Linguagem B), e que contava com as funções básicas: editor de texto, montador (ou assembler, que transforma linguagem assembly em linguagem de máquina) e interpretador de comandos (um Shell) neste período inicial do Unix, ele era chamado de unics, numa alusão ao Multics, e foi logo rebatizado como Unix.

Com o crescimento do projeto surgiu a necessidade de se usar um sistema operacional compatível com diferentes plataformas de hardware, levou ao desenvolvimento de uma nova linguagem de programação, cujo pudesse ser portada com facilidade, sem ou com pouquíssimas modificações no source(código-fonte).Então em 1972, Dennis Ritchie, no AT&T Bell Labs, desenvolveu a Linguagem C (que superava as limitações da Linguagem B) é o uso da Linguagem C é considerado um dos maiores pontos de difusão do sistema Unix.

Em 1974, com um artigo publicado na revista mensal da ACM (Association for Computing Machinery), que despertou o interesse de acadêmicos e instituições no mundo todo pelo novo Unix. Como o seu código-fonte era livremente distribuído para universidades, começaram a surgir novas versões, além da original da AT&T (rebatizada como System V); a primeira foi desenvolvida na Universidade de Berkeley – denominado BSD (Berkeley Software Distribution), liberado publicamente em 1977, predecessor dos atuais e bem-sucedidos BSD’s (alguns anos depois com base no sistemas BSD surgiram novas “versões”, como o freeBSD, netBSD e openBSD, que tinham o kernel baseado no sistema BSD). Mais tarde percebendo o poder do Unix, a AT&T parou de disponibilizá-lo livremente, que desde esse momento passou a ser disponibilizado por um preço muito alto, é depois de algum tempo uma serie de universidades, empresas e grupos de programadores, começaram a desenvolver uma serie de aplicativos para o Unix(desde jogos até aplicações comerciais).

A partir de 1979, surgiram as implementações comerciais do Unix para servidores: Sun OS (da Sun, posteriormente rebatizado para Solaris), Xenix (da Microsoft), HP/UX ( da HP) e AIX (da IBM) e muitas outras. Como as implementações de cada empresa eram ligeiramente diferentes entre si, a partir daí o Unix não era mais “o Unix”, um sistema operacional, mas sim “um Unix”, um tipo de sistema operacional. Com tantas variedades de Unix surgindo a todo momento, todos com a mesma arquitetura e filosofia de sistema, porém com tendências a se divergirem, surgiu então o padrão POSIX (Portable Operating System Interface for UniX) em 1985, um conjunto de padrões definidos pelo IEEE e pela ISO que define características essenciais de sistemas Unix,O POSIX não permitiu compatibilidade de rodar programas binários entre os vários Unix, mas sim facilidade de portar um programa de um Unix para outros, através de compilação de códigos-fonte em C.
No início da década de 1990, a AT & T vendeu o código UNIX para a Novell. Além disso, outros tinham comerciais, tais como códigos UNIX UNIX Digital. Em 1995, a Novell vendeu parcialmente alguns dos direitos do código UNIX à Santa Cruz Operation. Em 2000, Santa Cruz Operações vendeu o UNIX código para Caldera Systems, que mudou seu nome para SCO.

Atualmente, Unix (ou *nix) é o nome dado a uma grande família de Sistemas Operativos que partilham muitos dos conceitos dos Sistemas Unix originais, sendo todos eles desenvolvidos em torno de padrões como o POSIX (Portable Operating System Interface) e outros. Alguns dos Sistemas Operativos derivados do Unix são: BSD (FreeBSD, OpenBSD e NetBSD), Solaris (anteriormente conhecido por SunOS), IRIX, AIX, HP-UX, Tru64, Linux (nas suas centenas de distribuições), e até o Mac OS X (baseado em um kernel Mach BSD chamado Darwin). Existem mais de quarenta sistemas operacionais *nix, rodando desde celulares a supercomputadores, de relógios de pulso a sistemas de grande porte.




Cronologia do Unix

1969 - Ken Thompson cria o Unix, executando em um PDP-7 da DEC
1970 - Thompson e Dennis Ritchie instalam o Unix em um PDP-11/20 da DEC. Ritchie usa a linguagem C para ser portável em arquiteturas de hardware diferentes.
1971 - É lançada a versão 1 do Unix, escrita em linguagem Assembly.
1973 - Ritchie e Thompson escrevem o primeiro compilador C para o Unix. A versão 4 do Unix é escrita em linguagem C.
1974 - A AT&T autoriza a distribuição do código-fonte do Unix para as universidades.
1975 - É lançada a versão 6 do Unix. Sua distribuição é ampla nas universidades. A Universidade da Califórnia, em Berkeley, começa a trabalhar no BSD Unix.
1978 - É lançada a versão 7 do Unix. São necessárias taxas de licença.
1979 - A AT&T lança o Unix System III.
1983 - A AT$T lança o Unix System V; A Universidade da Califórnia, em Berkeley, lança o BSD Unix 4.2 (a Sun o utiliza como base para a criação do SunOS).
1984 - O servidor de janelas X Window começa a ser desenvolvido no MIT.
1986 - Primeira implementação comercial do X Window, executando no VAXstation-II/GPX, o X10R3.
1987 - A AT&T lança o Unix System V release 3. É lançado o BSD 4.3. A Sun e a AT&T concordam em fundir o BSD Unix e o Unix System V.
1988 - Criação do X Consortium, organização aberta para garantir a evolução do X. É lançado o X11R3.
1990 - A AT&T lança o Unix System V release 4, que promove relativa unificação do BSD Unix e do Unix System V. O Minix é colocado à disposição na Internet.
1992 - A Sun lança o Solaris, baseado no Unix System V release 4. É lançado o Linux 0.99pl5.
1992-93 - É lançada a primeira distribuição do Linux em um cd-rom.
1994 - É lançada a versão livre do X Window, o XFree86, pelo grupo XFree Project.


Referência:

Linux - Guia do Administrador do Sistema. Editora Novatec.

angelfire Historia do unix
http://www.planetarium.com.br/planetarium/noticias/2001/3/984441001
http://pt.wikipedia.org/wiki/Unix
http://upload.wikimedia.org/wikipedia/commons/1/11/Unix-history.svg
http://pt.wikipedia.org/wiki/Multics
http://pt.tech-faq.com/history-of-unix.shtml&prev=hp&rurl=translate.google.com
http://catoze.wordpress.com/2009/04/13/historia-do-unix
















Comments