# Sistemas operacionais/História
### Introdução:

De que forma os Sistemas Operacionais foram surgindo ao longo da história? Qual a importância do Linux, do DOS, Mac-OS e Windows? Esses sistemas operacionais diversos são concorrentes ou compartilham da mesma filosofia?

### Sistema Operacional - Definição

Sistema Operacional é um programa, que serve como ponte entre os aplicativos (software) e a parte física do sistema (hardware), e tem a função de gerenciar seus recursos (dizer qual aplicativo terá acesso ao processador, memória, sistema de arquivo, etc.).
Um outro conceito interessante é que sistema operacional pode ser definido como um conjunto de programas especialmente feitos para a execução de várias tarefas, entre as quais servir de intermediário entre o utilizador e o computador. Um sistema operacional, tem também como função, gerir todos os periféricos de um computador.

### Quem veio antes? O S.O. ou o computador?

Os Sistemas Operacionais nasceram praticamente junto com os computadores. Quando digo computadores, refiro-me áqueles fabricados com transistores, em diante, ignorando a geração anterior.

### Linha do Tempo:
#### 1964 - Multics

Em 1964, com um time de programadores ( naquela época engenheiros) das empresas AT&T (Laboratórios Bell), da General Electric (GE) e liderados pela Universidade MIT (Massachusetts Institute of Technology) idealizaram o Multics, um Sistema Operacional, Multi processadores, multi usuários, múltiplas interfaces e multi aplicativos para trabalhar em rede através de terminais. Um projeto muito além de seu tempo, teve que aguardar alguns anos para entrar em operação, pois na época não possuia hardware para rodar esse S.O. O último sistema em operação foi desligado em 2000.

#### 1969 – Unics ou Unix

Em 1969 surge o primeiro Fork da história da informática, Fork é uma bifurcação, ou seja, um programa com características semelhantes, onde são introduzidas modificações. Ken Thompson e Dennis Ritche, que trabalhava no projeto do Multics, precisaram reescrever o código, pois eles haviam criado um jogo - Space War - e queriam dar sequência no mesmo, refazendo o código para um computador DEC-PDP-7 de 4 kbytes. O nome Unix é um trocadilho com Unics, que se pronuncia da mesma forma e é devido a UNiplex Information and Computing Service. Thompson finalizou o trabalho em 1969, com base na linguagem BCPL.

#### 1973 – Unix em C

Em 1973 o próprio Ken Thompson em conjunto com Dennis Ritchie reescreve o Unix em linguagem C, um marco histórico. A linguagem C é uma linguagem de programação mais simples de ser entendida por nós seres humanos, ao contrário do Assembly, a mais leve das linguagens, mas extremamente complexo. Apesar de ser uma linguagem de alto nível, a Linguagem C permanece pequena, leve e otimizada o suficiente para se escrever um sistema operacional. O uso da linguagem C é considerada uma das principais razões para a rápida difusão do Unix, isso permitiu que outras plataformas tivessem maior portabilidade, o que fez com que o sistema passassem de algumas dezenas de instalações com um crescimento apreciável.. O Unix herdou do Multics suas Características: Multi processadores, multi usuários, múltiplas interfaces e multi aplicativos.
Incontáveis sistemas operacionais desenvolvidos posteriormente foram baseados no Unix em C (como pode ser visto na imagem ao lado), herdando suas excelentes características acima descritas.
Veja também Linguagem C

#### 1976 – Apple 2

Em 1976 Steve Jobs o guru da Apple, tem uma ideia que revolucionou o mundo, um computador pequeno, portátil e barato o suficiente para que qualquer pessoa pudesse ter um, o apple 2, (o apple 1 era apenas uma placa de computador ligada a um teclado). O apple 2 rodava um interpretador basic, gravado em uma memória rom, através de fitas k7 ou disquetes os programas concebidos em basic podiam ser salvos e carregados de volta ao sistema.

#### 1980 – PC - MS-DOS

