Processadores Para o Próximo Milênio - Parte 1
Por Ricardo Zelenovsky e Alexandre Mendonça em 13 de fevereiro de 2001
Introdução
Finalmente, após o grande alarde do “Bug Y2K”, vamos ultrapassar a barreira do segundo milênio. Mas será que somos muito diferentes do homem de 2000 anos atrás ? Não muito, o homem moderno, apesar de toda onda de informação, ainda lembra bastante seu antepassado, especialmente na adoração por datas, acontecimentos e cerimônias. Ao olharmos para trás, vimos que 2.000 anos formaram uma era. Quantas coisas nos separam daquele homem que não sabia medir o tempo, que acreditava que as estrelas eram candelabros de luzes e que a Terra era plana. O homem atual quebra os núcleos e transmuta os elementos, cria anti-matéria, manipula átomos, constrói máquinas inteligentes, envia naves além do Sistema Solar.
Esta mesma sensação dual de mudança e não-mudança envolve-nos quando olhamos para trás em busca do nascimento da computação e, para a frente, querendo saber o que nos promete o próximo milênio. O presente artigo é o primeiro de uma série que irá explorar as realizações atuais e as especulações para o início do próximo milênio. Tentaremos apresentar um panorama diversificado, abordando não só as arquiteturas clássicas, mas também as evoluções que estão surgindo. Para tanto, não nos basta a experiência que temos com a família 80x86 para entendermos as novas arquiteturas, vamos precisar de alguns conceitos que serão abordados ao longo dos próximos artigos.
Assim, vamos iniciar este artigo olhando para trás para apreciarmos o que aconteceu no passado e, em seguida, observaremos o mundo ao nosso redor e analisaremos o momento atual, para então abordamos as arquiteturas que serão as inovações para o próximo milênio. Finalmente, estudaremos em especial as arquiteturas de 64 bits da Intel (IA-64) e da AMD (x86-64).
O Passado
Qual foi o primeiro computador ? A resposta mais freqüente é o ábaco chinês, embora contestável por ele tratar-se de um instrumento auxiliar de cálculo. Acreditamos que o rótulo “computador no 1" deva ir para a calculadora mecânica de Blaise Pascal (homenageado com a linguagem Pascal), desenvolvida em 1642, que podia operar com números até 999.999.999. Em 1822, Charles Babbage desenvolveu a Máquina Diferencial (“Difference Engine”), que tinha uma arquitetura muito semelhante aos modernos processadores, apresentando CPU, memória e até linguagem de programação. A filha de Lord Byron, uma garota chamada Ada Byron[1], teve contato com esta máquina e acabou por se tornar a primeira programadora (em sua homenagem, temos hoje a linguagem ADA). Em 1833, Babbage projetou a Máquina Analítica (“Analytical Engine”), com capacidade de processamento muito superior, porém ela ficou limitada pela tecnologia mecânica daquela época. William Gibson, escritor, aproveita esse fato e nos conta uma interessante estória alternativa[2] de como seria o mundo se Babbage conseguisse construir sua máquina e o computador surgisse em pleno século XIX.
Os século XX é marcado pelos grandes avanços. Gostaríamos de começar citando o romance “R.U.R.”[3], do tcheco Karel Capek, onde, em 1921, ele cria o termo “robot”, que na sua língua natal significa trabalhador. Sempre que falamos de robot, precisamos citar Isaac Asimov[4] e suas maravilhosas visões. Um marco importante neste século foi o ENIAC (do inglês “Electronic Numerical Integrator And Calculator”), ver Figura 1, projetado durante a Segunda Grande Guerra com a finalidade de calcular tiros de artilharia. Quando ele ficou pronto, em 1946, a guerra já havia acabado. Seu peso era de 30 t e consumia 140 kW. Um dos gênios que teve contato com esse projeto foi von Neumann, de quem falaremos mais adiante.
clique para ampliar
Figura 1: ENIAC, sua programação era feita com fios ("hard wired").
clique para ampliar
Figura 2: Colossus, da Inglaterra. Sua programação também era feita com fios.Um outro grande projeto da época, anterior ao ENIAC e por isso pioneiro, foi o Colossus (Figura 2), desenvolvido na Inglaterra no período de 1939 a 1943 com a intenção de quebrar o código da máquina de criptografia alemã denominada Enigma, que gerava seqüências aleatórias com período de 1019 caracteres. Deste projeto, tomou parte Alan Turing, certamente um nome conhecido hoje em dia. Após a guerra, esse projeto foi descontinuado, mas permaneceu secreto até 1973. Dizem que, se esse projeto fosse publicado logo após a término da guerra, teríamos hoje uma grande indústria inglesa de computadores.
Era Eletrônica
Entramos em seguida na era da computação eletrônica, quando surgem os grandes computadores e, por detrás deles, as grandes empresas: IBM, Bourroughs, NCR, etc.. É a era de máquinas grandes, acessadas por uma multidão de terminais burros. Chegou-se a prever que no mundo haveria cinco grandes computadores, um para cada continente. Era a visão de homens simples perante máquinas maravilhosas e as vezes fatais, como conta Arthur Clark em "2001"[5].
Nas figuras a seguir vemos quatro marcos interessantes sobre esse passado. Para iniciar, falamos do termo “bug”, que sempre foi usado pelos engenheiros para indicar pequenas falhas em suas máquinas. Já em 1870, Thomas Edison falava de “bugs” em seus circuitos elétricos. Em 1947, os engenheiros que trabalhavam com o Harvard Mark I encontraram uma traça entre seus circuitos, prenderam-na no livro de registro e rotularam-na como o “primeiro bug” encontrado, como vemos na Figura 3. E como eles se tornariam comum! Na Figura 4 está o computador IAS, de 1952, que foi construído segundo orientação de von Newmann e muito influenciou o projeto do IBM 701, o primeiro computador eletrônico comercializado pela IBM. Temos ainda, na Figura 5, o UNIVAC, projetado pelos idealizadores do ENIAC. Finalmente, a Figura 6 mostra o PDP-8, primeiro computador com preço acessível, tendo sido uma máquina da série PDP onde Ken Thompson e Dennis Ritchie desenvolveram o UNIX.
clique para ampliar
Figura 3: O primeiro "bug", 1947.
clique para ampliar
Figura 4: Computador IAS, 1952.Os Microcomputadores
Essa visão de grandes máquinas, inalcançáveis para os pobres mortais, domina até 1971, quando surge o primeiro microprocessador, o Intel 4004. No início, não chamou muita atenção, mas paulatinamente foram surgindo outros processadores e, na esteira desses processadores, companhias que fabricavam pequenos computadores.
O computador começava a aproximar-se do homem comum. Surgia assim o mercado dos microcomputadores. Nele, destacaram-se empresas que tropeçaram com o sucesso, que se tornaram gigantes e que passaram a ameaçar a posição de companhias do porte da HP e IBM. Essa história é contada de forma divertida por Robert Cringely em seu livro “Accidental Empires”[6]. Já mais voltada para o projeto de CPUs é a abordagem de Tracy Kidder em seu livro “The Soul of a New Machine”[7].
Já na área dos microcomputadores, perguntamo-nos: qual foi o primeiro ? Em 1975 a Revista “Popular Electronics” apresentou o projeto e anunciou a venda do “kit” do primeiro microcomputador. Era o Altair 8800, baseado no microprocessador 8008 da Intel, cuja foto está na Figura 7. O nome Altair é uma homenagem ao planeta onde se passa o filme “O Planeta Proibido” (1956) , onde aparece um robot (“Robbie”) cuja imagem ficaria famosa (Figura 8). Foi também para esse microcomputador que a dupla Paul Allen e Bill Gates vendeu um de seus primeiros produtos: um interpretador Basic.
clique para ampliar
Figura 7: Altair 8008, o primeiro microcomputador.
clique para ampliar
Figura 8: Cartaz do filme O Planeta Proibido, que inspirou o nome Altair.Outro fato marcante dessa época é o projeto da Xerox, no centro de pesquisas em Palo Alto, onde se desenvolveram vários conceitos de informática, inovadores para a época. Desse projeto surgiram o mouse, os ícones, as janelas e ainda computadores ligados em redes e as mensagens eletrônicas. Eram conceitos tão revolucionários que a alta direção da Xerox não soube aproveitá-los, mas Steve Jobs soube e colocou-os todos no Macintosh.
Há quase vinte anos, em 1981, a IBM lançava seu microcomputador provocando um verdadeiro terremoto no mercado e terminando por polarizá-lo entre o IBM PC e o Macintosh da Apple. Na verdade, o primeiro microcomputador da IBM, o IBM 5100, lançado em 1975, foi um fracasso[8]. Nesses últimos vinte anos, experimentamos uma evolução de tirar o fôlego. Um PC equipado com um Pentium III é mais barato e duas mil vezes mais rápido que o PC XT original, isto sem falarmos dos recursos de vídeo 3D, som, DVD e Internet.
Onde vamos parar ?
A resposta é: não vamos parar. É claro que a evolução vai continuar, mas a atual arquitetura dos microcomputadores deverá mudar bastante, pois a concorrência está cada dia mai acirrada. Vejamos, por exemplo, o caso das estações de trabalho, antigamente tão superiores aos microcomputadores e que hoje disputam um mesmo mercado. Ao mesmo tempo que os microprocessadores caminham em direção às arquiteturas de 64 bits, surgem outros como processadores como os dedicados à Internet, os processadores para os roteadores e chaveadores das redes de alta velocidade e até processadores RISC com arquitetura passível de ser alterada pelo usuário.
Com essa rápida resenha da história, particularizada no final para os microcomputadores, terminamos a primeira parte deste artigo. Vemos que muita coisa mudou, mas nem tanto, pois os computadores que usamos em casa seguem a mesma arquitetura proposta por von Newmann, ainda na década de 50. Assim, na continuação, abordaremos os postulados de von Newmann e estudaremos alguns conceitos de processamento paralelo, pois eles são fundamentais para entendermos os supercomputadores atuais e os que estão sendo projetados para o próximo milênio.
Bibliografia
Livros
[1] "Ada, the Enchantress of Numbers", Betty A. Toole (Editor).
[2] "The Difference Engine", William Gibson.
[3] "De Júlio Verne aos Astronautas", Coleção Argonauta, Número 100.
[4] "Eu, Robô", Issac Asimov.
[5] "HAL’s Legacy", David G. Stork (Editor).
[6] "Accidental Empires", Robert X. Cringely.
[7] "The Soul of a New Machine", Tracy Kidder.
[8] "History of Computing", Mark Greenia.Sites
- Ada: http://www.agnesscott.edu/lriddle/women/love.htm
- Altair IV: http://neptune.spaceports.com/~slacker/altair4/
- ENIAC: http://americanhistory.si.edu/csr/comphist/pr1.pdf e http://americanhistory.si.edu/csr/comphist/pr4.pdf.
- Colossus: http://www.cranfield.ac.uk/ccc/bpark/colossus.htm
- Diversos: http://www.cs.yale.edu/homes/tap/photo_gallery.html
- Histórico: http://americanhistory.si.edu/csr/comphist/
Originalmente em http://www.clubedohardware.com.br/artigos/Processadores-Para-o-Proximo-Milenio-Parte-1/492
© 1996-2012, Clube do Hardware. Todos os direitos reservados.
É expressamente proibida a reprodução total ou parcial do conteúdo deste site e dos textos disponíveis, seja através de mídia eletrônica, impressa, ou qualquer outra forma de distribuição. Os infratores serão indiciados e punidos com base na lei nº 9.610 de 19/02/1998.
Não nos responsabilizamos por danos materiais e/ou morais de qualquer espécie promovidos pelo uso das informações contidas no Clube do Hardware.