sexta-feira, 20 de março de 2009

Sistemas Operacionais

Como tudo começou

Na primeira geração de computadores (1945-1955), os computadores eram tão grandes, mais tao grandes que ocupavam salas imensas. Eles eram construídos basicamente com válvulas e painéis, e os sistemas operacionais "não existiam". Os programadores, que também eram os operadores, controlavam o computador por meio de chaves , fios e luzes de aviso.
Na geração seguinte (1955-1965), foram criados os sistemas em lote (batch systems), que permitiram melhor uso dos recursos computacionais. A base do sistema operacional era um programa monitor, usado para enfileirar tarefas. O usuário foi afastado do computador; cada programa era escrito em cartões perfurados, que por sua vez eram carregados, juntamente com o respectivo compilador (normalmente Fortran ou Cobol), por um operador, que por sua vez usava uma linguagem de controle chamada JCL (job control language).
No início da computação os primeiros sistemas operacionais eram únicos, pois cada mainframe vendido necessitava de um sistema operacional específico. Esse problema era resultado de arquiteturas diferentes e da linguagem de máquina utilizada. Após essa fase, iniciou-se a pesquisa de sistemas operacionais que automatizassem a troca de tarefas, pois os sistemas eram monousuários e tinham cartões perfurados como entrada (eliminando, assim, o trabalho de pessoas que eram contratadas apenas para trocar os cartões perfurados).
Um dos primeiros sistemas operacionais de propósito geral foi o CTSS, desenvolvido no MIT. Logo após os laboratórios Bell da AT&T e a General Eletric desenvolveram o Multics, cujo objetivo era suportar centenas de usuários. Apesar do fracasso comercial, o Multics serviu como base para o estudo e desenvolvimento de sistemas operacionais. Um dos desenvolvedores do Multics, que trabalhava para a Bell, Ken Thompson, começou a reescrever o Multics num conceito menos ambicioso, criando o Unics (em 1969), que mais tarde passou a chamar-se Unix. Os sistemas operacionais eram geralmente programandos em assembly, até mesmo o Unix em seu início.
Na década de 1970, quando começaram a aparecer os computadores pessoais, houve a necessidade de um sistema operacional de utilização mais fácil. Em 1980, William Bill Gates e seu colega de faculdade, Paul Allen, fundadores da Microsoft, compram o sistema QDOS (Quick and Dirty Operating System), de Tim Paterson, batizam-no de DOS (Disk Operating System). O DOS vendeu muitas cópias.
No começo da década de 1990, um estudante de computação finlandês postou um comentário numa lista de discussão da Usenet dizendo que estava desenvolvendo um kernel de sistema operacional e perguntou se alguém gostaria de auxiliá-lo na tarefa. Este estudante chamava-se Linus Torvalds e o primeiro passo em direção ao tão conhecido Linux foi dado naquele momento.

Invenções da XEROX que contribuiram para a interface GUI

Xerox PARC foi o incubador de vários elementos dos computadores atuais. Vários já faziam parte do primeiro computador pessoal, o Alto, que incluía muitos aspectos do modelo atual de uso dos computadores: o mouse, gráficos em cores, um editor de texto WYSIWYG, InterPress (uma linguagem gráfica de descrição de página independente da resolução e precursora do PostScript), Ethernet, programação orientada a objeto na linguagem de programação Smalltalk e ambiente de desenvolvimento integrado. A impressora a laser foi desenvolvida na mesma época, como parte integrante do ambiente geral.

Entre os distintos pesquisadores do PARC encontravam-se dois ganhadores do Turing Award: Butler W. Lampson (1992) e Alan Kay (2003). A ACM Software System Award reconheceu o sistema Alto em 1984, Smalltalk em 1987, InterLisp em 1992 e Chamada de procedimento remoto (RPC) em 1994. Lampson, Kay, Bob Taylor e Charles P. Thacker receberam o prestigiado prêmio Charles Stark Draper Prize da National Academy of Engineering en 2004 pelo seu trabalho no sistema Alto.

Xerox foi muito criticada (particularmente por historiadores de negócios) por ter falhado em comercializar de maneira adequada e explorar economicamente as inovações do PARC. O exemplo favorito é a GUI, desenvolvida inicialmente no PARC para o "Alto" e depois comercializada como o Xerox Star pelo Xerox Systems Development Department. Apesar de extremamente importante em termos de sua influência em projetos de sistemas futuros, o projeto foi condenado por ter vendido apenas 25000 unidades.

