aula 2: histórico da evolução dos computadoresfernanda/2016-1/fac/aulas/aula02.pdfaula 2:...

51
Aula 2: Hist´ orico da Evoluc¸˜ ao dos Computadores Fernanda Passos Universidade Federal Fluminense Fundamentos de Arquiteturas de Computadores Material baseado nos slides do prof. Diego Passos Fernanda Passos (UFF) Hist´ orico FAC 1 / 48

Upload: doankien

Post on 09-Jul-2018

219 views

Category:

Documents


0 download

TRANSCRIPT

Aula 2: Historico da Evolucao dos Computadores

Fernanda Passos

Universidade Federal Fluminense

Fundamentos de Arquiteturas de Computadores

Material baseado nos slides do prof. Diego Passos

Fernanda Passos (UFF) Historico FAC 1 / 48

Dispositivos Primitivos de Computacao

Fernanda Passos (UFF) Historico FAC 2 / 48

O Conceito de Computacao

O que significa o conceito de computacao?I No seu nıvel mais basico, e a manipulacao de dados para algum fim.

Nos primordios da computacao, os dados eram numeros.E as manipulacoes eram operacoes/funcoes matematicas.Hoje, a computacao engloba um universo muito mais abrangente:

I Informacao pode ser numeros, textos, datas, mapas, imagens, audio, vıdeo, . . .I As manipulacoes podem incluir analise de imagens, tratamento de fotos, transmissao de dados,

. . .

Fernanda Passos (UFF) Historico FAC 3 / 48

O Primeiro Computador?

O primeiro equipamento de calculo da historia e provavelmente o abaco.I Registros historicos datando de 5000 aC.I Varios locais: Grecia, China,

Um abaco e formado por uma serie de hastes paralelas presas em uma moldura.Cada haste possui uma determinada quantidade de contas (tipicamente, pequenas esferasou fichas).

0 0 0 0 0 0 0 0 0 0

Fernanda Passos (UFF) Historico FAC 4 / 48

Abaco: Representacao de Numeros

Um tipo comum de abaco e o Soroban (Abaco Japones).O Soroban possui 5 contas em cada haste, sendo a de cima separada das outras 4.Cada haste representa um algarismo decimal.

I Unidades mais a esquerda, depois dezenas, centenas, . . .Cada conta do grupo de baixo que e levantada representa uma unidade a mais no algarismo.Se a conta de cima e abaixada, deve-se acrescentar 5.

9 8 7 6 5 4 3 2 1 0

Fernanda Passos (UFF) Historico FAC 5 / 48

Abaco: Realizando Calculos

Uma vez tendo representado um determinado numero no abaco, e facil soma-lo com outro.I Basta realizar as somas algarismo a algarismo, repassando corretamente o “vai-um”.I Com a pratica, e possıvel realizar somas grandes rapidamente.

Tambem ha algoritmos para outras operacoes, como subtracoes multiplicacoes e divisoes.Podemos ainda arbitrar uma posicao para a vırgula e fazer contas com numerosfracionarios.

I Aritmetica de ponto fixo.

Fernanda Passos (UFF) Historico FAC 6 / 48

Regua de Calculo

Outro dispositivo manual que permite realizar calculos e a Regua de Calculo.Ao contrario de uma regua comum, com escala linear, contem escalas logarıtmicas.Possui pecas moveis para que as escalas possam deslizar umas sobres as outras.

0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

Fernanda Passos (UFF) Historico FAC 7 / 48

Regua de Calculo: Realizando Calculos

Como possui escalas logarıtmicas, a regua de calculo facilita muito as multiplicacoes.Isso porque log(x) + log(y) = log(x · y).Considere um exemplo simples: multiplicar 2 por 3.

I Primeiramente, deslizamos a escala B ate que sua marca 1 coincida com o 3 da escala A.

I Em seguida, encontramos o valor 2 na escala B.I Finalmente, verificamos na escala A qual o valor coincidente.I Este valor e o resultado da multiplicacao.

0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

1,0 2,0 3,0 4,0

Fernanda Passos (UFF) Historico FAC 8 / 48

Regua de Calculo: Realizando Calculos

Como possui escalas logarıtmicas, a regua de calculo facilita muito as multiplicacoes.Isso porque log(x) + log(y) = log(x · y).Considere um exemplo simples: multiplicar 2 por 3.

I Primeiramente, deslizamos a escala B ate que sua marca 1 coincida com o 3 da escala A.I Em seguida, encontramos o valor 2 na escala B.

I Finalmente, verificamos na escala A qual o valor coincidente.I Este valor e o resultado da multiplicacao.