Em 1980 a gigante dos computadores de grande porte, a IBM (International Business Machines), decide entrar para o mercado dos computadores pessoais, mas seu computador pessoal, o PC (Personal Computer) assim batizado pela IBM, não possuía nenhum programa para rodar nele. A IBM fechou contrato com a Microsoft de Bill Gates, para ela fornecer o Sistema Operacional de seu PC's. Bill Gates, um visionário homem de negócios, fechou na época o que é considerado por muitos o melhor negócio de todos os tempos: vendeu para a IBM o que não tinha, um Sistema Operacional. Bill Gates procurou Tim Paterson _que desenvolveu o QDOS_ e comprou dele por míseros US$50.000; rebatizou o sistema de MS-DOS e vendia a licença de uso para os computadores da IBM. A rápida popularização dos PC's provocou um crescimento meteórico da então pequena Microsoft. Mais tarde Bill Gates contratou Tim Paterson para trabalhar na Microsoft: Tim Paterson, que podia ter se tornado o homem mais rico do mundo, por ironia, trabalhava para Bill Gates. Ao contrário do Unix, o MS-DOS é um sistema operacional pensado para ser simples, único usuário, só funciona nos processadores Intel, só executa um programa por vez, originalmente não trabalhava em rede.
Veja também MS-DOS.

#### 1984 – Apple Machintosh – Mac OS

Em 1984 Steve Jobs Rouba da Xerox, como ele mesmo admite, a ideia de um sistema operacional baseado em objetos clicáveis com um mouse, e a Apple lança no mercado o Machintosh ou para os mais íntimos simplesmente Mac. O Mac OS, possui seu código desenvolvido pela Apple, é fechado e proprietário. O Mac OS foi desenvolvido do zero, desta formas era incompatível com os programas feitos para o apple 2, o machintosh tornou o apple 2 obsoleto.

#### 1984 – GNU – GNU não é Unix

Neste mesmo ano Richard Stallman começa a desenvolver o Projeto GNU (uma abreviação recursiva em inglês, que significa "GNU Não é Unix"). Surge a Filosofia de Software Livre: o GNU deveria ter as mesmas características do Unix sem aproveitar seu código; no software livre, qualquer pessoa pode copiar e redistribuir cópias, modificar o código sem e aprimorar o programa e compartilhar com a comunidade, além de estudar o funcionamento do programa e executá-lo para qualquer fim. Essa filosofia baseia-se no fato de que para desenvolver um programa não é preciso começar do zero, pode-se aproveitar o trabalho de programadores que vieram antes, a assim, “Crescer sobre o ombro de Gigantes”. Gnu é o nome, também, de um mamífero africana bastante adaptado à savana, animal esse que originou a logo do GNU.
Veja também Software livre.

#### 1986 – Windows

Em 1986 a Microsoft lança o Windows 1, este nem mesmo era um S.O. Era um aplicativo de janelas que rodava em cima do MS-DOS. O lançamento do Windows manteve compatibilidade dos programas feitos para o MS-DOS, e adicionou a interface clicável com mouse. Como sabemos, a dobradinha MS-DOS e Windows praticamente monopolizou o mercado de computadores pessoais. Ao contrário do Machintosh, não precisava de um computador novo para ter o Windows, bastava instalar 4 disquetes no seu velho IBM-PC e pronto.

#### 1987 - Minix

Em 1987 Andrew Stuart Tanenbaum cria o Minix para demonstrar seu livro "Operating Systems Design and Implementation". O Minix é um Unix-like compacto escrito em 12.000 linhas de código, gratuito e com o código fonte conhecido, roda até mesmo em um 286 com apenas 16mb de memoria RAM, e é possível rodar através de um "live-CD" sem necessidade de instalação.

#### 1990 - GNU Hurd

Começa o desenvolvimento do microkernel GNU Hurd, com atraso de 3 anos por conta de Stallman preferir esperar a liberação do Mach microkernel do MCU em uma licença compatível com a GNU/GPL ao invés de usar um BSD-like.

#### 1991 - Linux

Em 1991 Linus Torvalds, inspirado pelo Minix, lança publicamente como software livre o Linux. Posteriormente, faz tão grande sucesso que recebe contribuição de milhares de programadores ao redor do mundo, grandes empresas também contribuem na programação de seu código como IBM, Sun Microsystems, Hewlett-Packard (HP), Red Hat, Novell, Oracle, Google, Mandriva e Canonical , e atualmente o Linux é o kernel mais utilizado, desde computadores de grande porte, passando por computadores pessoais, DVD player, roteadores, celulares.
Veja também Guia do Linux