A primeira GUI com sucesso comercial foi o Apple Macintosh, desenvolvida, segundo uma famosa história incorreta, depois de uma visita de Steve Jobs ao PARC. (A verdade é que o trabalho com a GUI já estava sendo desenvolvido na Apple, e as duas visitas de Job somente teriam mostrado a ele como a GUI seria quando estivesse pronta).

Não há dúvidas quanto ao impacto a longo termo dos sistemas do PARC. Foram necessárias duas décadas para que muitas das suas tecnologias fossem ultrapassadas. As interfaces e tecnologias que o PARC lançou tornaram-se padrões para a maior parte da indústria de computadores, uma vez que seus méritos tornaram-se largamente conhecidos.

É conhecido o fato de que os dirigentes da Xerox falharam em ver o potencial das diversas invenções do PARC. Enquanto isso é em parte verdade, também é em parte uma visão simplista. Eles certamente se deram conta do valor da impressão a laser, e dos avanços vindos do setor não orientado a computadores do PARC. A maior parte dos críticos não percebem que a pesquisa em computação era uma parte relativamente pequena do PARC; havia diversos pesquisadores trabalhando em áreas como a ciência de materiais no PARC, incluindo pioneiros em tecnologias LCD e de disco óptico.



Referências:

http://pt.wikipedia.org/wiki/Xerox_PARC

Linha do tempo (MS-DOS)

A primeira versão, PC-DOS 1.0, foi lançada em Agosto de 1981. Ela suportava até 256 kB de RAM e dois disquetes de 160 kB 5.25" de face única. Suas principais características era ser um sistema monousuário e monotarefa(monoprocessado).

Em Maio de 1982, o PC-DOS 1.1 trouxe suporte aos disquetes de 320 kB dupla-face.

PC-DOS 2.0 (para IBM) e MS-DOS 2.0 (para os demais PCs), lançados em Março de 1983, foram as primeiras versões a suportar o PC/XT e drives de discos fixos (comumente chamados de drives de disco rígido). A capacidade dos disquetes foi elevada a 180 kB (face única) e 360 kB (dupla face) com o uso de nove setores por trilha em vez de oito. A versão 2.0 também permitiam a um programa carregar e rodar subprogramas e overlays de programa(isso lhes dá um grau de independência do programa que os iniciou).

Ao mesmo tempo, a Microsoft anunciou sua intenção de criar uma GUI (Graphical User Interface - Interface Gráfica de usuário) para o DOS. Sua primeira versão, Windows 1.0, foi anunciada em Novembro de 1983, mas estava incompleta e não interessou a IBM. Em Novembro de 1985, a primeira versão completa, Windows 1.01, foi então lançada.

MS-DOS 3.0, lançado em Setembro de 1984, suportava inicialmente disquetes de 1.2MB e discos rígidos de 32MB. Incluiu também códigos de erro mais estendidos, de forma que permitia que os programas obtivessem uma explicação mais detalhada do que aconteceu de errado, quando um erro surge.

MS-DOS 3.1, lançado em Novembro do mesmo ano, introduziu o suporte à redes, com serviços que permitiam o "travamento" e "destravamento" do acesso a todas as partes de um arquivo, o que tornava seguro e prático para vários computadores compartilharem o mesmo arquivo sem interferência um do outro.

MS-DOS 3.2, lançado em Abril de 1986, foi o primeiro lançamento comercial do MS-DOS. Ele adicionou suporte aos disquetes de 720 kB/3.5". As versões anteriores foram vendidas apenas aos fabricantes de computadores que embutiam-no em seus produtos, porque os sistemas operacionais, até então, eram considerados parte de um computador, não um produto independente. Ele também incluiu o suporte para que o sistema a usasse linguagens diferentes do inglês americano.

MS-DOS 3.3, lançado em Abril de 1987, introduziu os discos lógicos. Um disco físico maior que 32MB poderia ser dividido em várias partições, consideradas como discos independentes pelo sistema operacional. Também foi adicionado suporte aos disquetes de 1.44 MB/3.5" e o suporte para até quatro portas seriais reconhecidas pelo sistema.

MS-DOS 4.0, lançado em Julho de 1988, suportava discos de até 2 GB, sem a necessidade de se criar partições, (discos cujos tamanhos variavam, geralmente, entre 40 e 60 MB na época), e teve a adição de uma shell chamada DOSSHELL. Outras shells, como a Norton Commander e a PCShell, existiram na época. Em Novembro de 1988, a Microsoft corrigiu muitos bugs em um update, MS-DOS 4.01.

