%cabeçalho para todos os capítulos
%\input{cabecalho}

%\begin{document}

%Opções para o pacote listings
%\input{listingOptions}

\chapter{História da Computação}

\begin{center}
\shabox{
  \begin{Bitemize}
    \item[]\textbf{Quais novidades veremos nesta aula?}
    \item a história da computação /*********/
    \end{Bitemize}
} % \shabox
\end{center}
\bigskip

\section{História da Computação e Arquitetura do Computador}

\begin{itemize}
\item Ábaco (Soroban em japonês) (criado \textasciitilde{}2000 anos atrás)
\item Blaise Pascal, 1642 (pai da calculadora)

\begin{itemize}
\item o primeiro computador (calculadora) digital,
\item o capaz de somar
\item o entrada através de discos giratórios
\item o ajudou seu pai, coletor de impostos
\end{itemize}
\item Leibniz (inventou 1671, construíu 1694)

\begin{itemize}
\item computador capaz de somar e multiplicar
\item criou o mecanismo de engrenagens do \char`\"{}vai-um\char`\"{} usado
até hoje
\end{itemize}
\item Avanços nas calculadoras de mesa -> 1890 máquinas podiam:

\begin{itemize}
\item acumular resultados parciais
\item armazenamento e reentrada automática de resultados passados (memória)
\item imprimir resultados em papel
\end{itemize}
\item Charles Babbage (Prof. Matemática em Cambridge, Inglaterra)

\begin{itemize}
\item 1812: notou que muito do que se fazia em matemática poderia ser automatizado
\item iniciou projeto do \char`\"{}Difference Engine\char`\"{} (Máquina/Engenho/Engenhoca
de Diferenças)
\item 1822: terminou um protótipo da máquina e obteve financiamento do governo
p/ construí-la
\item 1823: iniciou construção (usaria motor a vapor, seria totalmente automático,
imprimiria o resultado e teria um programa fixo)
\item 1833: depois de 10 anos teve uma idéia melhor e abandonou tudo
\item Nova idéia: máquina \textbf{programável}, de propósito geral: \char`\"{}Analytical
Engine\char`\"{} (Máquina Analítica)

\begin{itemize}
\item manipularia números de 50 dígitos
\item memória de 1000 dígitos
\item \emph{estações de leitura} leriam cartões perfurados similares ao
de tear (Jacquard) 
\end{itemize}
\item mas ele não consegui construí-lo

\begin{itemize}
\item tecnologia mecânica da época era insuficiente
\item pouca gente via a necessidade para tal máquina
\end{itemize}
\item Ada Lovelace (mãe da programação ) escreveu programas para o engenho
analítico; inventou a palavra algoritmo em homenagem ao matemático
Al-Khawarizmi (820dC)
\item a máquina foi finalmente construída pelo governo inglês nos anos 1990
(e funciona!)
\item URL do vídeo do Roy?
\end{itemize}
\item Herman Hollerith, 1890

\begin{itemize}
\item criou cartões perfurados para uso no censo americano
\item tecnologia levou à criação da International Business Machines (IBM)
\end{itemize}
\item MARK 1, criada em 1937 por Howard Aiken, prof. de Matemática Aplicada
de Harvard

\begin{itemize}
\item calculadora eletromecânica com motor elétrico
\item pesava 5 toneladas, usava toneladas de gelo para refrigeração
\item multiplicava dois números de 23 digitos em 3 segundos
\end{itemize}
\item John Atanasoff, 1939

\begin{itemize}
\item calculadora com válvulas a vácuo (240 válvulas)
\item resolvia equações lineares, diferenciais e de balística
\item manipulava números binários
\end{itemize}
\item Rumo a programabilidade

\begin{itemize}
\item Aiken declarou em 1947 que nunca haveria necessidade de mais de um
ou dois computadores programáveis e que os projetos neste sentido
deveriam ser abandonados.
\end{itemize}
\item ENIAC, 1945

\begin{itemize}
\item considerado o primeiro computador eletrônico
\item números de 10 digitos decimais
\item 300 multiplicações ou 5000 somas por segundo
\item 17486 válvulas, alguma queimava quase que diariamente
\item 6000 comutadores manuais e centenas de cabos usados na programação
\item programação era muito difícil
\end{itemize}
\item desenhar arquitetura do ENIAC

\begin{itemize}
\item programa especificado manualmente em \char`\"{}hardware\char`\"{}
com conexões semelhantes àquelas que as velhas telefonistas utilizavam
\item memória de dados separada do controle e do programa
\item o controle é formado por circuitos eletro-eletronicos
\end{itemize}
\item John Von Neumann, matemático, 1945

\begin{itemize}
\item estudo abstrato de modelos de computação levou à arquitetura do computador
moderno
\item o programa deve ser guardado no mesmo lugar que os dados: na memória
\item \textbf{desenhar} arquitetura de Von Neumann (indicar indício de sistema
operacional) (hoje em dia existe memória ROM, RAM, flash RAM...)
\end{itemize}
\item Anos 50

\begin{itemize}
\item 1953: IBM vende 15 máquinas baseadas no modelo de Neumann
\item transistores
\item memória magnética (\char`\"{}magnetic core memory\char`\"{})
\end{itemize}
\item Anos 60

\begin{itemize}
\item circuitos impressos / cirtuitos integrados (chips)
\item crescimento segundo lei de Moore até hoje (VLSI)
\item computação limitada a poucos computadores de grande porte
\end{itemize}
\item Anos 70

\begin{itemize}
\item indo contra o modelo centralizador da IBM, geração sexo, drogas e
rock-and-roll da California exige a democratização da informática
\item Revista esquerdista da Universidade da California em Berkeley People's
Computer Company defende a criação de computadores pessoais e de cooperativas
de informação.
\item Steve Jobs cria Apple em garagem \textasciitilde{} 1975, investe lucros
do Apple II em shows de Rock (82)
\item Governo da California apóia microinformática
\end{itemize}
\item Anos 80

\begin{itemize}
\item IBM lança PC (1981)
\item Apple lança MacIntosh (1984)
\item Xerox inventa e Apple comercializa interface baseada em janelas (\char`\"{}Windows\char`\"{})
\item Microsoft cresce comercializando o fraco sistema operacional MS-DOS
para IBM-PCs
\end{itemize}
\item Anos 90

\begin{itemize}
\item Microsoft pega carona na explosão de vendas de PCs, se apropria de
idéias alheias como se fossem suas e usa técnicas moralmente questionáveis
para controlar mercado de software estabelecendo quase um monopólio
em certas áreas.
\item Intensifica-se o movimento por software livre
\item Nasce o Linux e uma nova forma de desenvolvimento de software baseada
em comunidades distribuídas através da Internet.
\item No final da década, governo americano percebe o perigo que a Microsoft
representa e inicia ofensiva (após a vitória dos conservadores na
eleição nos EUA, o governo termina um processo judicial que havia
iniciado; as sanções à empresa são mínimas).
\end{itemize}
\item Século XXI

\begin{itemize}
\item Computadores de Mão
\item Sistemas Embutidos
\item Computação Ubíqua
\end{itemize}
\end{itemize}

\section{E a evolução do software?}

\begin{itemize}
\item ENIAC: programação manual com conexões físicas
\item primeiros computadores de Von Neumann: programação em linguagem de
máquina (binária).
\item linguagem de montagem: usa mneumônicos para representar seqüências
de bits.
\item linguagem de alto nível: FORTRAN - traduzida para linguagem de montagem
porum compilador.
\item linguagem estruturada: Algol, C
\item orientação a objetos: Simula, Smalltalk, C++, Java.
\end{itemize}

%\end{document}

