história da computação - ime.usp.brariane/ach2001/ach2001-aula02... · introdução à ciência...
TRANSCRIPT
SISTEMAS DEINFORMAÇÃO
ACH2001Introdução à Ciência da Computação I
História da Computação
Professoras:
Ariane Machado Lima
Fátima L. S. Nunes
SISTEMAS DEINFORMAÇÃO
Conteúdo da aula de hoje
• A história da computação.
• Evolução da arquitetura do computador.
• Evolução das linguagens de programação.
SISTEMAS DEINFORMAÇÃO
Como tudo começou ???
SISTEMAS DEINFORMAÇÃO
História da TI
• Quatro períodos:
– Pré-mecânico
– Mecânico
– Eletromecânico
– Eletrônico
4000 – 1200 A.C
SISTEMAS DEINFORMAÇÃO
História da TI
• Quatro
períodos:
– Pré-mecânico
– Mecânico
– Eletromecânico
– Eletrônico
4000 – 1200 A.C
SISTEMAS DEINFORMAÇÃO
História da TI
• Quatro
períodos:
– Pré-mecânico
– Mecânico
– Eletromecânico
– Eletrônico
4000 – 1200 A.C
SISTEMAS DEINFORMAÇÃO
História da TI
• Quatro
períodos:
– Pré-mecânico
– Mecânico
– Eletromecânico
– Eletrônico
4000 – 1200 A.C
SISTEMAS DEINFORMAÇÃO
História da TI
• Quatro
períodos:
– Pré-mecânico
– Mecânico
– Eletromecânico
– Eletrônico
4000 – 1200 A.C
SISTEMAS DEINFORMAÇÃO
“Primeiro Word”
• Tábuas de argila
• Registros de:
– Estórias
– Mitos
– Transações comerciais
– etc
4000 – 1200 A.C
SISTEMAS DEINFORMAÇÃO
Um resumo do que veremos...
SISTEMAS DEINFORMAÇÃO
Ábaco – primeira calculadora
• Inventado na
Babilônia (ou
pelos chineses?)
3000 A.C
SISTEMAS DEINFORMAÇÃO
Ábaco – primeira calculadora
• Ábaco escolar
3000 A.C
SISTEMAS DEINFORMAÇÃO
Primeira calculadora mecânica
• Criada por Blaise
Pascal (francês)
para aliviar o
serviço do pai,
cobrador de
impostos
1642
SISTEMAS DEINFORMAÇÃO
La pascaline – primeira calculadora
mecânica
• Soma e subtrai (embora a intenção fosse realizar as 4 operações)
• Entrada através de discos giratórios
• Os resultados das operações apareciam numa espécie de janelinha
1642
SISTEMAS DEINFORMAÇÃO
La pascaline – primeira calculadora
mecânica
• Engrenagem de rodas dentadas que levava os dígitos de uma coluna à outra.
• Recebeu uma patente, mas nãoo fez sucesso
1642
SISTEMAS DEINFORMAÇÃO
Leibniz (alemão)
aprimora a La pascaline
• 4 operações
• Cria em 1671 e apresenta na Royal Society (Londres) em 1673
• Constrói em 1674
1671
SISTEMAS DEINFORMAÇÃO
Calculadora mecânica de Leibniz
• Multiplicações e
divisões: somas
e subtrações
subsequentes
1674
SISTEMAS DEINFORMAÇÃO
Calculadora mecânica de Leibniz
1674
SISTEMAS DEINFORMAÇÃO
Calculadora mecânica de Leibniz
1674
• Pouco usada (poucas unidades)
SISTEMAS DEINFORMAÇÃO
Problema de entrada....
1642 - 1790
• Avanços nas calculadoras
• Entrada de dados lenta (manual)
• Velocidade de processamento dependia
da eficiência das pessoas...
• Próximo passo: acelerar entrada de dados
SISTEMAS DEINFORMAÇÃO
Joseph Marie Jacquard
• Filho de tecelões, tinha que trocar os novelos de lã colorida no tear a cada segundo
• Ideia:
1790
SISTEMAS DEINFORMAÇÃO
Joseph Marie Jacquard (francês)
• Filho de tecelões,
tinha que trocar
os novelos de lã
colorida no tear a
cada segundo
• Ideia: cartões
perfurados!
1790
SISTEMAS DEINFORMAÇÃO
Tear semi-automático
• A presença ou ausência de orifícios criava padrões no tecido por meio do controle da maneira pela qual os fios eram levantados ou abaixados
1801
SISTEMAS DEINFORMAÇÃO
Exibição em Lyon
• Quase morto
por outros
artesãos
1801
SISTEMAS DEINFORMAÇÃO
1812
• Cerca de 11 mil
teares de
Jacquard na
França
• Capaz de
desenhar
padrões de alta
qualidade (ex:
auto-retrato com
10 mil cartões)
SISTEMAS DEINFORMAÇÃO
Cartões perfurados
• Usados daí por
diante...
• ... inclusive nas
eleições de
2000
...
SISTEMAS DEINFORMAÇÃO
Aritmômetro
• Criada por
Charles Xavior
Thomas (francês)
• Baseada na
Leibniz
• Comercialmente
vendida e
distribuída
1820
SISTEMAS DEINFORMAÇÃO
Charles Babbage (inglês)
• Notou que muito do que se fazia em matemática poderia ser automatizado
• Iniciou projeto da máquina de diferenças (Difference Engine).
• Capaz de resolver equações polinômicas
• Ajuda nos cálculos de navegação (na esperança de reduzir o número de navios que se perdiam ;-)
1812
SISTEMAS DEINFORMAÇÃO
Máquina de Diferenças
• 1822: terminou um protótipo de máquina e obteve financiamento do governo inglês para construí-la.
1822 - 1823
SISTEMAS DEINFORMAÇÃO
Máquina de Diferenças
• 1823: iniciou construção (usaria motor a vapor, seria totalmente automático, imprimiria o resultado e teria um programa fixo).– Mudar o cálculo
implicaria em mudar as engrenagens
1822 - 1823
SISTEMAS DEINFORMAÇÃO
Charles Babbage (inglês)
• Teve uma idéia melhor e abandonou tudo.
• Nova idéia: máquina programável, de propósito geral: máquina analítica (Analytical Engine).
• Ponto de partida para os computadores eletrônicos!
1833
SISTEMAS DEINFORMAÇÃO
Máquina Analítica - programável
• Manipularia números de 50 dígitos
• Memória de 1000 dígitos
• Estações de leitura: cartões perfurados similares ao tear de Jacquard (programas!)
– Auto-retrato de Jacquard pertencia a quem?
• Pai da computação
1833
SISTEMAS DEINFORMAÇÃO
Máquina Analítica - programável
• Continuou a trabalhar no projeto até sua morte
• Não conseguiu construir – Tecnologia mecânica
da época era insuficiente (???)
– Pouca gente via a necessidade para tal máquina.
1833-1871
SISTEMAS DEINFORMAÇÃO
Livro de ficção
SISTEMAS DEINFORMAÇÃO
Programas para a máquina
analítica
1833-1871
SISTEMAS DEINFORMAÇÃO
Programas para a máquina
analítica
• Ada Lovelace (mãe da
programação)
• Criou sub-rotinas, loops, saltos
condicionais,…
• Inventou a palavra algoritmo
em homenagem ao matemático
Al-Khawarizmi (820 D.C.).
1833-1871
SISTEMAS DEINFORMAÇÃO
Programas para a máquina
analítica• Algoritmo: sequência de
operações ou comandos que,
aplicada a um conjunto de dados,
permite solucionar classes de
problemas semelhantes.
• Ex: – algoritmo da divisão,
– da raiz cúbica,
– para resolução de equações de
segundo grau,
– Etc.
1833-1871
SISTEMAS DEINFORMAÇÃO
Já ouviram falar de Hollerith ???
SISTEMAS DEINFORMAÇÃO
Já ouviram falar de Hollerith ???
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
• Usou cartões perfurados para uso no censo americano.
• Os dados do censo de 1880, manualmente processados, levaram 7 anos e meio para serem compilados.
1890
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
• Os do censo de 1890 foram processados em 2 anos e meio, com a ajuda de uma máquina de perfurar cartões e máquinas de tabular e ordenar, criadas por Hollerith e sua equipe
1890
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
• As informações
sobre os indivíduos
eram armazenadas
por meio de
perfurações em
locais específicos
do cartão.
1890
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
1890
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
• Nas máquinas de tabular, um pino passava pelo furo e chegava a uma jarra de mercúrio, fechando um circuito elétrico e causando um incremento de 1 em um contador mecânico
1890
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
• Mais tarde, Hollerith fundou uma
companhia para produzir máquinas de
tabulação
• Anos depois, em 1924, essa companhia
veio a se chamar….
1890
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
• Mais tarde, Hollerith fundou uma
companhia para produzir máquinas de
tabulação
• Anos depois, em 1924, essa companhia
veio a se chamar….
1890
SISTEMAS DEINFORMAÇÃO
Herman Hollerith
• Mais tarde, Hollerith fundou uma
companhia para produzir máquinas de
tabulação
• Anos depois, em 1924, essa companhia
veio a se chamar….
1890
SISTEMAS DEINFORMAÇÃO
Avanços nas calculadoras de mesas
• As máquinas podiam:
– Acumular resultados parciais;
– Armazenamento e reentrada automática de resultados
passados (memória).
– Imprimir resultados em papel
1890
SISTEMAS DEINFORMAÇÃO
Z1- Primeiro computador eletro-
mecânico• Criado por Konrad Zuse
(alemão)
• Primeira máquina binária
programável do mundo (usava o
sistema de numeração de base
2)
• O único componente elétrico do
Z1 era um motor que servia para
gerar um sinal de clock
mecânico de um hertz.
• Na época, ninguém ficou
sabendo fora da Alemanha
• Destruído durante a II Guerra
1936
SISTEMAS DEINFORMAÇÃO
II Guerra Mundial
• Pesquisa em informática
• Americanos:
– Mark I
– ENIAC
1936
SISTEMAS DEINFORMAÇÃO
• Criado:
– por Howard Aiken, professor de
matemática aplicada da
Universidade Harvard (em
conjunto com a IBM)
– com a finalidade de decifrar os
códigos secretos usados pelo
exército alemão
1937-1944
Mark I
SISTEMAS DEINFORMAÇÃO
• Calculadora eletromecânica
com motor elétrico;
• Pesava 5 (70, ?) toneladas,
usava toneladas de gelo para
refrigeração;
• Milhares de relês
• Ocupava cerca de 120 m³
• Multiplicava dois números de
23 dígitos em 3 segundos.
1937-1944
Mark I
SISTEMAS DEINFORMAÇÃO
• Objetivo: calcular a trajetória de mísseis com uma precisão maior
• Só ficou pronto meses após a guerra
• Antes de falar dele...
• ... período de guerra
• ... programabilidade
1945
ENIAC
SISTEMAS DEINFORMAÇÃO
1939 - 42
Alan Turing
SISTEMAS DEINFORMAÇÃO
• Realizou importantes contribuições práticas e teóricas à Ciência da Computação.
• Pai da Ciência da Computação
Décadas de 30 e 40
Alan Turing
SISTEMAS DEINFORMAÇÃO
• 1936: elabora a máquina de Turing; pesquisas em computabilidade.
• 1939-40: The Bombe, máquina
para decodificação do Enigma
(criptografia)
• 1947-1948: Redes neurais e
inteligência artificial
Décadas de 30 e 40
Alan Turing
SISTEMAS DEINFORMAÇÃO
• 1952: Preso por homossexualidade, perde privilégios militares
• 1953-54: Trabalho não finalizado
em Biologia e Física; tem sua
reputação e vidas destruídas
pelos militares ingleses
• 1954: Suicídio
Década de 50
Alan Turing
SISTEMAS DEINFORMAÇÃO
• Livro interessante:
– Andrew Hodges, “Alan
Turing: The Enigma”, 2000.
– http://www.turing.org.uk/turing
1939 - 42
Alan Turing
SISTEMAS DEINFORMAÇÃO
Décadas de 40 e 50
Computadores eletrônicos -
1ª Geração
Válvulas eletrônicas
e
cabos
Maiores problemas:
• velocidade
• temperatura
SISTEMAS DEINFORMAÇÃO
• ENIAC – Electronic Numerical Integrator And Computer.
• Considerado o primeiro computador eletrônico.
• Objetivo: calcular a trajetória de mísseis com uma precisão maior (mas só ficou pronto meses após a guerra).
• Permitia números de 10 dígitos decimais.
• 300 multiplicações ou 5000 somas por segundo.
1945
ENIAC
SISTEMAS DEINFORMAÇÃO
• 17486 válvulas; alguma sempre queimava quase que diariamente.
1945
ENIAC
SISTEMAS DEINFORMAÇÃO
• Programação era muito difícil.
• Programas codificados manualmente em “hardware” por meio de conexões semelhantes àquelas que as telefonistas utilizavam antigamente.
• 6000 comutadores manuais e centenas de cabos usados na programação
• Memória de dados separada do controle e do programa.
• Controle formado por circuitos eletro-eletrônicos.
1945
ENIAC
SISTEMAS DEINFORMAÇÃO
Programa
Controlador
CPU Memória
Entrada Saída
1945
ENIAC - arquitetura
SISTEMAS DEINFORMAÇÃO
• Matemático húngaro que desenvolveu modelos de computação que levou à arquitetura do computador moderno.
• O programa deve ser guardado no mesmo lugar que os dados: na memória.
1945
John Von Neumann
SISTEMAS DEINFORMAÇÃO
Programa
Controlador
CPU
Dados
Entrada SaídaMemória
Década de 50
Arquitetura de John Von Neumann
SISTEMAS DEINFORMAÇÃO
Programa
Controlador
CPU
Dados
Entrada SaídaMemória
Década de 50
Arquitetura de John Von Neumann
Hoje temos memória RAM, ROM, etc.
SISTEMAS DEINFORMAÇÃO
Programa
Controlador
CPU
Dados
Entrada SaídaMemória
Década de 50
Arquitetura de John Von Neumann
Hoje temos memória RAM, ROM, etc.
Originou o Sistema Operacional
SISTEMAS DEINFORMAÇÃO
Década de 50
Computadores eletrônicos -
2ª Geração
Transistores
Ganhos em:
• velocidade
• tamanho
• custo
SISTEMAS DEINFORMAÇÃO
• 1953: IBM vende 15 máquinas baseadas na arquitetura de Von Neumann.
• Memória magnética
(magnetic core memory).
Década de 50
Anos 50
SISTEMAS DEINFORMAÇÃO
Década de 60
Computadores eletrônicos -
3ª Geração
Circuitos integrados
(chips)
• maior compactação
• redução de custo
• grande salto de velocidade: (ordem de microsegundos)
SISTEMAS DEINFORMAÇÃO
• Computação limitada a
poucos computadores de
grande porte
Década de 60
Anos 60
SISTEMAS DEINFORMAÇÃO
Década de 70 até hoje
Computadores eletrônicos -
4ª Geração
Otimização da tecnologia já existente
• Velocidade: ordem de nanossegundos
• Crescimento segundo a lei de Moore (na época presidente da Intel):
– O poder de processamento
dobra a cada 18 meses.
SISTEMAS DEINFORMAÇÃO
• Indo contra o modelo centralizador da IBM, jovens computeiros exigem a democratização da informática.
• Revista esquerdista da
Universidade da Califórnia em
Berkeley People's Computer
Company defende a criação
de computadores pessoais e
de cooperativas de
informação.
Década de 70
Movimento PC
SISTEMAS DEINFORMAÇÃO
• Steve Jobs cria a Apple por volta de 1975; investe lucros do Apple II em shows de rock (1982).
Década de 70
Apple
SISTEMAS DEINFORMAÇÃO
• Nasce a MicroSoft.
• Governo da Califórnia
apóia a microinformática.
Década de 70
Microsoft
SISTEMAS DEINFORMAÇÃO
Década de 80
Anos 80
SISTEMAS DEINFORMAÇÃO
1981
IBM lança o PC
SISTEMAS DEINFORMAÇÃO
1984
Apple lança o Macintosh
SISTEMAS DEINFORMAÇÃO
• Xerox inventa e Apple comercializa interface baseada em janelas.
• Microsoft cresce
comercializando o sistema
operacional MS-DOS para IBM-
PCs:
– Versão simplificada do CPM (Intel)
que, por sua vez, era uma versão
simplificada do sistema UNIX.
Década de 80
Anos 80
SISTEMAS DEINFORMAÇÃO
• Algumas empresas escondem código fonte
• Começa o movimento do software livre:
– Richard Stallman – projeto
GNU – GNU's Not Unix:
• Emacs;
• GCC;
• GDB.
Década de 80
Anos 80
SISTEMAS DEINFORMAÇÃO
Como foram os anos 90?
Década de 90
Anos 90
SISTEMAS DEINFORMAÇÃO
• Construída nos
anos 1990 pelo
governo inglês, e
funciona!
Década de 90
Máquina analítica de
Charles Babbage
SISTEMAS DEINFORMAÇÃO
• Microsoft pega carona na explosão de vendas de PCs, utiliza técnicas de marketing agressivas e estabelece quase que o monopólio em certas áreas:
– Sistema operacional para PCs;
– Editor de textos;
– Planilha eletrônica;
– Editor de Apresentações; etc.
Década de 90
Anos 90
SISTEMAS DEINFORMAÇÃO
• Intensifica-se o movimento por software livre.
• Nasce o Linux e uma nova
forma de desenvolvimento
de software baseada em
comunidades distribuídas
através da internet
Década de 90
Anos 90
SISTEMAS DEINFORMAÇÃO
• No final da década, governo americano percebe o perigo que a Microsoft representa e inicia batalha judicial contra a empresa.
• Em 2002, depois da eleição
de George W. Bush, governo
termina o processo judicial
com sanções mínimas à
empresa.
Década de 90
Anos 90
SISTEMAS DEINFORMAÇÃO
Como está hoje ?
SISTEMAS DEINFORMAÇÃO
Hoje...
• Computadores de mão.
• Sistemas embutidos.
Como está hoje?
SISTEMAS DEINFORMAÇÃO
Hoje...
• Grid Computing.
• Computação Ubíqua.
Como está hoje?
SISTEMAS DEINFORMAÇÃO
Hoje...
SISTEMAS DEINFORMAÇÃO
Hoje...
Há quem tenha medo...
SISTEMAS DEINFORMAÇÃO
Paralela à evolução do hardware
Evolução do software
SISTEMAS DEINFORMAÇÃO
• Só poderia ser programada com a troca física de engrenagens.
1823
Máquina de Babbage
SISTEMAS DEINFORMAÇÃO
• Programação era feita
mudando chaves e trocando
a posição de cabos.
ENIAC
1945
SISTEMAS DEINFORMAÇÃO
• Grace Hooper cria o primeiro
compilador, A0, programa que
transforma comandos para zeros e
uns e vice-versa.
1951
Primeiro compilador – A0
SISTEMAS DEINFORMAÇÃO
• FORTRAN (Formula Translating) desenvolida por John Backus, da IBM.
• Eficaz para manipulação numérica
1957
Primeira linguagem de alto nível
SISTEMAS DEINFORMAÇÃO
• ALGOL 58 (Algorithmic Language).
•
• Origem da maioria das linguagens modernas
• Primeira linguagem estruturada.
1958
Padrão universal de linguagem
SISTEMAS DEINFORMAÇÃO
• Criado por John McCarthy do MIT
• Inicialmente projetada para uso em inteligência artificial.
• Ainda usada: Stallman
desenvolveu Emacs com LISP.
1958
LISP (List Processing)
SISTEMAS DEINFORMAÇÃO
• FORTRAN era eficaz para
manipulação de números; não
para entrada e saída
• Foi criada a linguagem COBOL
(Common Business Oriented
Language).
1959
COBOL
SISTEMAS DEINFORMAÇÃO
• 1964, criação do Basic
(Beginners All-purpose Symbolic
Instruction Code).
• 1965, criação de uma linguagem
específica para a simulação
(SIMULA-1) por Ole-Johan Dahl e
Kristen Nygaard.
Considerada a precursora
das linguagens orientadas a
objetos.
• 1966, criação da linguagem Logo
para desenhos gráficos (a
linguagem da tartaruga).
1964 - 1966
Evolução do software
SISTEMAS DEINFORMAÇÃO
• 1967, Simula-67, uma linguagem de uso geral incluindo todos os conceitos de orientação à objetos.
• 1968, criação da linguagem Pascal
por Niklaus Wirth.
Principal interesse: linguagem
para ensino.
Combinou as melhores
características do COBOL,
FORTRAN e ALGOL.
1967 - 1968
Evolução do software
SISTEMAS DEINFORMAÇÃO
• 1970, PROLOG, linguagem para programação lógica, usada em inteligência artificial.
• 1972, criação da linguagem C
(Denis Ritchie).
Criada para o desenvolvimento do
sistema operacional UNIX.
Supriu as deficiências da linguagem
Pascal; teve sucesso quase que
imediato.
1970 - 1972
Evolução do software
SISTEMAS DEINFORMAÇÃO
• 1972, linguagem Smalltalk(desenvolvida por Alan Kay, da Xerox), OO ganha força.
• 1983, criadas extensões da
linguagem C incluindo
características OO: C++ e
Objective-C.
1972 - 1983
Evolução do software
SISTEMAS DEINFORMAÇÃO
• 1987, linguagens baseadas em
scripts, e.g., Perl, desenvolvida
por Larry Wall. Ferramentas de
UNIX como sed e awk não eram
suficientes.
• 1994, Java é divulgada como a
linguagem para a Internet.
• 2000, C# (Microsoft),
combinando idéias de Java e
C++
1987-2000
Evolução do software
SISTEMAS DEINFORMAÇÃO
• Kon, F.; Goldman, A. E Silva e Silva, P. J. Introdução à Ciência da Computação com Java e Orientação a Objetos, IME-USP, 2004.
• Wikipedia: http://en.wikipedia.org (Inglês);
http://pt.wikipedia.org (Português).
• Sítio IME sobre História do Computador:
http://www.ime.usp.br/~macmulti/historico.
• Lista de agraciados com o prêmio Turing:
http://www.acm.org/awards/taward.html.
• www.youtube.com
Referências
SISTEMAS DEINFORMAÇÃO
• http://www.youtube.com/watch?v=F3qWg1JBPZg – História da Computação
• http://www.youtube.com/watch?v=6X2B8Z_DCo0 – Eniac
• http://www.youtube.com/watch?v=XGCs3Q9Friw – Alan Turing
• http://www.youtube.com/watch?v=v1on9D3Fkus – Alan Turing e o computador
• http://www.youtube.com/watch?v=YXg1WN0K2BI – Arquitetura de von Newman
• http://www.youtube.com/watch?v=pgwg56Qj3Aw – História da Computação
• http://www.youtube.com/watch?v=7Olg28e9MHg – Resumo da história do computador
• http://www.youtube.com/watch?v=yuljS6vxpNo – Evolução da informática
• http://www.youtube.com/watch?v=thojStYMQqY – Como funciona o computador
• http://www.youtube.com/watch?v=rxrMv4R0TbU – Componentes da CPU
• http://www.youtube.com/watch?v=AD2XsOSpj_8 – Comercial Steven Jobs 1984
• http://www.youtube.com/watch?v=igQpCococwQ – IBM PC 1984
• http://www.youtube.com/watch?v=NVtxEA7AEHg – Evento Apple – Steven Jobs e Bill Gates
• http://www.youtube.com/watch?v=flIfs1g2nSY – Piratas Vale Silício
• http://www.youtube.com/watch?v=F3qWg1JBPZg&NR=1 - história do computador em minutos
• http://www.youtube.com/watch?v=tHDzkIy7PZQ&NR=1 - história da informática
• http://www.youtube.com/watch?v=QXcAl9K6uyM&NR=1 - Evolução do computador
Vídeos interessantes
SISTEMAS DEINFORMAÇÃO
ACH2001Introdução à Ciência da Computação I
História da Computação
Professoras:
Ariane Machado Lima
Fátima L. S. Nunes