Organização de Computadores



Documentos relacionados
Sumário. Organização de Computadores Módulo 3. Primeira Geração Válvulas ( ) Primeira Geração Válvulas ( )

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 3

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 1

Introdução à Computação: História dos computadores

- Aula 2 ESTÁGIOS DA EVOLUÇÃO DA ARQUITETURA DOS COMPUTADORES

História e Organização Básica de Computadores

Abstrações e Tecnologias Computacionais. Professor: André Luis Meneses Silva /msn: andreluis.ms@gmail.com Página: orgearq20101.wordpress.

INFORMÁTICA APLICADA À ADMINISTRAÇÃO I

Arquitetura de Computadores. Prof. Marcelo Mikosz Gonçalves

Capítulo 1 Introdução

Introdução à Computação

AULA 01 CONCEITOS BÁSICOS DE PROGRAMAÇÃO. Eduardo Camargo de Siqueira INFORMÁTICA APLICADA TÉCNICO EM ELETRÔNICA

Informática Instrumental Aula 1. Prof. Msc. Fernando Nakayama de Queiroz

Calculadoras Mecânicas

UNIDADE I. 1. Introdução. 1.1 O que é um computador?

Arquitetura e Organização de Computadores

Fundamentos de Informática 1ºSemestre

Introdução INTRODUÇÃO À COMPUTAÇÃO M. Sistema Computacional. Máquina Virtual. Solução 8/10/10. O problema de comunicação humanocomputador

Histórico dos Computadores

Fundamentos da Informática. História dos Computadores Prof. Hélder Almeida

Organização Básica de computadores e linguagem de montagem

Conceitos e Evolução Capítulos 1 e 2

1. NÍVEL CONVENCIONAL DE MÁQUINA

ARQUITETURA DE COMPUTADORES

SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

A História do Computador. Linguagem de Programação Rone Ilídio/ Natã Goulart UFSJ - CAP