0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

1,0 2,0 3,0 4,0

Fernanda Passos (UFF) Historico FAC 8 / 48

Regua de Calculo: Realizando Calculos

Como possui escalas logarıtmicas, a regua de calculo facilita muito as multiplicacoes.Isso porque log(x) + log(y) = log(x · y).Considere um exemplo simples: multiplicar 2 por 3.

I Primeiramente, deslizamos a escala B ate que sua marca 1 coincida com o 3 da escala A.I Em seguida, encontramos o valor 2 na escala B.I Finalmente, verificamos na escala A qual o valor coincidente.

I Este valor e o resultado da multiplicacao.

0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

1,0 2,0 3,0 4,0

Fernanda Passos (UFF) Historico FAC 8 / 48

Regua de Calculo: Realizando Calculos

Como possui escalas logarıtmicas, a regua de calculo facilita muito as multiplicacoes.Isso porque log(x) + log(y) = log(x · y).Considere um exemplo simples: multiplicar 2 por 3.

I Primeiramente, deslizamos a escala B ate que sua marca 1 coincida com o 3 da escala A.I Em seguida, encontramos o valor 2 na escala B.I Finalmente, verificamos na escala A qual o valor coincidente.I Este valor e o resultado da multiplicacao.

0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

1,0 2,0 3,0 4,0

Fernanda Passos (UFF) Historico FAC 8 / 48

Regua de Calculo: Divisoes

As divisoes tambem sao triviais.Porque log(x) − log(y) = log(x/y).Outro exemplo simples: dividir 8 por 4.

I Primeiramente, deslizamos a escala B ate que sua marca 4 coincida com o 8 da escala A.I Em seguida, encontramos o valor 1 na escala B.I Finalmente, verificamos na escala A qual o valor coincidente.I Este valor e o resultado da divisao.

0,0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1,0

10,01,0 2,0 3,0 4,0 5,0 6,0 7,0 8,0 9,0

1,0 2,0 3,0 4,0 5,0 6,0

Fernanda Passos (UFF) Historico FAC 9 / 48

Regua de Calculo: Outras Operacoes

Modelos “modernos” da regua de calculo geralmente trazem varias escalas diferentes.I Escalas logarıtmicas de uma, duas, tres decadas.I Escalas lineares.I Escalas logarıtmicas invertidas.I Escalas trigonometricas.I . . .

E possıvel realizar um grande numero de operacoes.I Multiplicacao, divisao, logaritmos, raızes, potencias, exponenciais, . . .I Algumas realizam conversoes de unidades.

Fernanda Passos (UFF) Historico FAC 10 / 48

Regua de Calculo: Historia

A regua de calculo foi criada em 1632 por William Oughtred.Nas decadas de 1950 e 1960 eram muito difundidas entre engenheiros, fısicos e cientistas.

I Ate astronautas das missoes Apollo levavam reguas nas viagens.A partir de meados da decada de 1970, com a reducao do custo das calculadoraseletronicas, reguas cairam em desuso.

Fernanda Passos (UFF) Historico FAC 11 / 48

Computadores Mecanicos

Dispositivos como a regua de calculo e o abaco sao manuais.I Usuario realiza todo o trabalho.I Dispositivos apenas organizam os dados de forma a simplificar calculos.

Durante o seculo XVII, alguns fısicos e matematicos viram a necessidade de automatizarcalculos.Nesta epoca, comecaram a surgir calculadoras mecanicas.

I Dispositivos mecanicos capazes de realizar “automaticamente” operacoes aritmeticas.

Fernanda Passos (UFF) Historico FAC 12 / 48

A Pascalina

A primeira calculadora mecanica bem sucedida foi a Pascalina.I Tambem conhecida como a Calculadora de Pascal.

Criada em 1642 por Blaise Pascal.Capaz de realizar somas e subtracoes com “vai-um”.

Fernanda Passos (UFF) Historico FAC 13 / 48

A Pascalina: Interface

Possui um acumulador cujos algarismos sao exibidos emum mostrador.Ha tambem um conjunto de dials (similares a detelefones antigos).

I Cada um representa um algarismo de entrada.Ao girar um dial, seu valor e adicionado ao acumulador.

I Subtracoes sao obtidas atraves de complemento a 9.

Fernanda Passos (UFF) Historico FAC 14 / 48

Stepped Reckoner: A Calculadora de Leibniz