MS-DOS 5.0, lançado em Abril de 1991, incluiu o interpretador (compilador) de BASIC em tela cheia, o QBasic, também trazendo um editor de texto em tela cheia, (anteriormente, havia apenas um editor linha-a-linha, edlin). Um utilitário de cache de disco (SmartDrive), capacidade de undelete, e outras melhorias foram incluídas nessa versão. Como houve problemas graves com alguns utilitários de disco, mais tarde, no mesmo ano, foi lançado o MS-DOS 5.01, com as devidas correções.

Em Março de 1992, a Microsoft lançou o Windows 3.1, que se tornou a primeira versão popular do sistema Microsoft Windows, que somou mais de um milhão de cópias vendidas.

Em Março de 1993, o MS-DOS 6.0 foi lançado. Seguido pela concorrente Digital Research, a Microsoft adicionou um utilitário de compressão de disco chamado DoubleSpace. Nessa época, os discos rígidos mais comuns tinham em torno de 200 a 400 MB, e muitos usuários necessitavam seriamente de mais espaço em disco. O MS-DOS 6.0 também trouxe o desfragmentador de disco DEFRAG, o MSBACKUP para criação de backups, otimização de memória com o MEMMAKER, e um princípio de protetor anti-vírus, MSAV.

Como suas duas antecessoras, a versão 6.0 mostrou ter várias falhas. Devido a reclamações sobre perda de dados, a Microsoft lançou uma versão atualizada, MS-DOS 6.2, com um utilitário DoubleSpace melhorado, um novo utilitário de checagem de disco, SCANDISK (similar ao fsck do Unix), além de outras melhorias.

A versão seguinte, MS-DOS 6.21 (lançada em Março de 1994), surgiu devido a problemas legais. A empresa Stac Electronics acionou judicialmente a Microsoft, que foi forçada a remover o DoubleSpace de seu sistema operacional.

Em Maio de 1994, a Microsoft lançou o MS-DOS 6.22, com outro pacote de compressão de disco, DriveSpace, licenciado da VertiSoft Systems.

O MS-DOS 6.22 foi a última versão stand-alone do sistema disponível ao público. Ele foi retirado do mercado pela Microsoft em 30 de Novembro de 2001. Veja o (em inglês) Microsoft Licensing Roadmap.

A Microsoft também lançou as versões de 6.23 a 6.25 para bancos e organizações militares Estadunidenses. Estas incluíam já suporte a partições FAT32. A partir de então, o MS-DOS passou a existir apenas como uma parte dos sistemas Windows 9x (95, 98 e Me). A versão original do Microsoft Windows 95 incorporou o MS-DOS versão 7.0.

A IBM lançou a última versão comercial de um DOS - IBM PC-DOS 7.0 - no início de 1995, que incorporava muitos novos utilitários, como anti-vírus, programas de backup, suporte a PCMCIA, e extensões DOS Pen. Também foram incluídas novas ferramentas que melhoravam a utilização de memória e espaço em disco.

Significado do nome WINDOWS

A palavra windows em português significa janelas. A sua interface gráfica é baseada no padrão WIMP previamente desenvolvido em Xerox PARC: possui janelas que exibem informações e recebem respostas dos utilizadores através de um teclado ou de cliques do mouse.

O registro da marca Windows foi legalmente complicado, pelo fato dessa palavra ser de uso corrente em inglês ("windows" é equivalente a "window", que significa janela, porém no plural)

Referências:

http://pt.wikipedia.org/wiki/MS-DOS

História do WINDOWS (fatos que o antecederam)

Falar do MS Windows e não falar de seu antecessor, o MS-DOS, seria como contar uma história e ignorar o seu início.

O início

O DOS (Disk Operating System ou sistema operacional em disco) foi originalmente desenvolvido por Tim Paterson da Seattle Computer Products (SCP) sob o nome de QDOS (Quick and Dirty Operating System), sendo uma variação do CP/M-80 da Digital Research.

Basicamente, o DOS, possui nativamente uma interface de linha de comandos através do seu interpretador de comandos em modo texto, foi feito para ser usado em um ambiente monousuário e monoprocessamento, seguindo os mais simples conceitos do uso da computação e era natural que fosse feito desta forma, pois suas raízes vieram de um sistema operacional e de máquinas de 8 bits.

O QDOS era apenas um produto interno criado para testar uma nova placa com UCP 8086, mas não rodava nas CPUs 8080 (ou compatíveis) exigidas pelo CP/M-80, entretanto foi baseado no CP/M (Control Program / (for) Microcomputers — Programa de Controle para Microcomputadores) — que era o sistema operacional de disco dominante entre os microcomputadores baseados nos processadores de 8 bits Intel 8080 e Zilog Z80.