Gerações de Computadores. INF005 - Arquitetura de Computadores e Software Básico Aula 3 Flávia Maristela (flavia@flaviamaristela.

A Unidade Central de Processamento é a responsável pelo processamento e execução de programas armazenados na MP.

Parte 01. Fundamentos de Arquitetura de Computadores. Prof. Pedro Neto

Introdução à Organização e Arquitetura de Computadores. Prof. Leonardo Barreto Campos 1

Cursos de Computação. Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 01 - História e Funções dos Sistemas Operacionais

INFORMÁTICA HISTÓRIA DA INFORMÁTICA 1º PD PROFESSOR

AULA 01 INTRODUÇÃO. Eduardo Camargo de Siqueira CIRCUITOS DIGITAIS Engenharia de Computação

Arquitetura de Computadores

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

1. INTRODUÇÃO. Computador Digital: É uma máquina capaz de solucionar problemas através da execução de instruções que lhe são fornecidas.

Sistema de Computação

História da Informática. Prof. Bruno Crestani Calegaro

Disciplina de Informática. Profª. Me. Valéria Espíndola Lessa


AUTOMAÇÃO DE ESCRITÓRIOS ADE

RESUMO DO LIVRO. A linguagem de máquinas e o custo são analisados antes do computador ser projetado. LINGUAGEM, NÍVEIS E MÁQUINA REAIS

Processamento de dados - Aula I

1.1. Organização de um Sistema Computacional

Evolução... Introdução (Aula 1) Histórico da Arquitetura de Computadores

Arquitetura de Computadores. por Helcio Wagner da Silva

Introdução (Aula 1) Histórico da Arquitetura de Computadores

Sistemas Operacionais. Prof. André Y. Kusumoto

CAPÍTULO 1 INTRODUÇÃO À ARQUITETURA DE COMPUTADORES. Máquina programável, de propósito geral, que processa informação.

Elisa Maria Pivetta Cantarelli. PDF created with pdffactory Pro trial version

Curso Técnico em Redes de computadores. Evolução Histórica dos Computadores

SIS17-Arquitetura de Computadores

Visão Geral da Arquitetura de Computadores. Prof. Elthon Scariel Dias

Evolução dos Computadores

O processador é composto por: Unidade de controlo - Interpreta as instruções armazenadas; - Dá comandos a todos os elementos do sistema.

3. Arquitetura Básica do Computador

Unidade Central de Processamento Organização da UCP Execução de instruções em paralelo ("pipeline") Execução de programas

Figura 1: Ábaco: considerado a primeira ferramenta em computação.

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 8

Processamento de Dados

Marcos da Arquitetura de Computadores. Sediane Carmem Lunardi Hernandes


1 Introdução à Computação

A Evolução dos Sistemas Operacionais

UNIVERSIDADE FEDERAL DO ESPÍRITO SANTO APRESENTAÇÃO SOBRE O TEMA: GUERRA COMERCIAL DA INFORMÁTICA VITÓRIA ES

Organização e Arquitetura de Computadores I. de Computadores

André Aziz Francielle Santos

Tecnologias de Informação e Comunicação

Arquitetura de Computadores. AULA 1 Introdução

Um computador é um dispositivo capaz de executar cálculos e tomar decisões lógicas milhões de vezes mais rápidas do que podem os seres humanos.

3. O NIVEL DA LINGUAGEM DE MONTAGEM

O modelo do computador

Formação Modular Certificada. Arquitetura interna do computador. História dos computadores UFCD Joaquim Frias

ORGANIZAÇÃO DE COMPUTADORES MÓDULO 10

A Evolução dos Computadores: do ENIAC ao Jaguar

Organização de Computadores I

O Computador. Conceito

Disciplina: Introdução à Informática Profª Érica Barcelos

INSTITUTO DE EMPREGO E FORMAÇÃO PROFISSIONAL, I.P.

Computador Digital Circuitos de um computador (Hardware)

Gerações de Máquinas. Geração Zero. Evolução dos Computadores Breve Histórico. Evolução dos Computadores Breve Histórico

Capacidade = 512 x 300 x x 2 x 5 = ,72 GB

CPU Unidade Central de Processamento. História e progresso

Guilherme Pina Cardim. Relatório de Sistemas Operacionais I

Prof. Antonio Fundamentos de Sistemas Operacionais UNIP/2015

Sistemas de Informações Gerenciais

A história da computação. Prof: Diego Medeiros

ARQUITETURA DE COMPUTADORES

Introdução. Prof. Marcos Zurita Teresina

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES. Prof. André Dutton

Montagem e Manutenção. Luís Guilherme A. Pontes

Máquinas Multiníveis

Curso Técnico em Redes

SUMÁRIO. Evolução. Do passado ao presente. Futuro. Cálculos manuais Calculadoras mecânicas Máquinas eletrônicas

Computador E/S, Memória, Barramento do sistema e CPU Onde a CPU Registradores, ULA, Interconexão interna da CPU e Unidade de controle.

Tais operações podem utilizar um (operações unárias) ou dois (operações binárias) valores.

ARQUITETURA DE COMPUTADORES. Estágios da Evolução dos Computadores. Prof.: Agostinho S. Riofrio

Informática. A Era da Computação - Aula 1 ClevertonHentz

Transcrição:

Organização de Computadores

Professor conteudista: Renato Lellis

Sumário Organização de Computadores Unidade I 1 INTRODUÇÃO...1 1.1 O que é um computador?...1 1.2 Máquinas multiníveis...2 2 HISTÓRIA DA ARQUITETURA DE COMPUTADORES...6 2.1 Geração zero computadores mecânicos (1642 194)...6 2.2 Primeira geração válvulas (194 19)... 2.3 Segunda geração transistores (19 196)...13 2.4 Terceira geração circuitos integrados (196 1980)...1 2. Quarta geração integração em larga escala (1980 00)...16 2.6 Quinta geração computação ubíqua (00 em diante)... Unidade II 3 AFINAL DE CONTAS, QUEM INVENTOU O COMPUTADOR?...23 4 OS RUMOS DA EVOLUÇÃO DO COMPUTADOR...23 A ORGANIZAÇÃO DO COMPUTADOR...26.1 Processadores...26.1.1 Princípios de projeto para computadores modernos...29.1.2 Paralelismo... 31.2 Memória primária...36.2.1 Bits, bytes e terabytes...36.2.2 Endereços de memória...37.2.3 Memória cache...38.3 Memória secundária...39.3.1 Hierarquias de memória...40.3.2 Discos magnéticos... 41.3.3 Demais dispositivos...43.3.4 Conjuntos de caracteres...43 Unidade III 6 CIRCUITOS DIGITAIS...47 6.1 Sistemas de numeração...47 6.2 Sistema de números-base...48 6.3 Por que binário?...2 6.4 Conversão entre bases...2 6. Soma e subtração em bases não decimais...

Unidade IV 7 ÁLGEBRA BOOLEANA E PORTAS LÓGICAS...8 7.1 Função E...9 7.2 Função OU...60 7.3 Função NÃO...60 7.4 Funções derivadas... 61 7.4.1 NAND... 61 7.4.2 NOR...62 7.4.3 XOR...63 7. Precedência de funções...64 7.6 Equivalência entre expressões e circuitos...64 7.7 Exemplos de circuitos básicos...6 7.7.1 Comparador...6 7.7.2 Semissomador...66 7.7.3 Somador completo...67 7.7.4 Relógios...69

ORGANIZAÇÃO DE COMPUTADORES Unidade I 1 INTRODUÇÃO 1.1 O que é um computador? Para estudarmos como um computador funciona, e como os seus vários componentes são organizados para possibilitar esse funcionamento, deveríamos primeiramente definir o que é um computador, o que não é uma tarefa simples. Segundo o Dicionário Houaiss 1, a definição de computador é: computador Datação 1789 cf. MS1 Acepções substantivo masculino 1 O que computa; calculador, calculista; 2 Rubrica: informática. 1 Máquina destinada ao processamento de dados; dispositivo capaz de obedecer a instruções que visam produzir certas transformações nos dados, com o objetivo de alcançar um fim determinado. É claro que quem utiliza um computador, seja ele um computador doméstico, parte de um grande ambiente corporativo ou mesmo um telefone celular, sabe que tal definição nem de 30/11/08. 1 Disponível em <http://houaiss.uol.com.br/>. Consultado em 1

Unidade I longe corresponde à capacidade que um desses dispositivos possui. 1 O computador (de todos os portes imagináveis) hoje desempenha as funções mais diversas e se tornou parte do cotidiano de boa parte da população (mesmo que ela não saiba disso). O problema é que, em seu interior, o computador é uma máquina que consegue fazer muito poucas coisas. Somar e comparar números, mover valores de uma área de memória para outra e não muito mais que isso é o que o computador realmente consegue fazer, não importa o quão miraculoso ele nos pareça quando olhamos do lado de fora. Chega a ser paradoxal que um equipamento limitado como esse consiga ser capaz de ser usado em tantas aplicações. Mas não existe mágica aqui, apenas um longo e constante processo evolucionário que começou no século XVII e ainda está longe de acabar. Explicar parte dos processos que tornam isso possível é objetivo desta apostila. 1.2 Máquinas multiníveis Um computador é uma máquina que pode realizar um determinado conjunto de funções. As pessoas que utilizam os computadores desejam fazer certas atividades que não correspondem diretamente a esse conjunto de funções. 2 Para que seja possível que os usuários consigam executar as funções de que necessitam, é necessário que haja um processo de tradução. Os primeiros computadores que foram construídos só podiam ser utilizados pelos engenheiros que os construíram. 2

ORGANIZAÇÃO DE COMPUTADORES Era necessário saber exatamente como os circuitos eletrônicos (ou eletromecânicos) se interligavam para que se conseguisse realizar as atividades mais simples. À medida que surgiu a necessidade de expandir a utilização dos computadores, foi necessário criar mecanismos que possibilitassem aos usuários realizar atividades sem que fosse necessário um conhecimento profundo da arquitetura desses mecanismos. Imaginemos que o computador possa realizar uma quantidade limitada de instruções ou comandos. Chamemos esse conjunto de linguagem de máquina. Tradução Linguagem de Alto Nível Linguagem de Máquina Figura 1 Tradução entre os níveis de um computador 1 A linguagem que os usuários utilizam não pode se limitar à linguagem de máquina, ela precisa se aproximar da linguagem humana para atender problemas do mundo real. Chamemos esta segunda linguagem de linguagem de alto nível. Para que possa haver uma correspondência entre as duas linguagens, é necessário que o segundo conjunto seja traduzido para o conjunto inicial. 2 Esse processo ocorre diversas vezes dentro de um computador. A história da evolução dos computadores é um processo de adição de níveis de tradução. Se os primeiros computadores só podiam ser utilizados pelos engenheiros que os construíram, os computadores atuais podem ser utilizados por pessoas com um conhecimento técnico mínimo, se tanto. Isso só é possível porque as necessidades desses usuários são submetidas a vários níveis de tradução até chegar a uma 3

Unidade I instrução que o computador consiga efetivamente executar por meio de impulsos elétricos. 1 2 Esse processo de evolução nos levou ao computador contemporâneo, que possui diversos níveis, por isso o denominamos máquina multiníveis. A interação entre cada um dos níveis corresponde a um tipo de tradução. O nível 0, chamado lógico digital, corresponde aos circuitos eletrônicos que efetivamente realizam o processamento de informações na forma de impulsos elétricos dentro do processador. O nível 1 corresponde à microarquitetura do processador, que são elementos internos do processador: registradores (que são a memória de alta velocidade interna do processador) e a ULA unidade lógica aritmética (que é o elemento do processador que realiza operações aritméticas simples). Esses registradores são conectados à ULA para formar um caminho de dados, através do qual os dados transitam para dentro e para fora do processador. Uma operação normal do caminho de dados consiste em selecionar o conteúdo de um ou dois registradores, submetê-lo à ULA e movimentar o resultado para outro registrador. O nível 2 corresponde ao conjunto de instruções suportado pelo processador. O conjunto de instruções corresponde aos comandos que o processador pode receber de fontes externas e é determinado pelo projeto do processador, e normalmente não pode ser alterado. O conjunto de instruções também é comum entre os processadores de uma mesma família, permitindo assim a interoperabilidade de programas e sistemas operacionais dentro dessa família. 30 O nível 3 corresponde ao sistema operacional. O SO fornece uma plataforma que possibilita que os programas não tenham que interagir diretamente com o hardware. Aliás, isto é mandatório 4

ORGANIZAÇÃO DE COMPUTADORES em se tratando de sistemas multitarefa. Não é possível existir um sistema multitarefa sem que exista um elemento arbitrando o acesso ao hardware essa função é do sistema operacional. Em sistemas computacionais modernos, todo acesso ao hardware é feito por meio do sistema operacional. O nível 4 corresponde à linguagem de montagem. A linguagem de montagem, ou assembly, é uma linguagem dependente da plataforma, ou seja, processadores diferentes ou de famílias diferentes possuem linguagens de montagem diferentes incompatíveis entre si. Um programa escrito em linguagem de montagem só pode ser usado em uma determinada plataforma ou família de processadores. 1 O nível corresponde à linguagem orientada a problemas, ou linguagem de alto nível. Esse tipo de linguagem independe da plataforma em que for usada; ela deve ser traduzida (compilada) para um formato que o sistema operacional consiga interpretar e enviar para os níveis mais baixos da máquina multiníveis. Tradução (compilação) Linguagem orientada a problemas Tradução (montagem) Linguagem de montagem Interpretação Sistema Operacional Interpretação Conjunto de instruções Hardware Microarquiterura Nível lógico digital Figura 2 Tradução entre os níveis de um computador contemporâneo

Unidade I 2 HISTÓRIA DA ARQUITETURA DE COMPUTADORES 2 Para entender como um computador funciona, precisamos compreender como se deu sua evolução, pois um dispositivo sempre incorpora ao menos parte da tecnologia dos seus predecessores. Os computadores que usamos hoje incorporam em seu design decisões que foram tomadas décadas atrás. 2.1 Geração zero computadores mecânicos (1642 194) As tentativas de criar mecanismos para processar dados remontam ao século XVII. Foi naquela época que os primeiros mecanismos capazes de realizar cálculos de forma automatizada surgiram. 1 Os equipamentos da época eram totalmente mecânicos, já que os dispositivos eletromecânicos surgiriam apenas no século XX. O primeiro dispositivo desse tipo foi construído por Blaise Pascal (1623 1662) em 1642 para auxiliar seu pai, que era coletor de impostos. Pascal tinha apenas 19 anos. Esse dispositivo ficou conhecido como Pascalina. Figura 3 Uma das Pascalinas construídas por Blaise Pascal Essa primeira máquina criada por Pascal podia executar apenas somas e subtrações. Trinta anos depois, Gottfried Wilhelm 2 Todas as fotografias utilizadas foram tiradas de <http://commons. wikimedia.org/wiki/templates:gfdl/pt>. 6

ORGANIZAÇÃO DE COMPUTADORES von Leibniz criou um dispositivo que podia executar as quatro operações básicas. Figura 4 Staffelwalze, uma das calculadoras mecânicas projetadas por Leibniz Esses dispositivos foram as primeiras tentativas de automatizar processos manuais, neste caso, cálculos. Mas eles se limitavam a isso. A evolução desses equipamentos foi proposta apenas em 1822, por Charles Babbage (1792 1871). O novo dispositivo foi chamado de máquina diferencial e, ao contrário de seus predecessores, que apenas realizavam operações simples, ele foi desenhado para executar um algoritmo. O objetivo dessa máquina e seu algoritmo era produzir tabelas úteis para a navegação naval, assunto estratégico para a época. A máquina diferencial podia executar apenas esse algoritmo. Figura Máquina diferencial construída pelo Museu de Londres a partir de notas de Babbage 7

Unidade I 1 Apesar da aceitação de suas ideias e do financiamento do governo britânico, Babbage tinha planos mais ambiciosos. Ele vislumbrou um dispositivo programável. Esta nova máquina foi batizada de máquina analítica, e continha vários conceitos presentes ainda hoje nos computadores modernos, como um dispositivo de entrada (uma leitora de cartões perfurados), dispositivos de saída (impressora e perfuradora de cartões), memória (capaz de armazenar mil números) e uma unidade aritmética (chamada de moinho). Babbage descreveu essa máquina pela primeira vez em 1837. Sob vários aspectos, a máquina diferencial antecipou o computador moderno em cem anos. No século XIX, diversas máquinas diferenciais foram construídas com base nas teorias e documentos de Babbage, mas ele próprio nunca chegou a produzi-las, nem a máquina analítica. As suas ideias, entretanto, influenciariam diversos pioneiros da computação. Ele correspondeu-se com a condessa Ada Lovelace, que se interessou por suas propostas para a máquina analítica e chegou a desenvolver um método de calcular números de Bernoulli utilizando a máquina analítica. Esse é considerado o primeiro programa de computador da história e a condessa Ada Lovelace, a primeira programadora. A linguagem ADA foi batizada em sua homenagem. 2 30 O problema que Babbage enfrentou é que a tecnologia do século XIX não podia fornecer a precisão que seria necessária para a construção de um mecanismo tão complexo e ambicioso quanto a máquina analítica. Mesmo nunca tendo concretizado sua visão, Charles Babbage é considerado o avô do computador, e os equipamentos atuais ainda incorporam conceitos que ele anteviu mais de cem anos atrás. O passo seguinte no caminho do computador seria dado apenas na década de 1930, quando em vários pontos começaram 8

ORGANIZAÇÃO DE COMPUTADORES a surgir dispositivos calculadores eletromecânicos utilizando relés. 1 2 Na Alemanha, Konrad Zuse construiu uma série de equipamentos para executar cálculos usando relés. Todos os seus equipamentos foram destruídos durante a guerra, o que impediu que seus designs tivessem influências nos desenvolvimentos subsequentes. Pouco tempo depois de Zuse, na Universidade de Iowa, nos Estados Unidos, John Atanasoff projetou um equipamento para fazer cálculos que utilizava aritmética binária e capacitores como memória de armazenamento. Da mesma forma que outros predecessores, o projeto de Atanasoff nunca se tornou operacional. Simultaneamente, também nos Estados Unidos, George Stibbitz construiu um equipamento para fazer cálculos que realmente funcionava, apesar de ser menos sofisticado que o projeto de Atanasoff. Stibbitz fez uma grande demonstração de sua criação em 1940. Entre os que assistiram a essa demonstração estava John Mauchley, que depois daria suas próprias contribuições à história do computador. Zuse, Stibbitz e Atanasoff estavam tentando criar máquinas calculadoras automáticas. Apesar de compartilharem componentes com os computadores, elas tinham um propósito único: realizar cálculos. Nenhum desses projetos tencionava ser o que Babbage tinha almejado no século XIX: um equipamento programável. 30 O próximo passo neste caminho foi dado também nos Estados Unidos em 1944: Howard Aiken construiu o Harvard Mark I, o primeiro computador digital da história. Ele era capaz de realizar cálculos. Aiken baseou-se nos conceitos de Babbage para criar o Mark I. Apesar de ter sido bem-sucedido, o sucessor do Mark I, o Mark II, já estava obsoleto ao ser 9

Unidade I concluído. A era dos computadores eletromecânicos havia chegado ao fim. Começava a era dos computadores eletrônicos. 2.2 Primeira geração válvulas (194 19) Os primeiros computadores eletrônicos surgiram na fase final da Segunda Guerra Mundial. O interesse dos militares por computadores se dava em dois campos específicos: quebra de códigos criptográficos e cálculos de artilharia. Para este segundo propósito John Mauchley propôs a construção de uma máquina para o Exército Americano, o que viria a se tornar o ENIAC. 1 Durante muito tempo, o ENIAC (Electronic Numerical Integrator and Computer) foi considerado o primeiro computador eletrônico da história. O seu projeto, que foi patrocinado pelas forças armadas dos Estados Unidos e conduzido por John Mauchley e J. Presper Eckert, iniciou-se em 1943. O ENIAC entrou em operação em 1946, tarde demais para seu propósito bélico original. Figura 6 O ENIAC em operação na década de 1940

ORGANIZAÇÃO DE COMPUTADORES Entretanto, décadas depois do final da guerra o trabalho de um grupo de cientistas britânico veio a público. No auge da Segunda Grande Guerra, a Alemanha nazista utilizava um equipamento eletromecânico para codificar mensagens de forma muito mais eficiente do que os métodos manuais: trata-se da máquina Enigma. Figura 7 Um exemplar da máquina Enigma 1 Para quebrar os códigos gerados por esse dispositivo, o governo britânico patrocinou a construção do que foi de fato o primeiro computador eletrônico, batizado de Colossus. Este dispositivo entrou em operação em 1943, e o famoso matemático Alan Turing, criador de muitos dos conceitos do computador moderno, participou do projeto. Infelizmente, todo o projeto foi mantido em segredo pelo governo britânico e, por esse motivo, o trabalho pioneiro de Turing e seus colegas não pôde ser compartilhado e não teve influência nas gerações posteriores de computadores. O ENIAC, por outro lado, teve descendentes diretos. O conhecimento do projeto de Mauchley e Eckert foi compartilhado com vários colegas cientistas que criaram seus próprios computadores. Os próprios Mauchley e Eckert deixaram a Universidade da Pensilvânia, onde lecionavam, para fundar uma companhia, a Eckert-Mauchley Computer Corporation. 11

Unidade I Hoje, após uma série de fusões e aquisições, essa companhia é parte da Unisys Corporation. 1 Naquela época de interesse florescente, um dos cientistas envolvidos no projeto do ENIAC deu uma contribuição fundamental para a evolução do computador moderno. Seu nome era John von Neumann, e uma das coisas que ele percebeu nos computadores da época é que programar um computador usando quantidades enormes de cabos e chaves era uma tarefa demorada e tediosa. Ele também apontou a vantagem de usar os dados armazenados em forma binária em vez de decimal (como o ENIAC fazia). O projeto básico que ele concebeu na década de 1940 foi utilizado na construção da máquina IAS. Essa arquitetura foi batizada de máquina de Von Neumann e é até hoje a estrutura básica de qualquer computador comercial. Memória Unidade de controle Unidade lógico aritmética Acumulador Entrada Saída Figura 8 A estrutura da máquina de Von Neumann Enquanto tudo isso acontecia, a IBM lentamente despertava para o mercado de computadores comerciais. Apesar de ter parcialmente financiado o projeto de Howard Aiken, a IBM não estava muito interessada em computadores até que lançou o IBM 701, em 193. Ele era um computador voltado para aplicações científicas, e em cerca de dez anos esse mercado seria dominado pela IBM. 12

ORGANIZAÇÃO DE COMPUTADORES 2.3 Segunda geração transistores (19 196) O transistor foi inventado por John Bardeen, Walter Brattain e William Shockley em 1948, nos laboratórios Bell. 1 Em pouco tempo o transistor mudou a face da computação (e de toda a incipiente indústria de eletrônica de consumo), pois apresentava grandes vantagens em relação à válvula: era menor e tinha vida útil infinitamente maior. Dez anos após a invenção do transistor, os computadores com válvulas estavam obsoletos. O primeiro computador a usufruir da nova tecnologia foi o TX-0 (Transistored Experimental Computer 0), construído no MIT (Massachusetts Institute of Technology). O objetivo desse projeto era servir como dispositivo de testes para um equipamento mais sofisticado, o TX-2. O TX-2 não foi um grande sucesso, mas um dos engenheiros que participaram do projeto fundou uma companhia, a Digital Equipment Corporation DEC em 197, para construir um computador cujo projeto era baseado no TX-0. Esse computador foi batizado de PDP-1. Na época, a DEC demorou quatro anos para conseguir financiamento para seu produto, pois os investidores tinham sérias dúvidas sobre a viabilidade do mercado de computadores comerciais. 2 O PDP-1 foi finalmente lançado em 1961. Ele tinha cerca de metade da capacidade de processamento do IBM 7090, o computador científico mais rápido do mundo na época, mas custava 1 mil dólares, enquanto o 7090 custava milhões. A DEC vendeu dezenas de PDP-1 e criou o mercado de minicomputadores. 13

Unidade I Alguns anos mais tarde, a DEC lançou uma nova máquina, o PDP-8. Além de ser mais barata que o PDP-1 (16 mil dólares), ela trouxe uma inovação importante: o uso de um barramento. Essa arquitetura representou uma mudança importante em relação à da máquina IAS, que era centrada na memória e é usada em computadores até hoje. CPU Memória Terminal de Console E/S de fita de papel Outras E/S Figura 9 Barramento Omnibus do PDP-8 Omnibus 1 Enquanto a DEC se consolidava no mercado de minicomputadores, a IBM produzia equipamentos de alto desempenho para aplicações científicas, como o 7090, já citado, e sua versão melhorada, o 7094. Em outra frente, a IBM estava obtendo sucesso com outro tipo de equipamento, chamado 1401. Ele tinha um desempenho muito menor que o 7094 para aplicações científicas, mas era bastante adequado para aplicações comerciais, sem mencionar que era muito mais barato. Em 1964, uma pequena companhia lançou um equipamento voltado para aplicações científicas batizado de 6600. O CDC 6600 conseguiu ser mais rápido que o IBM 7094 e qualquer outro computador da época, principalmente por introduzir paralelismo em alta escala, além de pequenos computadores internos para reduzir a carga de processamento da CPU principal. 2 Muitas ideias referentes a paralelismo presentes nos computadores modernos descendem diretamente do CDC 6600. O seu projetista, Seymour Cray, dedicou a vida à produção de computadores (depois da CDC, ele criou sua própria empresa, a Cray Computing) cada vez mais rápidos, criando o mercado de supercomputadores no processo. 14

ORGANIZAÇÃO DE COMPUTADORES 2.4 Terceira geração circuitos integrados (196 1980) A invenção do circuito integrado de silício por Robert Noyce, em 198, permitiu que dezenas de transistores fossem colocados em uma única pastilha (ou chip). Isso conduziu a produção de computadores a um novo patamar, totalmente impensável nas gerações anteriores. Agora eles poderiam ser menores, mais rápidos e mais baratos do que jamais havia sido possível. Mas uma das maiores inovações daquele período não dependia de desenvolvimento de novas tecnologias. 1 A IBM tinha na época dois equipamentos de sucesso, os já citados 1401 e 7094. O problema é que eles eram totalmente incompatíveis entre si. Um cliente que possuísse os dois equipamentos teria que ter duas equipes distintas para fazer uso deles. Quando chegou a hora de lançar os substitutos desses equipamentos, a IBM deu um passo revolucionário, lançando vários computadores em uma mesma linha, chamada System/360. O grande diferencial da linha 360 é que vários modelos de vários portes compartilhavam uma mesma arquitetura, o que permitia que um mesmo programa fosse utilizado nos vários modelos da mesma família. Hoje isso parece óbvio, mas durante os anos 190 o foco do desenvolvimento sempre foi o hardware. A família 360 foi a primeira vez em que se pensou em interoperabilidade e compatibilidade. 2 Outra novidade importante na família 360 era o conceito de multiprogramação. Esse conceito permitia que o computador mantivesse vários programas em memória e, enquanto um programa estivesse esperando uma operação de E/S, ele pudesse executar outro. Este conceito simples, uma das primeiras 1

Unidade I implementações de multitarefa, aumenta a utilização da CPU. E também torna mais importante uma figura até então desconhecida: o sistema operacional. O conceito de multitarefa só pode existir com a presença de um sistema operacional. O mercado de minicomputadores também evoluiu, e o lançamento mais significativo foi o PDP-11 da DEC, que teve enorme sucesso, em especial em universidades. 2. Quarta geração integração em larga escala (1980 00) 1 Na década de 1980, a VLSI (Very Large Scale Integration Integração em Escala Muito Grande) possibilitou colocar dezenas de milhares, depois centenas de milhares e por fim milhões de transistores em um único chip. Esse desenvolvimento levou a computadores menores e mais rápidos. Antes do PDP-1, os computadores eram tão grandes e caros que universidades e empresas precisavam ter departamentos dedicados à sua operação. Com a chegada do minicomputador, cada departamento poderia ter seu próprio computador. No início dos anos 1980, o processo de barateamento e miniaturização dos computadores chegou a tal ponto que um indivíduo podia possuir seu próprio computador. Era o início da era do computador pessoal, o microcomputador. 2 Os primeiros microcomputadores não eram fabricados da mesma forma que os computadores comerciais da época. Eles eram vendidos como kits para serem montados em casa por hobistas na área de eletrônica ou computação. Um dos primeiros foi o Altair 8800, mostrado na figura seguinte. Figura Altair 8800, um dos primeiros microcomputadores comerciais 16

ORGANIZAÇÃO DE COMPUTADORES Esses primeiros computadores não tinham muita aplicação prática, pois, além de montar seus computadores, os usuários tinham que desenvolver seus próprios programas. Apesar das limitações desses equipamentos, diversas empresas investiram no nascente mercado de computação pessoal. Uma das mais bem-sucedidas foi a Apple, fundada por Steve Jobs e Steve Wozniak, cujo modelo Apple II (lançado em 1977) foi um sucesso comercial. O sucesso do Apple II foi tão significativo na época de seu lançamento que a Apple se tornou um grande fabricante de computadores praticamente da noite para o dia. Figura 11 O Apple II, um dos primeiros microcomputadores comerciais de sucesso 1 Enquanto a Apple e outras pequenas empresas criavam todo um novo mercado de computadores para uso doméstico, os grandes fabricantes, como a IBM, estavam hesitantes quanto a investir ou não nesse nicho. A IBM decidiu por fim entrar no mercado do computador pessoal, mas, ao contrário do que era seu hábito, decidiu utilizar componentes de mercado, em vez de desenvolver todo o projeto. Como microprocessador foi escolhido o 8088 da Intel, e o IBM PC foi lançado em 1981. Um dos grandes erros da história da 17

Unidade I IBM foi cometido nessa época. Ela não resguardou seu produto por patentes; muito pelo contrário, ela divulgou publicamente os dados do projeto de seu microcomputador. O resultado foi o surgimento de toda uma indústria de PC Clones, ou computadores-padrão IBM PC, da qual uma pequena parte apenas era fabricada e vendida pela IBM. Figura 12 Um dos primeiros IBM PC 1 A IBM também se associou à Microsoft para o desenvolvimento do sistema operacional de seu microcomputador. Outro grande erro da IBM foi não enxergar o potencial do software para essa plataforma. Na verdade, os executivos da IBM estavam interessados na venda de hardware. Como consequência, o MS- DOS da Microsoft se tornou o sistema operacional padrão para os computadores padrão IBM PC, o que ajudou a Microsoft a ser tornar uma das empresas mais ricas do mundo nos anos 1990. A arquitetura desenvolvida pela IBM se tornou o padrão para microcomputadores de uso comercial, e a maioria das empresas que fabricava microcomputadores com padrões distintos (Commodore, Atari, Sinclair, entre outras) desapareceu ou abandonou esse nicho de mercado. A Apple conseguiu sobreviver, em parte por ter sido a primeira a introduzir uma interface gráfica utilizável. Essa característica foi introduzida inicialmente no Apple Lisa, mas encontrou sucesso no Apple Macintosh. 18

ORGANIZAÇÃO DE COMPUTADORES Figura 13 Apple Lisa O Apple Lisa fracassou devido ao alto preço, mas deixou claras as vantagens do uso de uma GUI (Graphical User Interface Interface Gráfica com o Usuário). Esse tipo de interface usa um dispositivo apontador (normalmente um mouse) e elementos gráficos como ícones e menus como meio principal para interação com o usuário. As outras gerações usavam principalmente comandos em shells ou prompts de comando, o que requeria um treinamento mais aprofundado para os usuários de computadores. Com a introdução da interface gráfica e o aumento da facilidade de uso, a popularização dos microcomputadores se acelerou ainda mais. Figura 14 O Apple Macintosh original 19

Unidade I 2.6 Quinta geração computação ubíqua (00 em diante) Ao contrário das gerações anteriores, atualmente os equipamentos com capacidade de processamento não são mais necessariamente computadores. Desde o final dos anos 1990, diversos equipamentos passaram a possuir capacidade de processamento, sem que necessariamente fossem computadores completos. Palmtops, telefones celulares e até mesmo automóveis e certos refrigeradores hoje possuem alguma capacidade de processamento, podendo até mesmo rivalizar com computadores de gerações anteriores. 1 Como exemplo dessa evolução, podemos tomar o AGC (Apollo Guidance Computer), computador embarcado usado pela missão Apollo, responsável por levar os primeiros astronautas para a lua. Esse equipamento tinha menos de 64 KB de memória e 2 Mhz de velocidade de clock se compararmos esse equipamento (que era tecnologia de ponta no final do anos 1960) com um computador desktop padrão de mercado atual, que tem 1 ou 2 Gigabytes de memória e 2 Ghz de velocidade de clock, chegaremos à conclusão que o segundo é cerca de mil vezes mais rápido e possui mais de 32.000 vezes mais memória, sem mencionar a complexidade do equipamento. Isso pode servir como parâmetro para a velocidade de evolução da tecnologia de processamento de dados nas últimas três décadas. Figura 1 Unidade de interface com o usuário do AGC

ORGANIZAÇÃO DE COMPUTADORES Mas, além do barateamento e aumento de capacidade de elementos como dispositivos de armazenamento (discos e afins) e memória, o desenvolvimento de várias tecnologias, como redes locais, Bluetooth e WiFi, e a popularização da Internet permitiram o desenvolvimento de equipamentos que se apoiem em redes e recursos localizados em outros computadores para atender às necessidades de seus usuários. Os computadores das gerações anteriores precisavam manter suas massas de dados acessíveis localmente e contar apenas com sua capacidade de processamento. Os computadores de quinta geração podem contar com a capacidade de armazenamento e de processamento de outros computadores através de redes de diversos tipos. 1 Figura 16 Exemplo de smartphone: Motorola Q1 Esse tipo de capacidade pode criar ambientes tão complexos que pode se tornar difícil no futuro determinar onde começa e termina o computador e onde estão os dados que utilizamos, pois teremos à nossa volta diversos dispositivos interagindo entre si para atender às nossas necessidades. 21

Unidade I Quando esse tipo de ambiente se tornar comum, talvez não tenhamos uma sexta geração de computadores, mas algo totalmente diferente. 22