Uma das limitacoes da Pascalina era a impossibilidade de realizar multiplicacoes.Em 1672, o matematico alemao Gottfried Leibniz projetou uma maquina que seria capaz derealizar as 4 operacoes basicas.Esta maquina, chamada de Stepped Reckoner, utilizava um dispositivo mecanico conhecidocomo Roda de Leibniz.

A Stepped Reckoner nunca funcionou de forma confiavel,devido a falhas de projeto e limitacoes do processo defabricacao.Mas o conceito da Roda de Leibniz ficou.

I Serviu de base para outras calculadoras mecanicasutilizadas durante 200 anos.

Fernanda Passos (UFF) Historico FAC 15 / 48

Charles Babbage

Matematico, fısico e engenheiro ingles.Nascido em 1791.Projetou e construiu computadores mecanicos.

I Bem complexos que as calculadoras da epoca.Por suas invencoes, e as vezes chamado de “Pai doComputador”.

Fernanda Passos (UFF) Historico FAC 16 / 48

Maquina de Diferencas

Primeiro computador mecanico projetado por Charles Babbage (1822).Motivado pela necessidade de tabelas numericas confiaveis para funcoes matematicas.

Capaz de calcular valor de polinomios usando ometodo de diferencas finitas.

I Evita a necessidade de multiplicacoes edivisoes.

Dada a capacidade de computar polinomios, epossıvel calcular aproximacoes para funcoesmais complexas.

I Logaritmos, funcoes trigonometricas, . . .Permitia operacoes com numeros de ate 15algarismos.

Fernanda Passos (UFF) Historico FAC 17 / 48

Maquina Analıtica

Outro computador mecanico projetado porBabbage (1834).Muito mais complexo que a Maquina deDiferencas.Primeiro computador de proposito geral.

I Nao era apenas uma calculadora, comoperacoes pre-determinadas.

I Permitiria programacao atraves de cartoesperfurados.

I Em outras palavras: seria possıvel executaralgoritmos.

Fernanda Passos (UFF) Historico FAC 18 / 48

Maquina Analıtica (Mais)

A Maquina Analıtica nunca foi (completamente) construıda.I Muito complexa para a tecnologia e os metodos de fabricacao da epoca.I Parte dela foi construıda mais recentemente e esta exposta no Museu de Ciencia de Londres.

Mesmo assim, seus projetos estabeleceram princıpios presentes ate hoje nos computadoresmodernos.

I Unidade logica-aritmetica, Controle de Fluxo de Execucao, Repeticoes, Memoria, . . .Embora a Maquina de Diferencas tenha sido um passo importante, a Maquina Analıtica foia principal contribuicao de Babbage.Alguns historiadores acreditam que ela deu origem a primeira programadora da historia.

I Ada Lovelace.

Fernanda Passos (UFF) Historico FAC 19 / 48

Computadores Eletromecanicos e Eletronicos

Fernanda Passos (UFF) Historico FAC 20 / 48

O Rele Eletromecanico

Computadores mecanicos complexos eram de difıcil fabricacao.I Requeriam muita precisao na montagem e fabricacao das pecas.I Alem de projetos muito grandes.

No inıcio do Seculo XX, notou-se quecomputadores utilizando componenteseletricos poderiam ser uma alternativa.O principal personagem desta mudanca deparadigma foi o rele eletromecanico.

Fernanda Passos (UFF) Historico FAC 21 / 48

O Rele Eletromecanico (Mais)

Um rele e um componente eletrico que funciona como uma chave.I Pode ser aberta ou fechada atraves de corrente eletrica.

Uma chave controlada por circuito permite a representacao de dois estados: ligado edesligado.

I Podemos armazenar informacao e operar sobre ela.I Origem da computacao digital.

Operação

Lógica OU

Vcc

Vcc

Representação

de um bit 0

Vcc

Representação

de um bit 1

Vcc

Operação

Lógica E

Fernanda Passos (UFF) Historico FAC 22 / 48

Computadores Z1 e Z3

Em 1938, o alemao Konrad Zuse construiu um computador eletromecanico chamado Z1.I Nao era possıvel utiliza-lo por um perıodo longo.

Na mesma epoca, Zuse recebeu a sugestao de construir um modelo baseado emcomponentes eletricos/eletronicos.Apos construir um primeiro prototipo chamado Z2, Zuse conseguiu financiamento paraconstruir uma versao melhorada, o Z3.

I Utilizava reles.I Primeiro computador programavel, digital, e totalmente funcional.

Serviu a propositos de guerra e foi destruıdo apos seu fim.I Analises aerodinamicas.

Fernanda Passos (UFF) Historico FAC 23 / 48

Z3: Desempenho