Entra em ação a MICROSOFT

Sabendo que a International Business Machines (IBM) precisava de um sistema operacional para usar como padrão em sua nova linha de produtos, os PCs (Personal Computers, computadores pessoais) de 16 bits e tencionava comprar o sistema CP/M desenvolvido por Gary Kildall. Inicialmente, o pessoal da IBM contatou Bill Gates (que na época desenvolvia interpretadores da linguagem BASIC), acreditando que ele detinha os direitos sobre o CP/M; Gates desfez o equívoco e encaminhou-os para a Digital Research, cujo dono era Kildall. Não houve acordo entre as partes, particularmente no tocante aos valores, e a IBM voltou a procurar Bill Gates, que ainda não tinha nenhum sistema operacional pronto para oferecer. Gates, contudo, lembrou-se de Tim Paterson, programador da SCP, que havia desenvolvido o QDOS (posteriormente, 86-DOS). Ele entrou em contato com a SCP e comprou os direitos sobre o 86-DOS por (supostamente) US$ 50.000.



Pouco depois, Bill Gates contratou Tim Paterson, o desenvolvedor do QDOS, para trabalhar na Microsoft (onde ele ficou entre maio de 1981 até abril de 1982). A Microsoft licenciou-o da SCP, fez algumas modificações e licenciou-o posteriormente à IBM (vendido como PC-DOS) para seu novo 'PC' usando a CPU 8088 (que internamente era idêntica à 8086), e a vários outros fabricantes de hardware, vendido então como MS-DOS. Rapidamente dominou o mercado dos IBM-PC compatíveis. O ponto chave aqui foi a decisão de Gates, na época, em vender o MS-DOS para fabricantes de computadores com o objetivo de que estes pudessem incorporá-lo ao seu hardware, ao contrário da tentativa de Kildall de vender o CP/M individualmente (por preço mais alto) para usuários finais.

A empresa Digital Research produziu um sistema compatível, conhecido como "DR-DOS", que posteriormente foi tomado pela Novell (depois de ter comprado a Digital Research). Este se tornou o "OpenDOS" durante certo tempo, após a venda de uma divisão importante da Novell feita a Caldera International, atual SCO. Mais tarde, a divisão da Caldera se separou, tornando-se a Lineo (posteriormente rebatizada como Embedix), que por sua vez vendou o DR-DOS à recém-criada Device Logics, atualmente DRDOS, Inc.

Com o aparecimento das GUIs desenvolvidas primariamente por Douglas C. Engelbart, ou seja interface gráficas, como por exemplo o Microsoft Windows 1.0 e o Common Desktop Environment(CDE), o MS-DOS ficou em segundo plano, mas não foi esquecido. Hoje em dia temos inclusive diversos emuladores como o DOSBox que nos permitem rodar os antigos programas feitos para o DOS identicamente em qualquer máquina como antigamente.

O Projeto FreeDOS teve início em 26 de Julho de 1994, época em que a Microsoft anunciou o fim da assistência ao MS-DOS. Jim Hall postou então uma carta-manifesto propondo uma alternativa de código aberto. Em poucas semanas, outros programadores incluindo Pat Villani e Tim Norman se juntaram ao projeto. O kernel, o interpretador de comandos command.com e as principais utilidades foram escritas a partir de código já existente e/ou a partir do zero. A versão 1.0 foi lançada em 3 de setembro de 2006.

Emuladores DOS

Sob um sistema Linux é possível rodar cópias de DOS e muitos de seus clones sob o DOSEMU, uma máquina virtual nativa de Linux, para rodar aplicativos em modo real. Há vários outros emuladores para rodar DOS sob várias versões de UNIX, mesmo em plataformas não-x86.

Referências:

http://pt.wikipedia.org/wiki/MS-DOS
http://pt.wikipedia.org/wiki/Microsoft_Windows
http://pt.wikipedia.org/wiki/FreeDOS

sábado, 14 de março de 2009

segunda-feira, 9 de março de 2009

Análise Mandriva - Parte Um

Antes do post em si, um pequeno aviso: essa leitura é recomendada apenas para quem já teve algum contato com distribuições Linux, então um total leigo não vai entender nada com nada. No entanto, por esses dias espero estar lançando um glossário sobre os principais termos e conceitos do universo Linux.


Depois de quase 2 anos utilizando o Arch Linux em tempo integral, resolvi testar a nova versão do Mandriva, por ter ouvido falar muito bem desta, mesmo entre os usuários avançados (ou estariam estes ficando preguiçosos?).


