terça-feira, 21 de maio de 2019

COMPUTADOR, SMARTPHONE, WINDOWS E UM POUCO DE HISTÓRIA


MOSTRE-ME SEU MURO DE QUATRO METROS E EU LHE MOSTRAREI MINHA ESCADA DE CINCO.

O mundo evoluiu um bocado desde a pré-história, mas, do ponto de vista da tecnologia, os últimos 200 anos foram determinantes. Basta lembrar que os primeiros computadores surgiram somente em meados do século passado, e a computação pessoal, que começou a se popularizar nos anos 1990, foi de vento em popa depois que o visionário Steve Jobs, ao lançar o iPhone, estimulou o desenvolvimento de "computadores de mão" com cada vez mais recursos e funções, que em poucos anos se tornaram, senão um substituto, um complemento dos desktops e notebooks.

Detalhar essa evolução foge às possibilidades desta postagem, sem mencionar que a extensão do texto tornaria a leitura cansativa para os gatos pingados que acessam este humilde Blog. Portanto, vou trocar tudo em miúdos, começando por lembrar que o ábaco, criado no Egito dos faraós, é considerado o pai do computador, e o UNIX, desenvolvido em meados do século passado, o pai de todos os sistemas operacionais.

Muita areia escoou pela ampulheta do tempo desde o surgimento da jurássica moldura com bastões paralelos com contas deslizantes (cuja criação muitos atribuem aos chineses). A primeira calculadora mecânica de que se tem notícia foi idealizada pelo matemático Blaise Pascal, no século XVII, e aprimorada mais adiante, pelo alemão Gottfried Leibniz, com a capacidade de multiplicar e dividir, e tempos depois o Tear de Jacquard serviria de base para Charles Babbage projetar um dispositivo mecânico capaz de computar e imprimir tabelas científicas, que seria o precursor do tabulador estatístico de Herman Hollerith (cuja empresa se tornaria a gigante IBM).

Em meados do século passado, pesquisadores da Universidade da Pensilvânia construíram o primeiro computador digital eletrônico uma monstruosidade de 18 mil válvulas e 30 toneladas que produziu um enorme blecaute ao ser ligado pela primeira vez. Batizado de ENIAC, o portento era capaz de realizar 5 mil somas, 357 multiplicações ou 38 divisões simultâneas por segundo — uma performance incrível para a época, mas que qualquer videogame dos anos 90 superaria com facilidade. Suas válvulas queimavam a razão de uma cada dois minutos, e sua memória interna era suficiente apenas para manipular os dados envolvidos na tarefa em execução; qualquer modificação exigia que os operadores, que também eram programadores, corressem de um lado para outro da sala, desligando e religando centenas de chaves e cabos.

Acomodar os imensos mainframes dos anos 1950/60 exigia o espaço de salas ou andares inteiros. Como os sistemas operacionais ainda não existiam, os operadores controlavam esses monstrengos por meio de chaves, fios e luzes de aviso. Mais adiante, os batch systems (sistemas em lote) já permitiam que cada programa fosse escrito em cartões perfurados e carregado, juntamente com o respectivo compilador, mas não havia padronização de arquitetura e cada máquina usava um sistema operacional específico. Pelo menos até o Unix mudar esse quadro, como veremos ao longo desta sequência.

O primeiro sistema operacional realmente funcional foi criado pela General Motors para controlar o IBM 704. Com o tempo, diversas empresas desenvolveram sistemas para seus mainframes, e algumas se especializaram em produzi-los para terceiros. O mais famoso foi EXEC, escrito para operar o UNIVAC — computador que fez muito sucesso entre os anos 50 e 60, principalmente por ser pequeno e barato (para os padrões da época, já que o troço era do tamanho de um guarda-roupas), o que propiciou sua adoção por universidades e pequenas empresas.

Observação: As funções do sistema operacional são, basicamente, servir de “ponte” entre o hardware e o software, gerenciar os programas, definir os recursos destinados a cada processo e criar uma interface amigável com o usuário. É ele quem “reconhece” os componentes de hardware, quem gerencia os processos, os arquivos, a memória, os periféricos, quem decide quais programas em execução devem receber a atenção do processador, etc., e está presente não só nos PCs e assemelhados, mas em praticamente tudo que tenha um microchip e rode aplicativos, de automóveis a televisores, de consoles de videogames a relógios digitais. Graças à internet das coisas (IoT), o Linux marca presença em lâmpadas, geladeiras, smartphones e até rifles do exército norte-americano.

O primeiro microcomputador foi o Altair 8800, lançado em meados dos anos 1970 e comercializado na forma de kit (ou seja, a montagem ficava a cargo do consumidor). Era mais uma curiosidade do que algo realmente útil, ao menos até que Bill Gates e Paul Allen criarem para ele um “interpretador” escrito na linguagem BASIC e batizado de Microsoft-BASIC, que não era um SO como os usados nos mainframes de então, mas foi o precursor dos sistemas operacionais para microcomputadores. O MIT, a General Eletric e a AT&T criaram uma força tarefa para desenvolver o MULTICS, mas abandonou o projeto após uma década de trabalho. Em 1969, Ken Thompson, ex-integrante da equipe, criou o UNICS — uma versão menos ambiciosa escrita em Assembly, que foi posteriormente reescrita em C pelo próprio Thompson e por Dennis Ritchie (criador da linguagem C) e rebatizada como UNIX. Seu kernel (núcleo) logo passou a servir de base para outros sistemas operacionais, dentre os quais o BSD, o POSIX, o MINIX, o FreeBSD e o Solaris, para ficar nos mais conhecidos.

O sucesso do Altair levou a Apple a investir no segmento de computadores pessoais. O Apple II, lançado em 1977, já contava com um Disk Operating System (ou DOS — acrônimo que integra o nome de diversos sistemas operacionais, como o Free DOS, o PTS-DOS, o DR-DOS etc.). Como a máquina vinha montada, trazia um teclado integrado e tinha a capacidade de reproduzir gráficos coloridos e sons, muitos a consideram o “primeiro computador pessoal moderno”.

Observação: Steve Jobs foi pioneiro na adoção da interface gráfica, com sistema de janelas, caixas de seleção, fontes e suporte ao uso do mouse — tecnologia de que a XEROX já dispunha havia algum tempo, mas nunca explorou devidamente porque só tinha interesse em computadores de grande porte. Aliás, quando Microsoft lançou o Windows, que inicialmente era uma interface gráfica que rodava no MS-DOS, a Apple já estava anos-luz à sua frente, a despeito de a arquitetura fechada, o software proprietário e o alto custo de produtos da marca da Maçã limitarem sua participação no mercado a um segmento de nicho.

De olho no sucesso da Apple, a IBM, então líder no âmbito dos mainframes, resolveu lançar o IBM-PC, com arquitetura aberta e sistema operacional desenvolvido pela Microsoft (que se tornariam padrão de mercado). Ressalte-se que, naquela época, a hoje Gigante do Software jamais havia escrito um sistema operacional, mas Bill Gates adquiriu de Tim Paterson (por US$ 50 mil) o QDOS, adaptou-o ao hardware da IBM e rebatizou-o como MS-DOS — e assim começou sua escalada ao topo do ranking dos homens mais ricos do planeta (hoje ele está em segundo lugar, com um patrimônio pessoal estimado pela Forbes em quase 100 bilhões de dólares).

O resto fica para a próxima postagem.