Construıdo com 2000 reles.Operava sobre numeros de 22 bits.Clock de 5 a 10 Hz.Codigo executavel e dados eramarmazenados em cartoes perfurados.

Fernanda Passos (UFF) Historico FAC 24 / 48

Bombe

Criada em Bletchley Park pelo matematico AlanTuring e equipe em 1939.Objetivo de decifrar o “Enigma” durante a 2a gerramundial.Colaborou pela vitoria dos Aliados sobre a Alemanhanazista.Filme “O Jogo da Imitacao” (2014) retrata essesmomentos da vida de Alan Turing.

I Considerado o pai da ciencia da computacao.I Formalizador da maquina de Turing (1936):

modelo abstrato de um computador.

Bombe: reconstrucao concluıda em 2007.

Fernanda Passos (UFF) Historico FAC 25 / 48

Colossus

Criada em 1944.Nova maquina criada para o mesmoproposito de decifracao.

I Uso de valvulas eletronicas.Uma maquina robusta que ocupava umasala inteira.Durante a guerra, 10 colossi trabalhavam.Uso cartao perfurado e processamento de25.000 caracteres por segundo.

Colossus

Fernanda Passos (UFF) Historico FAC 26 / 48

A Valvula Eletronica

O uso de reles permitiu os primeiros computadores eletricos.No entanto, reles sao lentos.

I Troca de estado demora.Em um computador, bits trocam de estado a todo momento.

I Tempo de transicao dos reles e um gargalo.Solucao encontrada:

I Utilizar valvulas eletronicas.I Chaveamento mais rapido.I Inıcio dos computadores eletronicos.

Fernanda Passos (UFF) Historico FAC 27 / 48

O ENIAC

Electronic Numerical Integrator And Computer (1946).Considerado primeiro computador de proposito geral eletronico.

I Usava valvulas.I Divide este tıtulo com Colossus que foi criado em 1944.

Projetado por John Mauchly e John P. Eckert (Universidade da Pensilvania).Mais de 17000 valvulas e 800 Km de cabos.Cerca de 30 toneladas.Consumia 150 KW de potencia.Operou ate 1955.

Fernanda Passos (UFF) Historico FAC 28 / 48

O ENIAC (Mais)

Programacao era feita pela manipulacao de chaves e cabeamento.Dados podiam ser lidos de cartoes perfurados.Armazenava numeros em base decimal.

Fernanda Passos (UFF) Historico FAC 29 / 48

John von Neumann

Fısico e matematico do seculo XX.Participou como consultor no projeto e construcao do EDVAC.Figura importante na historia da computacao.

I Propos a Arquitetura de Von Neumann.

Fernanda Passos (UFF) Historico FAC 30 / 48

Arquitetura de Von Neumann

Arquitetura de computadores com programasarmazenados.Caracterısticas:

I Computador eletronico de programa armazenado.I Codigo e dados em memoria unica.

(Quase) a mesma empregada ate hoje.Normalmente, se opoe a Arquitetura de Harvard:

I Programa tambem e armazenado.I Mas ha memorias (barramentos) diferentes.

Consequencia da memoria unica:I Impossıvel ler instrucao e dados simultaneamente.I Gargalo de Von Neumann.

UCP

Unidade

de Controle

Unidade

Lógica-Aritmética

Memória

E/S

Fernanda Passos (UFF) Historico FAC 31 / 48

O Transistor

Na decada de 60 comecaram a se popularizar.Substituıram as valvulas nos computadores.

I Menores.I Menor consumo.I Mais baratos.I Mais confiaveis.I Mais duraveis.I . . .

Fernanda Passos (UFF) Historico FAC 32 / 48

O TX-0

Transistorized Experimental computer zero.Primeiro computador transistorizado.Desenvolvido no MIT.Construıdo em 1955.Usava 3600 transistores.

Fernanda Passos (UFF) Historico FAC 33 / 48

O PDP-1

Programmed Data Processor-1.Desenvolvido pela DEC (Digital EquipmentCorporation).Construıdo em 1959.Aproximadamente 9 KB de memoria.Versao basica custava $150.000,00 (equivalente a$950.000,00 em 2015).

Fernanda Passos (UFF) Historico FAC 34 / 48

Linguagens de Alto Nıvel

Em 1957, IBM (John W. Backus) cria a primeira linguagem de programacao de alto nıvel.I Fortran: Formula Translating System.I Alternativa a linguagem de montagem no IBM 704.

Inicialmente, programas eram escritos em cartoes perfurados.

Fernanda Passos (UFF) Historico FAC 35 / 48

O Circuito Integrado