#### 1993 – Windows NT

1993 é a data do lançamento do Windows NT. Esse SO da família Windows é o primeiro a pensar no ambiente de rede e ser independente do MS-DOS. Ele possui um emulador de MS-DOS em janela, onde também é possível passar comandos para o SO. O Windows NT trouxe o sistema de arquivos NTFS, o sistema anterior ( FAT ) é funcional e relativamente simples, porém com o uso provoca fragmentação dos arquivos gravados. O sistema de arquivos NTFS foi pensado para suprir as deficiências do sistema FAT, bem como passa a trabalhar com criptografia nativa de dados, múltiplos usuários e suporta tamanhos maiores de discos.

#### 1994 – Mac RISC – Power PC

Em 1994 são lançados os Mac's com processadores Power-PC da IBM, de arquitetura RISC. Essas máquinas surgem de uma aliança entre Apple-IBM-Motorola; devido a mudança de plataforma, o Mac inteiro teve que ser reescrito; para manter a compatibilidade com programas escritos para o antigo Mac foi usado um emulador que provocava lentidão; à medida que os aplicativos foram sendo reescritos para o novo padrão, o emulador deixou de ser usado.

#### 1997 – ReactOS

Um grupo de colaboradores, que em 1996 fazem uma tentativa frustrada de produzir um clone livre do MS Windows 95, re-iniciam o trabalho, porém agora tendo como meta o MS Windows NT. É um sistema operacional livre que se beneficiou de bastante código do projeto Wine ("Wine Is Not an Emulator), outro projeto de software livre. Atualmente, embora execute muitos softwares de destaque, continua inadequado para ambiente de produção (2015).

#### 2001 – Windows XP

Em 2001 é lançado o Windows XP; as implementação do Windows NT direcionadas ao ambiente corporativo chegam ao usuário doméstico; o MS Windows XP mantém compatibilidade de software com todas as versões anteriores: essa escolha por parte dos programadores deste só resultou em seu sucesso. O Windows foi e é atualmente o sistema operacional mais utilizado em Desktops e Laptops; neste setor é o SO que tem a maior variedade de aplicativos.

#### 2006 – Apple Intel – Mac OSX

Em 2006 os Mac's passaram a utilizar os processadores Intel, a mudança de plataforma exigiu mais uma vez a mudança de S.O. A Apple passou a utilizar o núcleo open-source Darwin, um comprovado estável kernel Unix-like. Os programadores da Apple tinham então liberdade, para dedicar-se a programação da interface gráfica e sua estabilidade. O Mac também cresce nos ombros de gigantes.

#### 2008 - Android

Em 2008 a gigante Google lança no mercado o Sistema Operacional open-source Android, com seu núcleo em Linux, é o S.O. Unix-like atualmente (2014) de maior uso em Smartphones, 80% dos 4,5 bilhões aparelhos são Android.

### Gerações

Tradicionalmente, os S.O. podem ser divididos, historicamente, em quatro gerações:
* 1ª. Geração: os programadores desenvolviam o programa e as funções que, atualmente, estão sob a supervisão do S.O;
* 2ª. Geração: o sistema de processamento em lote, que constituía no armazenamento prévio de diversos jobs para serem processados sequencialmente no computador, marcou esta geração. Um job só iniciava seu processamento quanto o seu antecessor terminava;
* 3ª. Geração: desenvolvimento do conceito de multiprogramação, ou seja, a partição da memória do computador em diversas parcelas para que múltiplos jobs pudessem ser executados, dando a sensação para o usuário de um paralelismo não existente. Por exemplo, enquanto um job esperava por uma operação de E/S (potencialmente mais demorada), a CPU poderia realizar o processamento de outro job já armazenado na memória;
* 4ª. Geração: com o surgimento das estações de trabalho e dos computadores pessoais, o desenvolvimento de interfaces gráficas se torna comum. As redes de computadores impulsionam o surgimento de sistemas operacionais de rede e os sistemas operacionais distribuídos.
* ↑ O que é um Sistema Operacional? Disponível em: http://www2.ic.uff.br/~aconci/SistemasOperacionais.html