Então, munido de um tédio sem tamanho, fui ao teste dessa distribuição. Entrei no site, e baixei a iso via Bittorrent, pegando uma ótima velocidade, como já é de praxe nessa união de Linux e BT. No entanto, já se pode observar o primeiro ponto negativo, a falta de uma imagem de disco para instalação em pendrive, que seria a maneira mais cômoda de se utilizar a distro.


O hardware de teste para essa análise é o seguinte:



  • Pentium 4 2.8

  • 512MB RAM DDR400

  • Radeon 9200 PRO

  • Sound Blaster Audigy 2 ZS

  • Placa de Rede 3com

  • Placa-mãe Asus P4SP-MX


Não é, nem de longe, hardware de ponta, mas deve ser o suficiente para os testes, considerando que é um hardware comum no Brasil.


Para esse primeiro teste, os requerimentos, se considerando uma distro User-friendly são:



  • Suporte à Radeon 9200 PRO (que utiliza drivers abertos) e consequentemente, ativação automática ou totalmente gráfica dos efeitos 3D (Compiz Fusion).

  • Suporte integral à rede e som offboard, o que não deve ser um problema, considerando que ambos os drivers estão na árvore principal do kernel

  • Suporte plug-and-play para o modem AIKO 82D da Vivo, o que é normal no ubuntu, por exemplo.

  • Desempenho bom, já que todos os pacotes são otimizados para i586 (não entendo porque não i686, acredito que ninguém vá usar um Pentium Pré-MMX com uma distro com KDE4).


Bootou. O boot, provavelmente por ser gráfico e um livecd, é meio demorado, mas nada que possa ser considerado desesperador. Após o boot, somos apresentados à um pequeno assistente de introdução, onde configuramos o Idioma, o teclado, o fuso horário, aceitamos uma licença, e definimos a ativação (ou não) dos ambientes 3D Compiz Fusion e/ou Metisse.


Após o questionário, entramos no KDE4, que está com uma ótima aparência. Vamos então para a instalação. O instalador é totalmente gráfico, e a instalação parece prosseguir sem problemas. Em uma parte da instalação, o sistema resolve remover todos os pacotes não utilizados pelo hardware do sistema. Ponto para o Mandriva, isso é uma boa maneira de se evitar o famoso "bloat" na distribuição.


Durante a parte intensiva da instalação, o sistema simplesmente acusou que a janela do setup estava sem responder, apesar do barulho do meu HD (possivelmente já pedindo pra morrer) indicar haver uma grande atividade nele. Neste momento, um usuário comum já teria problemas, pois tentaria fechar a janela do setup e recomeçar, o que poderia até causar danos aos seus dados.


Em torno de 5 minutos depois, a tela "volta a responder", e temos uma barra de progresso (finalmente, algum feedback visual), e uma propaganda da linha de produto do Mandriva, o Free, somente com drivers e softwares livres; o One, com alguns drivers proprietários, mas que podem ser distribuídos sem problemas legais; e o Powerpack, com tudo dos anteriores, e ainda Codecs pagos, como MP3. É assim que se ganha dinheiro quando não se tem um africano milionário maluco bancando tudo.


Primeiro boot do Mandriva. Outro setup, dessa vez para configurar a conexão, e o usuário. Vejo que a opção 3G está disponível, veremos então como será a configuração logo quando eu puser o modem para testar. Mesma ladainha para iniciar, agora finalmente estamos no Mandriva instalado! Primeiro passo: configurar as fontes decentemente, o Mandriva por defeito (versão aportuguesada de "default", para quem não sabe, e muito usada em Portugal) vêm com as fontes definidas como Sans Serif, tamanho 10. A primeira coisa que se aprende quando es estuda tipografia, é que fontes serifadas só ficam legal quando são impressas, então deve-se evitá-las em meios digitais. Mancada da equipe do Mandriva nisso aí. Pelo menos a DejaVu Sans está instalada, e a configuração padrão das fontes no mandriva está muito boa com relação à antialias.


Próximo passo: testar o Compiz. Tudo beleza, fades, cubo, tudo funcionando perfeito. Próximo passo, testar a SoundBlaster. Surpresa! Tudo funcionando normal, incluindo o Amarok rodando Mp3! Muito bom.


Na próxima parte, irei cobrir a parte da Internet, o Painel de Controle do Mandriva, e o Gerenciador de Pacotes. Na terceira parte, iremos fazer um sumário de todas as vantagens e desvantagens da distro, para aí sim, dar um resultado final sobre ela.


Até a próxima!