No final da decada de 1950, surgem os primeiros circuitos integrados.I Ideia de agrupar circuitos eletronicos em uma unidade, o chip.

Em relacao aos componentes discretos:I Mais baratos.I Mais eficientes.I Menores.

Fernanda Passos (UFF) Historico FAC 36 / 48

O IBM /360

Famılia de computadores.I Mesma arquitetura, linguagem de maquina parecida,

capacidades diferentes.Lancado em 1965 pela IBM.Modelo inicial capaz de executar 34500 instrucoespor segundo.No maximo 64 KB de memoria (tambem no modeloinicial).Ultimo modelo lancado em 1978.Muito bem sucedido no mercado.

I Ate hoje, IBM mantem algum nıvel decompatibilidade das aplicacoes com servidores atuais.

Fernanda Passos (UFF) Historico FAC 37 / 48

O Microcomputador

Computadores como o IBM /360 eram mainframes.I Grandes computadores de alta capacidade.I Geralmente, compartilhados por varios usuarios.

Em 1975, a MITS lanca o Altair 8080.I Primeiro microcomputador.I Capacidade relativamente baixa.I Uso individual.I Menor.I Mais barato.

Usava o 8080, processador de 8 bits da Intel.Tinha um interpretador da linguagem Basic.

I Desenvolvido por Bill Gates e Paul Allen.

Fernanda Passos (UFF) Historico FAC 38 / 48

O PC

Os microcomputadores se popularizaram.I Pequenos e baratos.I Adequados para casas e pequenos escritorios.

Em 1981, a IBM lanca o IBM PC.I Baseado na arquitetura 8086.I Muito bem sucedido no mercado.

Se tornaria um padrao de fato.I Outros fabricantes comecaram a vender

computadores PC-compatible.

Fernanda Passos (UFF) Historico FAC 39 / 48

Miniaturizacao

A partir da decada de 90, o processo de miniaturizacao dos computadores continuouacelerado.Ao mesmo tempo, a capacidade (processamento e memoria) tambem aumentourapidamente.

Fernanda Passos (UFF) Historico FAC 40 / 48

Computadores Modernos

Fernanda Passos (UFF) Historico FAC 41 / 48

Computadores Atuais: Componentes Tıpicos

Fernanda Passos (UFF) Historico FAC 42 / 48

Supercomputadores

Computadores de grande capacidade.I Processamento, memoria, . . .

Capazes de realizar trilhoes (ou mais) de operacoespor segundo.Usam muitos processadores interconectados.Utilizados para aplicacoes como previsao do tempo esimulacoes cientıficas.Bastante caros.

Fernanda Passos (UFF) Historico FAC 43 / 48

Clusters e Grades Computacionais

Alternativa mais barata para computacao de alto desempenho.Ideia de formar um computador com processadores fracamente acoplados.Em geral, computadores pequenos separados conectados por uma rede.

Fernanda Passos (UFF) Historico FAC 44 / 48

GPUs

A demanda por aplicacoes e jogos com graficos cada vez melhores levou ao surgimento dasGPUs.

I Unidades de processamento especıficas para graficos.I Normalmente contem muitos processadores especializados trabalhando em paralelo.

Potencial tambem para processamento de proposito geral.I Inclusive, em clusters de GPUs.

Fernanda Passos (UFF) Historico FAC 45 / 48

Lei de Moore

Em um artigo em 1965, GordonE. Moore, fundador da Intel fezuma observacao.Segundo ele, o numero detransistores nos computadoresaproximadamente dobrava a cadadois anos.Ele fez a previsao de que estatendencia continuaria.

Fernanda Passos (UFF) Historico FAC 46 / 48

Historico do Desempenho dos Computadores

Com o aumento exponencial do numero de transistores, veio tambem um aumentoexponencial do desempenho.

Fernanda Passos (UFF) Historico FAC 47 / 48

Historico do Desempenho dos Computadores (Mais)

Modelo ENIAC IBM 704 IBM S/360 M50 VAX 11-780 Sun SPARC Dell 4600Data 1946 1955 1965 1978 1992 2003Tempo para soma 200 us 24 us 4 us 400 ns 25 ns 208 psTempo de acesso amemoria

12 us 2 us 200 ns 80 ns 3 ns

Memoria Total 168 KB 64 KB 128 KB 128 MB 256 MBAluguel $48.000 $32.00 $6.000Compra $500.000 $1.390.000 $409.000 $128.000 $15.000 $800Atualizado (2003) $4,7 M $9,5 M $2,4 M $360.000 $19.600 $800

Fernanda Passos (UFF) Historico FAC 48 / 48