Você está na página 1de 81

FACULDADE DE TECNOLOGIA CARLOS DRUMMOND DE ANDRADE

ANALISE E DESENVOLVIMENTO DE SISTEMAS

TRABALHO DE GRADUAO INTERDISCIPLINAR (TGI) ARQUITETURA E


REDES DE COMPUTADORES
SO PAULO

2012
TRABALHO DE GRADUAO INTERDISCIPLINAR (TGI) ARQUITETURA E
REDES DE COMPUTADORES

Trabalho de graduao Interdisciplinar apresentado


a Faculdade de Tecnologia Carlos Drummond de
Andrade como item parcial para obteno do ttulo
de Tecnlogo em Anlise e Desenvolvimento de
Sistemas, sob orientao do Professor Jos
Norberto Sousa Lopes

So Paulo
2012
Sumrio

1.0 Introduo..............................................................................................................5

2.0 Arquitetura de computadores..............................................................................6

2.1 Nvel de Arquitetura do Conjunto de Instruo....................................................6

2.2 Evoluo e desempenho de computadores........................................................9

2.2.1 Os Computadores Pessoais..........................................................................9

2.2.2 Inteligncia Artificial.....................................................................................10

2.2.3 Impactos na Sociedade...............................................................................11

2.3 Cronologia e marcos evolutivos........................................................................12

2.4 Evoluo dos sistemas operacionais.................................................................14

2.5 Arquiteturas Risc e Cisc.....................................................................................26

2.5.1 CISC E RISC: Qual a diferena?................................................................27

2.5.2. Diminui a diferena.....................................................................................28

2.5.3 Coexistncia pacfica...................................................................................28

2.5.4 Arquitetura CISC versus RISC....................................................................29

2.5.5 Arquiteturas de Pipeline...............................................................................33

2.5.6 Superpipelined versus Superescalar...........................................................36

2.6 Unidade Lgica e Aritmtica - ULA....................................................................40

2.7 Componentes bsicos de um computador........................................................49

2.8 Memria.............................................................................................................50

2.8.1 Memria Interna..........................................................................................50

2.8.2 Memria Externa.........................................................................................58


2.8.2.1 Discos Rgidos..........................................................................................59

2.8.2.2 CD-ROM (Compact-Disck Read-Only Memory)......................................61

2.8.2.3 Unidades de fita magnticas....................................................................61

2.8.2.4 Memria Cache........................................................................................61

2.9 Barramentos.......................................................................................................63

2.10 Dispositivos de entrada e sada.......................................................................73

3.0 Concluso............................................................................................................77

4.0 Bibliografia...........................................................................................................78
1.0 Introduo

O trabalho a seguir visa demonstrar a Redes e arquitetura de computadores


exemplificando suas principais instrues e estruturas e as partes /componentes que
formam um computador ou que sejam necessrios para executar suas
funcionalidades.

Ir ser abordada a lgica computacional responsvel por executar as


instrues bsicas do computador ea as enviadas pelo o usurio, para que se
entenda o seu funcionamento e a lgica emprega desde os primrdios dos primeiros
computadores. estudada tambm a arquitetura dos componentes bsicos do
computador para que se obtenha sua significncia para com o computador
completo, e entendido o funcionamento de tal componente e porque e como ele faz
parte do computador, alm de um estudo detalhado sobre cronologia dos
computadores e principais marcos.

7
2.0 Arquitetura de computadores

O computador uma mquina que pode solucionar problemas para as


pessoas executando instrues que lhe so dadas. Tpicos que contm tarefas de
como utilizar denominado programa. Os circuitos eletrnico de cada computador
podem reconhecer e executar diretamente um conjunto limitado de instrues
simples, para que aja a interao convertido em instrues bsicas, raramente
so muitos complicados do que: somar dois nmeros, verificar um nmero para ver
se ele zero, copiar dados de uma parte da memria do computador para outra.
Tanenbaum, Ed 2005

Juntas, as instrues primitivas de um computador formam uma linguagem


com a qual se comunique com ele, Linguagem de Mquina, sejam as mais simples
possvel, coerentes com o bsico de utilizao e desempenho, com misso de
reduzir a complexidade e o custo da eletrnica necessria. Com passar do tempo,
essa simples observao resultou em uma maneira de estruturar computadores
como uma serie de abstraes, cada uma acumulando-se quela que lhe precede.
Assim, a complexidade pode ser denominada e sistemas de computao podem ser
projetados de modo estruturado sistemtico.

2.1 Nvel de Arquitetura do Conjunto de Instruo

O nvel da arquitetura do conjunto de instruo (ISA- Instruction Set


Architecture). est posicionado entre o nvel da microarquitetura e o nvel do sistema
operacional, esse nvel foi desenvolvido antes de quaisquer outros nveis e, na
verdade, originalmente era o nico nvel. At hoje no incomum ouvir esse nvel
ser denominado simplesmente. a arquitetura de maquina ou as vezes
incorretamente como linguagem de montagem. O nvel ISA a interface entre
software e o hardware. Embora seja possvel o hardware executar diretamente
programas escritos em C, C++, Java ou alguma outra linguagem de alto nvel, no
seria uma boa idia. A vantagem em desempenho da compilao em relao a
interpretao seria perdida. Alem do mais, para ter muita utilidade prtica, a maioria

8
dos computadores deve ser capaz de executar programas escritos. Tanenbaum, Ed
2005

A abordagem adotada essencialmente por todos os projetistas de sistema traduzir


programas escritos em vrias linguagens de alto nvel para uma forma intermediaria
comum (o nvel ISA) e construir hardware que possa executar programas de nvel
ISA diretamente. O nvel ISA define a interface entre os compiladores e o hardware.
O ideal que, ao projetar uma nova mquina, os arquitetos conversem com os
escritores de compiladores e tambm com os engenheiros de hardware para
descobrir quais caractersticas cada um deles quer no nvel ISA. Se os escritores de
compiladores quiserem alguma caracterstica que os engenheiros no podem
implementar de modo de modo eficiente em custo ( por exemplo, uma instruo
desvie e processe a folha de pagamento), ela no entre no hardware. Da mesma
forma, se a Tuma do hardware tiver alguma nova caracterstica elegante que queira
acrescentar ( por exemplo, uma memria na qual as palavras cujos endereos so
nmeros primos sejam super-rpidas), mas a turma do software no consegue
imaginar como gerar cdigo para us-la, ele no passara da prancheta. Aps muita
negociao e simulao, surgir uma ISA perfeitamente otimizada para as
linguagens de programao pretendidas, e ser implementada. Agora vamos a triste
realidade. Quando surge nova mquina, a primeira pergunta que todos os clientes
potenciais fazem: Ela compatvel com sua antecessora?. A segunda : Ela pode
executar meu sistema operacional antigo?. A terceira : Ela executar todos os
meus programas de aplicao existentes sem modificao?. Se qualquer uma
dessas repostas for no, os projetistas tero muitas explicaes a dar. raro que
os clientes se disponham a jogar fora todos os seus programas antigos e comear
tudo de novo.

Essa atitude pressiona muito os arquitetos de computadores a manter a mesma ISA


entre modelos, ou ao menos torn-la compatvel com os anteriores. Contudo
totalmente aceitvel que a nova mquina tenha novas instrues e outras
caractersticas que s possam ser exploradas por novo software. Contanto que os
projetistas garantam que a ISA seja compatvel com os modelos anteriores, eles tm
toda a liberdade para fazer o que quiserem como o hardware porque, na verdade,
quase ningum se importa muito com o hardware real (ou nem mesmo sabe o que

9
ele faz). Eles podem passar de um projeto micro programado para execuo direta,
ou adicionar paralelismo ou facilidades superescalares ou qualquer outra coisa que
queiram, contanto que mantenham a compatibilidade com a ISA anterior. A meta
garantir que velhos programas sejam executados na nova mquina. Ento, o desafio
se torna construir mquinas melhores sujeitas as limitaes da compatibilidade.

O que acabamos de dizer no tem a inteno de dar a entender que o projeto da ISA
no importa. Uma boa ISA tem significativas vantagens em relao a uma ruim. Em
particular quando se trata de comparar capacidade computacional bruta com custo.
Se quanto ao mais projetos forem equivalentes, as ISAs podem ser responsveis
por uma diferena de at 25% de desempenho. No obstante, de vez em quando
surge uma nova ISA de uso geral e, em mercados especializados por exemplo,
sistema embutidos ou processadores multimdia com Windows mbile elas ocorrem
com muito mais freqncia. Por conseqncia, importante estender o projeto da
ISA.

O que faz um ISA ser boa? H dois fatores primordiais. Em primeiro lugar, uma boa
ISA deve definir um conjunto de instrues que pode ser implementada com
eficincia em tecnologias atuais e futuras, resultando em projetos efetivos em custo
por varias geraes. Um mau projeto e mais difcil de implementar e pode exigir um
numero muito maior de portas para implementar um processador e mais memria
para executar programas. Alm disso, a execuo pode ser mais lenta porque a ISA
encobre oportunidades de sobrepor operaes, exigindo projetos muito mais
sofisticados para obter desempenho equivalente. Um projeto que aproveita as
peculiaridades de determinada tecnologia pode ter um xito fugaz e produzir uma
nica gerao de implementao efetivas em custo e ento ser ultrapassado por
ISAs mais avanadas. Em segundo lugar, uma boa ISA deve fornecer um alvo claro
para cdigo compilado. Regularidade e completude de uma faixa de opes so
aspectos importantes que nem sempre esto presentes em uma ISA, essas
propriedade so importantes para compilador, que pode ter problemas para escolher
a melhor opo entre alternativas limitadas, em particular quando algumas
alternativas aparentemente obvias no so permitidas pela ISA em resumo, uma v
que a ISA e a interface entre o hardware e o software, ela tem de contentar os

10
projetistas de hardware (fcil de implementar com eficincia) e os projetistas de
software (fcil de gerar bom cdigo para ela).

2.2 Evoluo e desempenho de computadores

Em 1890, o norte americano Hermann Hollerith (1860-1929) HENNESSY


(2003), desenvolve o primeiro computador mecnico. A partir de 1930, comeam as
pesquisas para substituir as partes mecnicas por eltricas. O Mark I, concludo em
1944 por uma equipe liderada por Howard Aiken, o primeiro computador
eletromecnico capaz de efetuar clculos mais complexos sem a interferncia
humana. Ele mede 15 m x 2,5 m e demora 11 segundos para executar um clculo.
Em 1946, surge o Eniac (Electronic Numerical Integrator and Computer), primeiro
computador eletrnico e digital automtico: pesa 30 toneladas, emprega cerca de 18
mil vlvulas e realiza 4.500 clculos por segundo. O Eniac contm a arquitetura
bsica de um computador, empregada at hoje: memria principal (rea de
trabalho), memria auxiliar (onde so armazenados os dados), unidade central de
processamento (o "crebro" da mquina, que executa todas as informaes) e
dispositivos de entrada e sada de dados que atualmente permitem a ligao de
perifricos como monitor, teclado, mouse, scanner, tela, impressora, entre outros. A
inveno do transistor, em 1947, substitui progressivamente as vlvulas,
aumentando a velocidade das mquinas.

2.2.1 Os Computadores Pessoais

O tamanho e o preo dos computadores comeam a diminuir a partir da


dcada de 50. Neste perodo, inicia-se a pesquisa dos circuitos integrados, os chips,
responsveis pela crescente miniaturizao dos equipamentos eletrnicos. Em
1974, a Intel projeta o microprocessador - dispositivo que rene num mesmo chip,
todas as funes do processador central - tecnologia que permite a criao do
computador pessoal, ou microcomputador. O primeiro computador pessoal o Apple
I, inventado em 1976 pelos americanos Steve Jobs e Stephan Wozniak (Steve
Wozniak). Em 1981, a IBM lana o seu PC (Personal Computer), que se torna um
sucesso comercial. O sistema operacional usado o MS-DOS, desenvolvido pela
empresa de softwares Microsoft. Na poca, Bill Gates, o dono da Microsoft,
convence a IBM e as demais companhias a adotarem o sistema operacional de sua

11
empresa. Isso permite que um mesmo programa funcione em micros de diversos
fabricantes. Posteriormente, os PCs passam a usar microprocessadores cada vez
mais potentes: 286, 386SX, 386DX, 486SX, 486DX. O Pentium, que surge nos anos
90, atualmente o processador mais avanado usado em PCs.

O nico micro a fazer frente aos PCs o Macintosh ,HENNESSY (2003), lanado
em 1984, que revoluciona o mercado ao promover o uso de cones e do mouse. No
ano seguinte, a Microsoft lana a interface grfica Windows, adaptando para os PCs
o uso de cones e do mouse. O Windows s alcana sucesso a partir de 90, com a
verso 3.0. A nova verso, lanada em 1995, totaliza 45,8 milhes de usurios
registrados pela Microsoft em dezembro de 1996.

Na dcada de 90 surgem os computadores que, alm do processamento de dados,


renem fax, modem, secretria eletrnica, scanner, acesso Internet e drive para
CD-ROM. Os CDs-ROM, sigla de compact disc read-only memory, criados no incio
da dcada, so discos a laser que armazenam at 650 megabytes, 451 vezes mais
do que um disquete (1,44 megabytes). Alm de armazenar grande quantidade de
texto, o CD-ROM tem capacidade de arquivar fotos, vdeos e animaes. Em 1996
anunciado o lanamento do DVD (digital vdeo disc), que nos prximos anos deve
substituir o CD-ROM e as fitas de videocassete. O DVD um compact-disc com
capacidade de 4,7 gigabytes (cerca de 7 CDs-ROM). Segundo os fabricantes, ter a
capacidade de vdeo de um filme de 135 minutos em padro de compresso MPEG
(tela cheia) e alta qualidade de udio. Ter o mesmo dimetro e espessura dos CDs
atuais, mas ser reproduzido em um driver especfico, que tambm poder ser
ligado televiso. Alguns CDs-ROM so interativos, ou seja, permitem que o usurio
controle, vontade, a navegao pelo seu contedo. Os computadores portteis
(laptops e palmtops), marcas da miniaturizao da tecnologia, tambm se
popularizam nos anos 90.

2.2.2 Inteligncia Artificial

Nesse final de sculo surge um novo ramo na informtica, a inteligncia


artificial, que estuda mtodos de simular o pensamento humano nos computadores
com o objetivo de substituir o homem pela mquina em atividades mecanizadas.
Alguns computadores j funcionam com modelos de raciocnio e comportamento
12
humanos, auxiliando mdicos em diagnsticos, praticando diversos jogos e
compondo msicas. Entre eles est o Deep Blue, computador ultra veloz, com 256
unidades de processamento de dados (o normal uma), fabricado pela IBM aps
cinco anos de pesquisas. Em 1996, o Deep Blue - capaz de analisar 200 milhes de
lances por segundo em um jogo de xadrez - vence uma disputa com o campeo
mundial de xadrez, o russo Garry Kasparov. H tambm o COG, prottipo de rob
que est sendo projetado e construdo pelo Instituto de Tecnologia de Massachusetts
(MIT). Sua forma semelhante do homem: tem cabea, olhos e braos. O rob,
cujo sistema nervoso artificial 64 vezes mais potente do que um Macintosh, ir
simular as fases de crescimento do homem, seus pensamentos e sentimentos.

2.2.3 Impactos na Sociedade

O desenvolvimento da informtica exerce um grande impacto no modo de


produo da sociedade. O computador torna-se uma importante ferramenta de
trabalho, contribuindo para o aumento da produtividade, reduo de custos e
melhoria da qualidade dos produtos. Vrios setores da economia j esto
informatizados, entre os quais a indstria, a pesquisa cientfica, a educao, o
sistema financeiro, as comunicaes e a astronutica. Nas fbricas, os robs
substituem gradativamente a mo de obra humana em trabalhos que envolvem risco
e em atividades mecnicas, como as linhas de produo e montagem. Essa
automao progressiva a causa da eliminao de vrios postos de trabalho como
caixas de banco, telefonistas e datilgrafos, tendncia que conhecida por
desemprego estrutural. Por outro lado, a informtica tambm cria novas categorias
de profissionais, cuja principal caracterstica o domnio das tecnologias da
atualidade. Na pesquisa cientfica, o computador tem possibilitado a simulao de
experincias inviveis na realidade, devido ao alto custo ou periculosidade, como
situaes de temperatura excessiva ou de exploses. Na educao h uma grande
variedade de softwares que ensinam Desenho, Msica ou Gramtica. Os bancos
oferecem um nmero cada vez maior de servios informatizados, como os caixas
eletrnicos e as consultas on-line a partir de um computador pessoal ligado
agncia. Na rea das comunicaes, a internet liga todos os computadores do
mundo. Na astronutica, os satlites artificiais informatizados fazem, entre outras
aplicaes, o mapeamento da atmosfera terrestre e de outros planetas.

13
2.3 Cronologia e marcos evolutivos.

XVII - O francs Blaise Pascal projeta uma calculadora que soma e subtrai e o
alemo Gottfried Wilhelm Leibniz incorpora operaes de multiplicar e dividir
mquina.

XVIII - O francs Joseph Marie Jacquard constri um tear automatizado: cartes


perfurados controlam o movimento da mquina.

1834 - O ingls Charles Babbage projeta a mquina analtica capaz de armazenar


informaes.

1847 - O ingls George Boole estabelece a lgica binria para armazenar


informaes.

1890 - O norte-americano Hermann Hollerith constri o primeiro computador


mecnico.

1924 - Nasce a International Business Machines Corporation (IBM), nos Estados


Unidos.

1938 - O alemo Konrad Zuse faz o primeiro computador eltrico usando a teoria
binria.

1943 - O ingls Alan Turing constri a primeira gerao de computadores modernos,


que utilizam vlvulas.

1944 - O norte-americano Howard Aiken termina o Mark I, o primeiro computador


eletromecnico.

1946 - O Eletronic Numerical Integrator and Computer (Eniac), primeiro computador


eletrnico, criado nos EUA.

1947 - Criao do transistor, substituto da vlvula, que permite mquinas mais


rpidas.

14
1957 - Primeiros modelos de computadores transistorizados chegam ao mercado.

1958 - Criao do chip, circuito integrado que permite a miniaturizao dos


equipamentos eletrnicos.

1969 - Criao da Arpanet, rede de informaes do Departamento de Defesa norte-


americano interligando universidades e empresas, que dar origem Internet.

1974 - A Intel projeta o microprocessador 8080, que origina os microcomputadores.

1975 - Os norte-americanos Bill Gates e Paul Alen fundam a Microsoft.

1976 - Lanamento do Apple I, primeiro microcomputador comercial, inventado por


Steves Jobs e por Steves Woznick.

1981 - A IBM o lana seu microcomputador - o PC - com o sistema operacional MS-


DOS, elaborado pela Microsoft.

1983 - A IBM lana o PC-XT, com disco rgido.

1984 - A National Science Foundation, nos Estados Unidos, cria a Internet, rede
mundial de computadores que conecta governos, universidades e companhias.

1984 -- A Apple lana o Macintosh, primeiro computador a utilizar cones e mouse.

1985 - A Microsoft lana o Windows para o PC, que s obtm sucesso com a verso
3.0 (1990).

1993 - A Intel lana o Pentium.

1998 - A Intel lana o Pentium II.

1999 - A Intel lana o Pentium III.

15
2.4 Evoluo dos sistemas operacionais

Mquinas que no usavam SO

A primeira gerao da computao moderna (1945-1955) no trabalhava com


o conceito de sistema operacional propriamente dito, visto que as operaes eram
setadas atravs de hardware. Por exemplo, chaves, quilmetros de fios e luzes de
aviso como o Eniac. Nesse perodo, era muito comum que a mesma pessoa
projetasse, programasse e utilizasse os computadores. A principal implicao desta
abordagem o fato de que era muito difcil criar rotinas programveis, exigindo
trabalho intenso dos operadores de mquinas.

Programao em Batch

O conceito de sistema operacional apareceu durante a segunda gerao da


computao moderna (1955 - 1965), atravs da programao em Batch. Assim,
vrios comandos j poderiam ser executados em sequncia atravs de cartes
perfurados, eliminando parte do trabalho do operador de terminal. Normalmente, um
programa era composto por um conjunto de cartes inseridos pelo usurio do
sistema, na ordem correta.

Sistemas especficos

Em meados da dcada de 60, os primeiros sistemas operacionais foram


desenvolvidos conforme a evoluo da tecnologia da poca. Contudo, cada mquina
possua seu prprio SO especfico, o que implicava na incompatibilidade de
mainframes distintos. Um dos maiores representantes foi o CTSS, criado pela MIT,
sendo lanado em 1961 para o computador IBM 7090.

Unix, o primeiro sistema operacional moderno

Visando ao problema da incompatibilidade de SOs de mquinas distintas, um


grupo de desenvolvedores da AT&T criaram o Unix em 1969, sendo o primeiro
sistema operacional moderno da computao. possvel afirmar que mais de 90
porcento dos SOs atuais foram influenciados de alguma maneira pelo Unix. Sua
primeira verso foi escrita em linguagem assembly, sendo posteriormente reescrito
16
em C no ano de 1973, linguagem utilizada at os dias de hoje. Este sistema
introduziu conceitos muito importantes para a computao: portabilidade, multi-
usurio, multi-tarefas e compartilhamento de tarefas. Durante a dcada de 70, o
Unix foi distribudo gratuitamente (incluindo seu cdigo fonte) para universidades e
rgos governamentais norte-americanos, o que conferiu muita popularidade a este
sistema. Sua interface era totalmente em modo texto sem interface grfica. Em 1977
foi lanado o BSD, sistema operacional fortemente baseado no Unix, focado
principalmente para a execuo em mquinas especficas de alto desempenho,
como o famoso computador VAX, o qual foi uma referncia de hardware na poca.
Tanto o Unix quanto o BSD, em suas primeiras verses, foram desenvolvidos para o
uso de computadores de grande porte, normalmente em universidades. Contudo,
alguns jovens programadores possuam uma ideia absurda para poca: criar
sistemas operacionais para o uso de pessoas comuns.

Steve Jobs e a Apple

Um dos primeiros a pensar desta forma foi Steve Jobs, fundador da Apple. Desde a
criao de sua empresa, seu principal foco foi a criao de computadores para o dia-
a-dia, incluindo sistemas operacionais fceis de serem operados. O lanamento do
Apple I em 1976, um dos primeiros computadores pessoais, foi um marco na histria
da computao.

Pela primeira vez, um PC continha um teclado fcil de ser utilizado, com uma
mini televiso adaptada como monitor. Assim, conhecimentos avanados de
computao j no eram mais requisitos para se operar um PC. Jobs fez questo de
criar o seu sistema operacional do zero, sem se basear inicialmente no Unix. Nos
anos seguintes, os modelos Apple II e Apple III foram lanados no mercado, um
sucesso de vendas. Suas interfaces grficas eram muito primitivas comparadas com
o padro usado atualmente, mas avanadssimas para a poca. Em meados de
1979, Steve Jobs tomou conhecimento sobre o desenvolvimento de um computador
totalmente inovador pela Xerox Parc. Em uma visita esta empresa, ele ficou
deslumbrado com Xerox Alto, um PC que possua uma interface grfica (GUI)
totalmente revolucionria. Pouco tempo depois, a Apple lanou o Lisa, aproveitando
todas as ideias grficas do computador. No nem preciso dizer que o sucesso foi

17
estrondoso. Cada verso do Apple possua um sistema operacional distinto. Como
se no bastasse, o Apple Machintosh foi lanado em 1984, introduzindo o conceito
de desktop, utilizando cones e pastas para representar programas e arquivos do
modo como conhecemos hoje. Esta mquina acompanhava o revolucionrio e
inovador sistema chamado MAC OS. Seu sucesso foi estrondoso em todo EUA,
principalmente pela vinculao de seu comercial durante a final do Superbowl do
mesmo ano.

Figura: Macintosh

Disponivel no macmagazine.com.br (http://migre.me/9vhLE)

Com o passar dos anos, as novas verses do Macintosh e o do MAC OS j


no eram mais populares como antes, o que fez com que a Apple perdesse bastante
mercado para a Microsoft. No final dos anos 90, o cdigo do Macintosh apresentava
muitos problemas, o que obrigou que um novo plano fosse traado. Em 2001, a
Apple surpreendeu o mundo da informtica, abandonando o seu prprio cdigo e
reescrevendo todo o seu sistema operacional usando o Unix como base. A partir da,
ele passou a se chamar MAC OSX, sistema que continua forte at os dias de hoje.

18
Figura: Mac OSX Sonw Leopard

Disponivel no macmagazine.com.br (http://migre.me/9vhSs)

Bill Gates e a Microsoft

Voltando ao final da dcada de 70, outro jovem programador, chamado Bill


Gates, tambm possua o desejo de revolucionar o mundo da informtica. Em 1975,
ele fundou a Microsoft, empresa que possua como objetivo primrio o
desenvolvimento de software em linguagem BASIC para o computador Altair da IBM.
Com o sucesso dos programas desenvolvidos pela Microsoft, a empresa afirmou
que possua um sistema operacional completo. A IBM se interessou pelo projeto e
ambas as organizaes afirmaram um contrato, em 1979. Entretanto, a Microsoft
estava com srios problemas, pois no possua um sistema operacional de verdade.
A soluo encontrada foi a compra do OS da Seattle Computer Products pelo valor
de $50.000. Muitos o chamam de negcio do sculo, pois a partir de 50 mil dlares,
a Microsoft possui o patrimnio atual avaliado em dezenas de bilhes de dlares.

19
Aps vrias melhorias sobre o sistema comprado, a Microsoft lanou MS-
DOS em 1982 cuja interface era baseada em modo texto, bastante parecida com a
utilizada pelo Unix. Na poca, esse SO no chamou tanta ateno, pois o Apple Lisa
de Steve Jobs j trabalhava com uma interface grfica. Tomando conhecimento
deste problema, Bill Gates fez uma vista a Apple, com o objetivo bsico de conhecer
a empresa. Ao final da visita, Gates convenceu Jobs a ser includo no
desenvolvimento do Macintosh. O objetivo de Gates era maior que isso: copiar a
interface grfica do Machintosh, e foi exatamente isso que aconteceu. No
lanamento do novo PC da Apple, Steve Jobs descobriu que a Microsoft estava
lanando mquinas no Japo, cujas interfaces eram muito parecida com a do seu
computador. Aps a quebra da parceria entre os dois, Gates lanou o Sistema
Operacional Windows 1.0 em 1985, batendo de frente com o MAC OS.

20
21
Windows 3.0 e 3.11

No incio dos anos 90, o mercado de sistemas operacionais sofreu novo boom
com o lanamento do Windows 3.0 (1990) e Windows 3.1(1992). Na sua verso 3.0,
a memria passou a ser gerenciada de maneira muito mais eficiente, incluindo a
melhora substancial na interface grfica. Foi criado um painel de controle e um
gerenciador de arquivos organizado, facilitando todo o trabalho do usurio. Um dos
principais motivos que contriburam para seu sucesso foi o fato do sistema j vir
instalado de fbrica em um grande nmero de mquinas.

O Windows 3.1, incluindo seu service pack 3.11, trouxe melhorias verso
3.0, como uma interface de rede melhor desenvolvida. Em 2 meses de lanamento,
o 3.1 vendeu 3 milhes de cpias.

22
Windows 95, 98 e ME

No ano de 1995, foi lanada no mercado a nova verso deste sistema


operacional, o Windows 95. Esta verso foi to importante para informtica que
acabou definindo o padro com que o desktop organizado, o qual ainda utilizado
no Seven. Por exemplo, podemos citar o boto Start, o menu Iniciar, a barra de
tarefas e o gerenciador de arquivos Windows Explorer. Aps alguns services packs,
esta verso passou a suportar a leitura de dispositivos USB, o navegador internet
explorer, entre outras funcionalidades.

Dando continuidade a seu antecessor, a nova verso deste sistema foi lanada no
ano de 1998, chamada de Windows 98. Apesar de apresentar melhorias em relao
ao 95, o SO era um pouco lento e instvel. Tais problemas s foram arrumados com
o Windows 98 SE (Second Edition), lanado em 1999, que inclua funes
avanadas para compartilhamento de rede, suporte integrado a drivers de DVD-
ROM, entre outras tarefas. O sucessor, Windows Me, lanado em 2000, foi um dos
23
maiores fracassos na questo de sistema operacional, pois era muita instvel.
Possua somente poucas melhoras em relao ao Windows 98 SE. Por isso, logo foi
deixado de lado. Todas as verses apresentadas at aqui usavam o MS-DOS como
ncleo do sistema, ou seja, o Windows funcionava como uma espcie de ambiente
grfico. Com o passar do tempo, o uso desta arquitetura tornou-se insuportvel,
visto que o MS-DOS no conseguia dar conta de processar tantas informaes, o
que ficou evidente no Windows Me.

Windows XP e Vista

Lanado em 2001, o Windows XP tornou-se um marco na histria dos


sistemas operacionais, principalmente por trazer muitos recursos totalmente novos.
Entre eles possvel citar que o sistema tornou-se muito mais seguro, atravs da
diferenciao de permisses entre administradores e usurios comuns. A
estabilidade tambm uma de suas fortes caractersticas, pois o nmero de telas
azuis diminuram consideravelmente.

O principal motivo para todo esse avano uso do ncleo (kernel) NT como base,
que exclui totalmente a necessidade do MS-DOS. Na verdade, o ncleo NT j vem

24
sido usado desde outras verses do Windows lanadas para uso de servidores,
como o Windows NT (1993) e Windows 2000 (2000). Contudo, foi somente no XP
que esta arquitetura foi lanada para o usurio comum. Depois de seis anos de
espera, a Microsoft lana o Windows Vista, em 2007, que foi muito aguardado pelos
usurios. Ao contrrio do XP, esta nova verso desapontou o pblico de uma
maneira geral, principalmente por exigir uma mquina muito potente. Somente em
computadores top de linha possvel observar vantagens no desempenho do Vista,
principalmente pelo suporte a multi-core. Seu grande destaque foram os efeitos
grficos de ltima gerao provido pelo pelo Aero e o Flip 3D. Em 2009 foi lanado
oficialmente o Windows seven, que possui o suporte a multi-core e os efeitos visuais
do Vista, porm consumo de hardware menor. Atualmente est em
desenvolvimento o Windows 8 que trata vrias novidades incluindo ela a excluso
do boto inicar.

Sistemas Operacionais Livres

Apesar de fazer bastante sucesso nos anos 70, o Unix continuou a ser
desenvolvido durante toda esta dcada e a seguinte tambm. No ano de 1983, um
revolucionrio programador chamado Richard Stallman criou o projeto GNU, ele
afirmava que os softwares deveriam ser desenvolvidos de maneira livre, sem
25
restries na leitura ou modificao de seus cdigos fontes. Em 1984, o MIT
desenvolveu o X Window System, que como o seu nome diz, um sistema grfico
de Janelas para o Unix. Ele permaneceu proprietrio at 1987, quando uma verso
opensource foi lanada, sendo incorporada no desenvolvimento deste sistema
operacional. Um dos principais objetivos da GNU sempre foi desenvolver a sua
prpria verso do Unix, atravs de um Kernel prprio, chamado de GNU Hurd.
Contudo, este ncleo possua muitas falhas de sistema, comprometeu muito o seu
desenvolvimento.

O kernel Linux

Visando estas falhas, um programador chamado Linus Torvalds estava


desenvolvendo outro kernel para o GNU, chamado de Linux, em. Em seu primeiro
lanamento oficial (1991), na verso 0.2, o Linux j possua mais funcionalidades
que o GNU, o que atraiu bastantes desenvolvedores. Pouco tempo depois, o ncleo
criado por Torvalds j era o sistema GNU mais usado do mundo. Alm disso, os
26
programadores eram e ainda so livres para utilizar o kernel Linux em seus prprios
sistemas, o que acabou gerando as famosas distribuies como conhecemos hoje .
As primeiras ficaram conhecidas como Debian e Slackware, ambas lanadas no
Ano de 1993. No incio, eram difceis de serem utilizadas, comparadas com os
Windows 3.11 e 95, pois exigiam um conhecimento profundo de computao por
parte dos usurios.

Com o tempo, as distribuies Linux foram se tornando cada vez mais fceis de
serem utilizadas, principalmente para atrair o usurio comum do computador.
Atualmente, utilizar este sistema to fcil quanto o Windows, principalmente em
distribuies como o Ubuntu.

27
2.5 Arquiteturas Risc e Cisc

A arquitetura RISC foi tratada de modo abrangente e agressivo no final da


dcada de 80. Seus defensores diziam que os microprocessadores com um conjunto
reduzido de instrues logo apareceriam dentro dos processadores Intel x86. At
agora, a RISC ainda no colocou os ps seguramente no mercado de computadores
pessoais. H alguma razo para prever mudanas em breve? A resposta sim e
no, mas principalmente no. Primeiro, os chamados microprocessadores RISC no
apresentam, de fato, grandes benefcios na performance se comparados com os
microprocessadores denominados CISC (Complex Instruction Set Computing).
Essas vantagens tericas foram muito ressaltadas a princpio. Um conjunto de
instrues menor e mais rpido, por exemplo, tambm requer que mais instrues
sejam executadas. Alm disso, estratgias como conjuntos mltiplos de
registradores e pipelining (encadeamento) no esto diretamente relacionadas a
conjuntos reduzidos de instrues. Os projetos tradicionais dos processadores x86
poderiam empregar as mesmas estratgias. Na verdade, os tais microprocessadores
RISC no chegam perto dos projetos verdadeiramente RISC. Eles possuem
conjuntos de instrues relativamente grandes e complexos, se comparados com
conceitos RISC "puros". Eles seriam descritos mais precisamente com a expresso
influenciado pela arquitetura RISC. O resultado prtico de todos esses fatos que
os processadores x86 da Intel e de um nmero cada vez maior de concorrentes,
como a Advanced Micro Devices (AMD) e a Cyrix, conseguiram garantir sua posio
contra os novos projetos influenciados pela arquitetura RISC. A segunda razo a
falta de compatibilidade com verses anteriores. Os usurios simplesmente no
querem abrir mo de tudo que j possuem. O sucesso do Windows 3.0 da Microsoft
e do OS/2 2.0 ilustra bem essa ideia. Nem o Windows 1.x ou 2.x e nem o OS/2 1.x
foram bem sucedidos. As primeiras verses de ambos os pacotes sofriam do mesmo
mal: incapacidade para rodar aplicativos que os usurios j possuam. Mas
conseguiram chegar ao sucesso com a introduo de uma verso capaz de rodar
tambm aplicativos antigos.
A arquitetura RISC possui o mesmo problema fundamental que o Windows e
o OS/2 apresentavam: os sistemas no rodam de modo adequado os programas
que os usurios j possuem. Mas a compatibilidade com verses anteriores

28
existente no Windows e no OS/2 poderia ser corrigida. Os sistemas baseados em
RISC nunca sero capazes de rodar software desenvolvidos para a arquitetura x86
to bem quanto os sistemas para os quais esses aplicativos foram originalmente
projetados.

Isso significa que os microprocessadores influenciados pela arquitetura RISC nunca


podero desafiar com sucesso o x86 no campo dos PCs de mesa? No. A medida
que as ferramentas baseadas em objetos e o desenvolvimento voltado para
plataformas diferentes tornam-se mais comuns, fica mais fcil oferecer verses de
software para a arquitetura RISC, podendo esta desafiar com sucesso a arquitetura
x86 no campo dos PCs de mesa.

2.5.1 CISC E RISC: Qual a diferena?


A tecnologia RISC (Reduced Instruction Set Computing) foi desenvolvida pela
IBM nos anos 70 e o primeiro chip surgiu em 1980. Sua proposta baseou-se em um
conjunto reduzido de instrues, sendo definidas apenas as mais frequentemente
utilizadas e se evitando o uso de microcdigos. As instrues tambm seriam
simplificadas, trabalhando com apenas um operando. As operaes enfatizavam o
uso de registradores, sendo o acesso memria limitado a instrues tipo
load/store. Assim, o processador gastaria apenas um ciclo por instruo. Porm, o
que sucedeu no foi to simples assim, pois havia muita dificuldade em se escrever
programas complexos utilizando um conjunto muito reduzido de instrues. Ento
este conjunto foi incrementado com novas instrues, como as necessrias para
trabalhar com memria virtual, multiprocessamento e assim por diante. A tecnologia
RISC comeou a ser promovida no mercado com o surgimento das estaes de
trabalho cientficas, pois sua atividade bsica "CPU bound". Os chips CISC
(Complex Instrution Set Computing) de aplicao mais geral, tpicas de ambientes
comerciais, no ofereciam a velocidade necessria aos trabalhos com extensas
manipulao de nmeros e visualizao grfica. Em ambiente comercial, por seu
lado, necessrio considerar todo o conjunto que compe o sistema, como CPU,
memria, velocidade de discos, sistema operacional e software de aplicao.
Uma comparao apenas a nvel de processador e sua tcnica no correta. Muitos
dos fatores que aumentam a velocidade de um processador RISC, no so

29
inerentes a esta tecnologia (como uso de cache, pipeline de instrues e grande
nmero de registradores na CPU), sendo que estes recursos esto disponveis a
qualquer projeto de computador, sendo usados tambm em mquinas CISC.
A anlise dos processadores do mercado mostra que nos aspectos de mips ou
operaes aritmticas com nmeros inteiros (SPEC Integer), o desempenho dos
chips RISC e CISC so similares; em ponto flutuante (SPEC Floating Point) os
RISC tendem a apresentar resultados melhores, embora o Pentium lhes seja
equivalente.

2.5.2. Diminui a diferena


Cada vez mais as tecnologias RISC e CISC esto se aproximando:
processadores RISC esto aumentando seu conjunto de instrues e os CISC esto
adotando tcnicas originalmente implementadas nos RISC. Por exemplo, o nmero
de ciclos por instruo bastante similar em ambos. O resultado prtico que o
"path length" destes processadores para executar uma tarefa praticamente igual.
As razes para isso so simples. Em aplicaes comerciais, a CPU trabalha cerca
de 30% do tempo com instrues de movimentao de cadeias de caracteres de um
lugar a outro na memria; em programao Cobol interessante dispor de
instrues de aritmtica decimal e trabalhar com operandos "no alinhados". Desta
forma, ser necessrio adicionar-se instrues tipicamente CISC para trabalhar
adequadamente com estas tarefas. O Pentium, segundo a Intel, utiliza tecnologia
CRISC, acoplamento das duas tcnicas. Na verdade algumas mquinas RISC
utilizam poucas de suas tcnicas bsicas, ao mesmo tempo que implementam
conceitos tpicos dos projetos CISC; entretanto, adotam o jargo RISC por questo
de marketing. Um ambiente comercial caracterizado por processamento
transacional, com muita manipulao de cadeias e inteiros alm de alto fluxo de
entrada/sada. J o cientfico se caracteriza por grande nmero de instrues de
ponto flutuante. A concluso lgica que as mquinas dos dois tipos tm diferentes
concepes para diferentes utilizaes.

30
2.5.3 Coexistncia pacfica
Agora que se estreitou a diferena entre o desempenho das arquiteturas
RISC e CISC, a seleo de uma plataforma depende de fatores como viabilidade de
custos, arquitetura do bus, suporte a perifricos, ambiente operacional, suporte a
softwares e custos de manuteno. A partir de agora examinaremos as razes da
convergncia destas tecnologias de processadores, analisando as tendncias atuais
e identificando quais plataformas especficas iro sobreviver em uma poca de
aumento de competitividade e reduo da diferenciao de produtos a nvel do
processador. As workstations e PCs mais antigos baseavam-se em arquiteturas de
processadores CISC (complex instruction set computing). Porm, nos ltimos anos o
mercado tornou-se estratificado. Workstations avanadas baseadas em
processadores RISC (reduced instruction set computing) ganharam grande espao
por oferecerem desempenho superior. Neste meio tempo, as plataformas baseadas
em CISC (especialmente aquelas baseadas nos microprocessadores Intel x86 e na
srie 68000 da Motorola) continuaram a dominar as faixas de mdio e baixo
desempenho devido aos baixos custos e disponibilidade de uma extensa base de
aplicativos.
Mais recentemente, houve um aumento do desempenho da plataforma CISC,
medida que os projetistas lanaram mo de algumas estratgias RISC, tais como
pipelining, on-chip cache (cache no chip) e wide-instruction buses (barramentos de
largas instrues) e desde que se tornaram disponveis os sistemas operacionais de
32 bits e compiladores otimizadores para este tipo de plataforma. Ao mesmo tempo,
os custos das plataformas RISC caram devido ao aumento da competio no
mercado, padronizao, disponibilidade de vrias fontes para alguns chips, as
economias de escala viabilizadas pelos grandes mercados e avanos na tecnologia
de semicondutores.
Hoje, porm, as consideraes na escolha entre as plataformas RISC e CISC no
diferem muito. Com exceo dos nveis extremos de desempenho para cima e para
baixo, a escolha de uma plataforma depende hoje de fatores tais como: ter um custo
vivel, arquitetura de bus, suporte a perifricos, ambiente operacional, suporte a
softwares e custos de manuteno. Com tanta sobreposio entre a capacidade (e
custos) das plataformas RISC e CISC, a arquitetura do processador deixa de ser
uma considerao importante para o usurio final.

31
2.5.4 Arquitetura CISC versus RISC
As plataformas baseadas em CISC (como as que utilizam os
microprocessadores x86 da Intel e a srie 68000 da Motorola) ainda dominam o
grupo de microcomputadores e superam as workstations RISC. Isto devido s
plataformas CISC custarem menos e oferecerem uma base muito maior de suporte
de softwares. O nmero de pacotes de software para os PCs da IBM e seus
compatveis supera aqueles para as workstations UNIX mais utilizadas, e tem
tambm um custo muito menor, devido s economias de escala e ao aumento da
competio. Comparado aos processadores RISC, os chips CISC so
caracterizados por possuir conjuntos maiores de instrues (de algumas dzias a
algumas centenas de instrues). Se considerarmos tambm os conjuntos de
instrues dos processadores mais recentes e de maior potncia da mesma famlia
(por exemplo o Pentium 200 MHz da Intel versus o 88088 da Motorola) verificaremos
que os mesmos so super conjuntos se comparados a seus antecessores. Isto
significa que softwares aplicativos mais antigos geralmente operaro em
equipamentos que utilizem processadores da mesma famlia. Um novo software
pode ser criado para que utilize ou o conjunto de instrues do processador mais
antigo (8088 no caso dos PCs IBM e seus compatveis) ou defaults do mesmo se um
conjunto de instrues de mais alto nvel no estiver disponvel. Porm, existe uma
tendncia de criarem softwares que no operam em toda a base de PCs instalada.
Isto porque os equipamentos mais antigos no possuem os recursos de sistema (por
exemplo, resoluo do monitor e capacidade de memria) necessrios para rodar os
atuais softwares grficos ou orientados para redes. Mesmo quando os recursos
destes equipamentos so adequados, a exigncia do software para lidar com todas
as deferentes configuraes de equipamento e com o conjunto de instrues
necessariamente diminuiria o seu desempenho. Esta tendncia deve continuar com
a emergncia dos sistemas operacionais realmente de 32 bits que podem explorar
as potentes instrues de 64 bits dos mais novos processadores CISC. Nos
processadores CISC, a lgica para a maioria das instrues, com exceo das mais
primitivas (shift, add, etc...), guardada em microcdigo no processador, enquanto
que para o processador RISC, fornecida por software. Considere, por exemplo,
uma operao de multiplicao. A maioria dos chips CISC possui como parte de seu
32
conjunto de instrues uma instruo de multiplicao (por exemplo, MUL ou IMUL
para a srie x86). Porm um chip RISC pode no possuir esta operao de
multiplicao, devendo a mesma ser feita por uma seqncia de instrues
primrias como "adds" e "shifts". Os microprocessadores RISC (como aqueles
utilizados nas workstations da Sun Microsystems) so baseados em um pequeno
conjunto de instrues bastante bsicas. A maioria das instrues de alto nvel que
esto embutidas nos processadores CISC teriam que ser escritas como algoritmos
de software. Mas os processadores RISC possuem a vantagem que com seus
conjuntos de instrues menores possibilitam a decodificao e execuo das
instrues muito mais rapidamente do que seria possvel ao processador CISC.
Todas as instrues RISC tambm geralmente possuem palavras do mesmo
tamanho e esto restritas a dois operandos, enquanto que o conjunto de instrues
do processador CISC normalmente inclui instrues de 8, 16 e 32 bits e muitas
operaes necessitam de mais de dois operandos. Ainda mais uma vantagem dos
processadores RISC que suas instrues pegam seus operandos somente dos
registradores. Os operandos so transferidos da memria para os registradores
embutidos no processador com instrues separadas. Estas instrues no fazem
nada mais que carregar os registradores e guardar seu contedo na memria. Por
esta razo, muitas vezes os processadores RISC so conhecidos como
processadores load/store. Esta caracterstica simplifica a lgica de controle do
processador e elimina muito do overhead e da complexidade associada aos
processadores CISC.
Um microprocessador consiste em uma unidade aritmtica e lgica,
registradores multiuso e registradores dedicados tais como o contador do programa.
Porm, necessita tambm de um tipo de unidade de controle para decodificar as
instrues e direcion-las para o caminho a ser percorrido, afim de que o
processamento ocorra de acordo com as instrues. Em um processador CISC, a
unidade de controle tem que decodificar tantas instrues e realizar tantas
operaes que normalmente ela um outro processador. Os processadores RISC
por outro lado possuem conjuntos de operaes muito mais simples e podem
geralmente utilizar um controlador HARDWIRED menos complexo. Um ponto
controverso no debate entre CISC x RISC envolve o desenho do compilador. Os que
advogam para o CISC argumentam que a disponibilidade de instrues de alto nvel

33
e a habilidade de especificar mltiplos operandos baseados na memria simplifica o
desenho do compilador. Porm, a questo mais importante qual a arquitetura
que melhora o desenho do compilador (permite que seja feito um compilador
otimizador mais efetivo, que por sua vez, ir produzir cdigos de execuo mais
rpidos). Aparentemente o acesso do software a funes mais primrias embutidas
no RISC (por exemplo, instrues de acesso memria separadas) mais a
padronizao das instrues RISC (com um comprimento de palavra padro, menos
variveis e menos instrues) facilitaria o desenho de um compilador otimizador.
Como verificaremos mais tarde, estas vantagens do RISC se tornaro bastante
significativas com o crescente paralelismo onde o software deve ser otimizado (pela
reordenao das operaes se necessrio) para lidar com vrios processadores
executando instrues simultaneamente em um mesmo chip.
Teoricamente nem os processadores CISC nem os RISC possuem uma vantagem
de desempenho inerente ou superior a nvel do sistema. Essencialmente existe um
compromisso entre software e hardware, com o CISC desempenhando mais
operaes no hardware e o RISC sendo mais intensivo no software. Portanto, a
relativa atrao a uma das abordagens vai depender do progresso tecnolgico em
curso para hardware e software. Tanto o CISC como o RISC so casos especiais de
arquitetura na qual os operandos so guardados em registradores multiuso,
permitindo rpido acesso a registradores especficos. Os processadores mais
antigos utilizavam arquiteturas baseadas em pilha (stack) e acumulador. Por
exemplo, o 6502 (utilizado no computador Apple II) possua uma arquitetura baseada
em acumulador, assim como vrios chips de calculadoras de mo. As arquiteturas
stack eram largamente utilizadas em aplicaes (tais como aquelas baseadas na
linguagem de programao Forth) onde os operandos eram acessados em uma
sequncia j fixa e o primeiro operando a ser acessado era o ltimo a ser colocado
no stack. Ambas as arquiteturas RISC e CISC no so novas. Ambas eram
utilizadas em mainframes e minicomputadores antes de serem introduzidas nas
plataformas baseadas em microprocessadores. A arquitetura RISC foi desenvolvida
em 1983 pela Hewlett - Packard, mas era originalmente uma implementao em
mltiplos chips para superminicomputadores. Os chips RISC foram introduzidos nas
workstations tcnicas UNIX no final dos anos 80. O progresso da tecnologia de
semicondutores tornou a arquitetura RISC plausvel e de custo vivel para as

34
workstations. Uma litografia mais densa nos chips (por exemplo, mais transistores
por chips) e wafers mais largos (mais chips por wafers) aumentaram o desempenho
e a capacidade, enquanto abaixavam os custos dos chips de memria: e a
arquitetura RISC intensiva em memria. Acessos lentos memria se tornariam
um gargalo no desempenho de um processador RISC.
Estes mesmos avanos na tecnologia de semicondutores tornaram possvel a
colocao de mais circuitos no prprio chip RISC. Como resultado, a maioria dos
chips RISC possui um gerenciador de memria embutido para dar suporte ao
modelo de paginao por demanda, empregado na maioria das verses UNIX. No
somente as RAMs dinmicas como tambm as RAMs estticas tornaram-se mais
rpidas, densas e baratas. As SRAMs so por si s mais rpidas do que as DRAMs
porque elas evitam o ciclo de resfriamento das verses dinmicas. Isto permitiu que
utilizassem estratgias de cache, nas quais uma pequena quantidade de memria
SRAM suporta uma grande quantidade de DRAMs mais lentas a fim de aumentar a
velocidade de acesso memria. Inicialmente as SRAMs para os processadores
RISC ficavam alojadas em chips separados, mas os mais recentes avanos da
tecnologia tornaram possvel incluir a SRAM no prprio chip do processador,
minimizando atrasos de propagao e permitindo cache das instrues, como se isto
j fosse inerente arquitetura do processador.

2.5.5 Arquiteturas de Pipeline


Alm das j debatidas, a maioria das vantagens associadas aos
processadores RISC, na realidade, advm de outras inovaes em arquitetura que
so possibilitadas por ela, e no pelo prprio nmero reduzido de instrues. A mais
importante destas estratgias o pipelining, apesar da memria cache embutida no
chip tambm contribuir substancialmente para o desempenho como um todo.
Pipelining a extenso de uma ideia conhecida como "prefetch", na qual a prxima
instruo a ser processada carregada da memria e decodificada ao mesmo
tempo em que se executa a instruo que est sendo processada. Um processador
completamente pipelined utiliza a mesma estratgia de uma linha de montagem de
automveis (na qual vrios veculos em vrios estgios de montagem so
trabalhados simultaneamente, porm cada um em uma operao especfica
diferente, a serem efetuadas em cada carro por vez). Portanto um pipeline de cinco
35
estgios pode trabalhar com cinco instrues ao mesmo tempo. Enquanto a primeira
instruo tem seus resultados guardados nos registradores de destino, a segunda
pode estar executando uma operao aritmtica, por exemplo. Aps o pipeline ter
sido preenchido inicialmente, a demora para completar as instrues meramente o
tempo de uma operao (idealmente um ciclo de clock). ao invs do tempo
necessrio para que todas as operaes fossem processadas em sequncia. A
operao de um pipeline RISC hipottico de cinco estgios, est ilustrado no
diagrama de tempo do Quadro 1. As instrues passam pelo pipeline da esquerda
para a direita e so executadas em uma sequncia de cinco estgios de um ciclo. O
tempo medido de cima para baixo do diagrama em termos de ciclos que iro
sendo completados.

No primeiro estgio, o processador pega um instruo da memria e a


transfere para o registrador de instrues conforme indicado pelo contador do
programa. No segundo estgio, as instrues decodificadas so movidas dos
registradores e colocadas nos "source bus" como direcionado pela lgica de controle
do processador. No terceiro estgio, a unidade aritmtica e lgica (UAL executa a
operao por exemplo uma adio) utilizando o operando em seu "source bus". No
quarto estgio, dados adicionais so carregados da memria ou do registrador
36
temporrio. De certa maneira, este um segundo estgio de execuo para aquelas
operaes que no foram completadas em um nico ciclo (devido preciso
expandida ou operandos adicionais). Finalmente no quinto estgio, os resultados
so transferidos dos buses de sada da UAL aos registradores de destino. No
pipeline do Quadro 1, cada instruo leva um total de cinco ciclos para completar
sua execuo. Mas medida que as instrues se movem passo a passo atravs do
pipeline e so executadas em paralelo, uma nova instruo completada a cada um
dos ciclos. Desta maneira, cinco instrues podem ser completadas em somente
nove ciclos do relgio, opondo-se aos 25 ciclos que seriam necessrios se elas
fossem executadas separadamente em um processador que no fosse pipelined. O
tempo que os quatro ciclos iniciais requerem para preencher o pipeline conhecido
como latncia do processador. Em geral, pipelines mais longos oferecem menor
granulao e, portanto, um processamento mais rpido, porm possuem uma
latncia mais alta. Uma exigncia importante da arquitetura pipelined, que para
colher os benefcios da mesma, as instrues enviadas ao pipeline, em qualquer
momento, devem ser independentes. Se uma das instrues necessita do resultado
de outra como seu operando (input), ento estas duas instrues devem ser
separadas de maneira a nunca estarem no mesmo pipeline simultaneamente, seno
haver travamento do pipeline. A segunda instruo teria que esperar at que a
primeira completasse e gravasse todas as suas operaes nos registradores de
destino. Entretanto, os processadores pipelined no podem oferecer uma
performance alm daquela de uma arquitetura comparvel no-pipelened, a menos
que o compilador (e/ou o programador) tenha evitado tais dependncias entre as
instrues. Esta outra razo pela qual desenhar um compilador otimizado para
processadores pipelined (e para outras arquiteturas complexas que exploram o
paralelismo), pode ser considerada uma tarefa desafiadora. Por estas e outras
razes, o desenvolvimento do software tendeu a se atrasar em relao aos rpidos
melhoramentos na performance do hardware. Tambm os sistemas operacionais
mais antigos e a maioria dos pacotes de aplicaes falharam em explorar por
completo o potencial das novas plataformas baseadas em RISC. Os processadores
CISC j se utilizam h bastante tempo da estratgia prefetch, porm no se
imaginava possvel um pipelining completo nestes processadores porque eles no
possuam o pequeno conjunto de instrues simplificadas do RISC. Portanto no

37
haveria um conjunto fixo de operaes comuns a todas as instrues. claro que
todas as mesmas necessitam de um operando, mesmo com a utilizao da
estratgia de prefetch. Diferentemente dos processadores RISC, os CISC tambm
no utilizavam de uma estratgia load/store uniforme para todas as instrues.
Contudo, os ltimos processadores CISC (por exemplo, o Intel Pentium e o 68050
da Motorola) possuem, de fato, pipelines e cache no chip. Isto foi conseguido com
uma arquitetura hbrida, a qual a Intel chamou de CRISC (Complex reduced
instruction set computing). Na unidade de processador matemtico de ponto
flutuante no mesmo chip, algumas instrues so executadas em estilo RISC, sem
microcdigos e em um ciclo do clock. Parece provvel que os futuros processadores
Intel da srie x86 (e seus concorrentes como a Chips and Technologies, Cyrix e
Advance Micro Devices) iro estender esta tcnica adicionando pipelines mais
potentes, expandindo assim a poro RISC de seus conjuntos complexos de
instrues. Em termos de arquitetura, os processadores sero realmente RISC, com
chips CISC embutidos que executaro as excees que no forem prprias para o
pipeline.

2.5.6 Superpipelined versus Superescalar


Enquanto os processos CISC esto somente comeando a se utilizar do
pipeline e cache embutido, os processadores RISC j se utilizam de arquiteturas
ainda mais avanadas e potentes. As arquiteturas que competem entre se no so
mais a RISC e CISC, mas sim a RISC e a CRISC. Estas ltimas empregam
estratgias RISC para aumentar o desempenho. O novo objetivo ser alcanar um
crescente paralelismo e executar mais instrues por ciclos do clock. Duas
arquiteturas, conhecidas como "Superpipelined" e "Superescalar", vem competindo
nos laboratrios de pesquisa. A maioria dos novos chips tem dado nfase
abordagem "Superescalar", apesar de tambm surgirem hbridos destas duas novas
abordagens (muito parecido com a evoluo do CRISC). Os processadores
superpipelined alcanam o paralelismo atravs da extenso do comprimento do
pipeline, decrescendo assim a sua granulao e aumentando o nmero de
instrues executadas por ciclo. Porm, devido a um nmero maior de instrues se
encontrarem simultaneamente dentro do pipeline, problemas com interdependncia
entre as instrues e oscilaes de dados (atrasos cumulativos devido a erros no
38
cache, largura de faixa no bus e outros problemas de acesso a memria), aumentam
o risco de travar o pipeline. Outra causa de possvel travamento a mudana do
fluxo de instrues causado por interrupes e outros saltos ou ramificaes na
lgica do programa. Todos estes problemas podem ocorrer, em teoria, com qualquer
pipeline, mas a sua probabilidade de ocorrncia aumenta substancialmente com o
superpipelining. Um exemplo de um processador RISC superpipelined o R5000
desenhado pela MIPS Computer (integrante da Silicon Graphics), que se utiliza de
um pipeline de oito estgios. Os processadores RISC mais simples se utilizam de
um pipeline de cinco estgios, portanto este pipeline mais longo do R5500 significa
uma estratgia de arquitetura superpipelined. Uma arquitetura superescalar aumenta
o paralelismo por operar vrios processadores pipelined separados
simultaneamente. Esta estratgia e seus benefcios iro alm da mera utilizao de
processadores adicionais (como a utilizao de chip coprocessador matemtico
separado nos PCs). Em uma verdadeira arquitetura superescalar, as operaes
ocorrem ao mesmo tempo em todos os processadores aumentando o nmero de
instrues executadas por ciclo. Atualmente, isto significa que individualmente os
processadores pipelined deveriam estar em um mesmo chip (para minimizar atrasos
de propagao), que todos os buses e acessos memria deveriam ser "cached"
(para favorecer a reduo dos atrasos), e que os buses deveriam ser largos o
suficiente para acomodar simultaneamente vrias instrues. Um exemplo de um
verdadeiro processador superescalar o chip utilizado para as workstations IBM
RS/6000. Este chip possui trs sees principais: um processador de inteiros (FXU),
uma unidade de ponto flutuante (FPU) e uma unidade cache de instrues (ICU). A
ICU carrega duas instrues ao mesmo tempo da memria atravs de seu cache de
instrues. Os caminhos do bus para/da ICU tm a largura de duas palavras. Desta
maneira a ICU pode alimentar simultaneamente os pipelines da FXU e da FPU com
as novas instrues. A arquitetura superescalar do processador RS/6000 a base
do chip PowerPC, desenvolvido em conjunto pela IBM, Apple e Motorola. O objetivo
desta aliana desenvolver a estratgia para a prxima gerao de plataformas
workstations, com desempenho superior ao dos existentes IBM PS/2 e Macintosh da
Apple. As tendncias da tecnologia de semicondutores em grande parte determinam
as estratgias de arquitetura que sero mais eficazes nos microprocessadores. Se
as velocidades dos chips semicondutores estivessem crescendo mais que sua

39
densidade de circuitos, no haveria justificativa em arriscar oscilaes do clock e os
problemas resultantes para o compilador em arquiteturas avanadas de pipeline.
Poderamos simplesmente aumentar a freqncia do clock de um processador mais
simples. O PA (Precision Architecture) da Hewlett-Packard, no se utiliza nem das
tcnicas, de superpipelining, nem de superescalar. somente uma bem projetada
CPU pipelined com uma freqncia alta de clock. Porm, as novas verses do RISC
PA incluem um processador de ponto flutuante no mesmo chip a fim de competir
com outros chips que oferecem este recurso. Portanto, assim como o chip 486 da
Intel que tambm possui um processador de ponto flutuante no mesmo chip que a
unidade de processamento de inteiros, poderamos argumentar que ele
superescalar. O ponto que com a experincia desta empresa como pioneira no
projeto de chips RISC e como fabricante de chips de alta velocidade utilizados em
instrumentos de medies, a HP no necessitou imediatamente dos benefcios de
aumento de desempenho utilizados nas arquiteturas mais recentes.
Matematicamente os processadores superpipelined e superescalar so duplicaes
um do outro, portanto nenhum oferece uma vantagem de desempenho mensurvel
sobre o outro. Ambos alcanam o paralelismo (permitir que duas instrues sejam
processadas simultaneamente) utilizando-se de circuitos altamente densos,
possveis graas aos chips semicondutores de litografia submecron. Uma razo
primria para a aceitao mais rpida das arquiteturas superescalar em relao a
superpipelined a sua modularidade. Com a arquitetura superescalar, os vrios
componentes (por exemplo, o processador de inteiros e o de ponto flutuante) podem
ser projetados como clulas-padro e podem ser utilizados em vrias combinaes
para chips especficos. Assim sendo, a Intel oferece verses do 486 com o
coprocessador matemtico desativado. Tambm poderiam oferecer uma verso que
inclui somente o processador de inteiros, com o processador matemtico em um
chip separado. Da mesma maneira, o RISC PA da HP encontra-se disponvel em
verses de um ou dois chips. Claramente a modularidade das arquiteturas
superescalar permite uma maior customizao dos microprocessadores a fim de se
adaptarem s diversas estratgias de marketing. Para os futuros chips de
computao de alta performance e multiuso pode-se tambm equilibrar o uso das
estratgias RISC e CISC. Os chips Alpha combinam tanto as tcnicas de pipelining
como de superescalar, ainda assim eles no utilizam ambos os tipos de arquitetura

40
aos limites extremos, onde os problemas de oscilao e do compilador poderiam se
tornar excessivos. Esta srie de processadores procura cobrir um grande espectro
de plataformas de computadores, desde workstations at supercomputadores.Um
diagrama de bloco do chip Alpha mostrado no Quadro 2 a seguir. Possui um
pipeline de nmeros inteiros de sete estgios e um pipeline de ponto flutuante de
dez estgios, cada um com tempo de ciclo de 5ns (para a verso de 200 MHz). Os
acessos memria se ramificam na interface do bus e so aceleradas por um cache
de instruo e um de dados de, ambos de 8 KB. Instrues duplas (duas instrues
por clock) so ento alimentadas via unidade de controle central para as unidades
de execuo de inteiros e de ponto flutuante. Os operandos so guardados nos
arquivos de registradores de ponto flutuante e inteiros. As operaes de load/store
so feitas pela unidade de endereamento.

A verso inicial dos processadores da srie Alpha so chamados de chips


21064. Foram implementados com a tecnologia CMOS submicron (Complementary
Metal-Oxide System) e encontram-se em verses com freqncia de clock de 150 a
200 MHz. Possuem uma arquitetura de 64 bits para os inteiros e de ponto flutuante.
Foi projetado para trabalhar como uma mquina load/store de 64 bits e com
instrues de 32 bits de comprimento fixo. Os tipos de dados manuseados incluem
os inteiros de 8, 16, 32 e 64 bits e os formatos de ponto flutuante de 32 e 64 bits
(Digital ou IEEE). Uma caracterstica chamada PAL (Privileged Architecture Library)

41
suporta estruturas complexas do sistema operacional tais como mudana de
contexto e gerenciamento da memria. Isto torna a arquitetura mais flexvel e
poderia eventualmente permitir o uso de vrios sistemas operacionais. (Open VMS,
OS/2, UNIX, etc).

42
2.6 Unidade Lgica e Aritmtica - ULA

A Unidade Lgica e Aritmtica (ULA) um circuito combinatrio responsvel


pela execuo de somas, subtraes e funes lgicas, em um sistema digital. Na
figura 1.1 mostrado um esquema simplificado de uma ULA.

A operao que deve ser executada com os dados de entrada (A e B) determinada


pelos sinais de controle (S) e o resultado obtido na sada (F). A complexidade da
ULA proporcional complexidade do sistema em que ser utilizada; assim,
sistemas simples permitem o uso de ULAs simples e sistemas sofisticados exigem
ULAs sofisticadas. Uma vez estabelecido o porte do sistema, existe tambm o
compromisso entre velocidade e preo. Por exemplo, as calculadoras eletrnicas
exigem ULAs que permitem operaes complexas, porm com velocidade de
operao baixa, reduzindo-se o custo; j os computadores de grande porte exigem
velocidade de operao elevada, aumentando o custo da ULA.

Circuito Integrado 74181 uma ULA de 4 bits

O circuito integrado MSI 74181 uma ULA de 4 bits que tem possibilidade de
executar 16 operaes aritmticas binrias e 16 operaes lgicas. A figura 1.2
apresenta um diagrama simplificado deste circuito integrado.

43
As tabelas I e II a seguir apresentam a descrio dos pinos e as operaes da ULA,
respectivamente.

44
As sadas G e T so os sinais "gerador de vai-um", correspondentes ao bit
mais significativo e, utilizando-se o circuito integrado 74182, look-ahead carry
generator, permitem a expanso da largura da palavra a ser manipulada. As
operaes de subtrao so executadas em complemento de dois (C2). Por
exemplo, (-1) representado por (1111). As operaes lgicas so executadas bit a
bit. Por exemplo, se a operao AND aplicada s entradas A = 1011 e B = 0110,
resulta F = 0010. O resultado de uma operao de comparao apresentado na
sada A = B. Para tanto, deve-se executar a operao A - B - 1 com Cn = 1; se as
duas entradas so iguais, a sada A = B toma o valor 1. Esta sada tem a
configurao open-colector para que seja possvel implementar uma funo wired-
and dentre duas ou mais sadas deste tipo pertencentes a diferentes ULAs, quando
se deseja expandir a largura da palavra a ser manipulada. A sada Cn+4 representa
o sinal de vai-um do ltimo bit da palavra. Ela pode ser usada para propagar o vai-
45
um para o prximo estgio quando no h preocupao com a velocidade do
circuito. O sinal Cn+4 tambm pode ser usado em conjunto com a sada A = B para
indicar as condies A>B e A<B. OBSERVAO: Na realidade, em se tratando de
um circuito combinatrio, a ULA 74181 pode trabalhar com operandos representados
em lgica positiva ou negativa. A Tabela II acima mostra o significado dos bits de
seleo de operaes quando se considera o uso de lgica positiva. Consulte o
manual (datasheet) do componente para o caso do uso de lgica negativa. Nesta
experincia adotaremos a conveno de lgica positiva, portanto desconsidere
eventuais referncias ao uso de lgica negativa nos pinos da ULA no Quartus II.

Um Fluxo de Dados Simples utilizando a ULA 74181

A figura mostra um fluxo de dados simples utilizando o circuito integrado


74181. De uma maneira geral, este circuito encontrado como a base do fluxo de
dados de vrios microprocessadores.

Neste caso, todas as operaes da ULA so executadas entre o contedo do


acumulador (AC) e o contedo da via (DADO). Assim, por exemplo, uma operao
de soma de dois nmeros X + Y executada seguindo-se os seguintes passos:

46
Aps cada passo deve-se gerar um pulso no sinal CLOCK para forar a cpia de
sada da ULA no acumulador. Operaes mais complexas podero ser executadas
com outras sequencias de operaes simples como aquelas relacionadas na Tabela
III. De uma maneira geral, estas operaes simples podem ser classificadas em
operaes lgicas e aritmticas e operaes de transferncia de registradores.

Memria de Acesso Aleatrio 74189 (RAM)

O circuito integrado 74189 uma memria de 64 bits, organizados em 16 palavras


de 4 bits. Os sinais de controle e dados so mostrados na figura 1.4, onde tem-se
que:

D0 a D3 - dado de entrada (4 bits);

A0 a A3 - endereo (4 bits);

_C__E_ - sinal de seleo da pastilha (chip-enable);

_W___E_ - sinal de controle para armazenamento (write-enable);

O_

0 a O_

Sada de dados (4 bits, negada, tri-state);

47
Para realizar uma leitura de uma posio de memria, deve-se primeiro
colocar o endereo nas entradas A0 a A3 e depois colocar o sinal _C__E_ em "0",
mantendo _W___E_ em "1".Para realizar uma escrita em uma posio, alm de
primeiro enderear a palavra e colocar o sinal _C__E_ em "0", deve-se em seguida
colocar o dado a ser escrito nas entradas D0 a D3 e depois gerar um pulso negativo
na entrada _W___E_. A figura 1.5 mostra o diagrama de tempos para um ciclo de
leitura e um de escrita. Consulte o manual do circuito integrado para mais detalhes

48
sobre a sequencia de acionamento de sinais.

importante observar a evoluo que a ALU sofreu ao longo dos anos e quais so
os parmetros que influenciam no desempenho global de um sistema
computacional: Um parmetro importante o tamanho da palavra processada pela
unidade lgica e aritmtica. Como o sistema de numerao adotado nas arquiteturas
de computadores o binrio, o tamanho de palavra dado em nmeros de bits.
Quanto maior o tamanho da palavra manipulada pelo microprocessador, maior o
seu potencial de clculo e maior a preciso das operaes realizadas.

A velocidade de clculo obviamente outro fator de peso para o


desempenho do computador, uma vez que ela ser determinante para o tempo de
resposta de um sistema computacional com respeito execuo de uma dada
aplicao. A velocidade de clculo est diretamente relacionada com a frequncia
do relgio que pilota o circuito da CPU como um todo. Outro parmetro importante
associado ao desempenho do computador a quantidade de operaes que ela
suporta. Por exemplo, os primeiros processadores suportavam um conjunto
relativamente modesto de operaes lgicas e aritmticas. Em particular, no que diz
respeito s operaes aritmticas, os primeiros processadores suportavam apenas
49
operaes de adio e subtrao, sendo que as demais operaes tinham de ser
implementadas atravs de sequncias destas operaes bsicas. Os processadores
suportando um conjunto mais complexo de instrues surgiu de 15 anos para c,
graas adoo da tecnologia CISC (Complex Instruction Set Computer).

A sociedade Intel fundada em 1968, iniciou a fabricao de memrias para


computadores, at que um fabricante de computadores lanou o desafio de construir
uma unidade central de processamento (CPU), num nico circuito para uma
calculadora eletrnica. Assim, foi desenvolvida a CPU 4004 de 4 bits, e logo depois
o 8008. Estes foram as primeiras CPUs integradas num nico chip. A fabricao foi
em pequena escala, pois a empresa no pensou que estas pudessem interessar a
outros fabricantes. Esses chips eram carssimos. Custavam, na poca do seu
lanamento, mais de 1000 dlares. Em funo do sucesso do 8008, a Intel lanou-se
na fabricao de um novo chip que permitisse ultrapassar a barreira dos 16 Kbytes
de memria, limite imposto devido ao nmero de pinos do 8008. Nasceu ento o
8080 (1974), que provocou uma revoluo no que diz respeito indstria dos
computadores. O 8080 foi o primeiro microprocessador a ser usado em larga escala
nos chamados "computadores pessoais". Antes deles, os microcomputadores eram

50
usados apenas em laboratrios cientficos, em fbricas e em universidades. O 8080
popularizou o uso de microcomputadores por pequenas empresas e at para uso
pessoal. Ao mesmo tempo, surgia a indstria do software para microcomputadores,
que criava programas de vrios tipos para serem usados nessas mquinas. Os
microcomputadores dessa poca j tinham teclado, vdeo e impressora. Seus dados
e programas eram gravados normalmente em gravadores de fita K-7 adaptados para
trabalhar com microcomputadores. A INTEL produziu ainda, no final dos anos 70, um
outro microprocessador para substituir o 8080. Chamava-se 8085. Todos esses
microprocessadores (8080, 8085, Z-80, 6502, 6800 e outros) operavam com 8 bits. A
Figura a seguir mostra um dos primeiros microcomputadores brasileiros, o
SCHUMEC M-101/85, lanado em 1981. Tinha um microprocessador INTEL 8085 de
6 MHz, 16 KB de memria e um gravador de fita K-7 para armazenamento de
programas e dados. Seu monitor de vdeo era na verdade uma TV PHILIPS
adaptada, j que nesta poca o Brasil no fabricava monitores.

. Microcomputador SCHUMEC M 101/85

Pouco depois, lanada a primeira CPU em 16 bits, o 8086, concebido no


mesmo esprito do 8080. O prximo passo foi o 8088, que possua a mesma
arquitetura do 8086, mas com um barramento interno de 8 bits e no de 16 como
seu antecessor. Nessa ocasio, a IBM, que o maior fabricante de computadores
em todo o mundo, ainda no fabricava microcomputadores. Seus produtos eram os
computadores de grande porte usados nos grandes centros de processamento de
dados, e custavam alguns milhes de dlares. A IBM decidiu ento entrar no

51
mercado de computadores pessoais. Escolheu ento o microprocessador 8088 para
usar em seu microcomputador, chamado de "IBM Personal Computer", ou
simplesmente, IBM PC. O IBM PC, o primeiro microcomputador de 16 bits, passou
logo a dominar o mercado. At os dias atuais, os modernos microcomputadores so
compatveis com o IBM PC original, lanado em 1981. Este microcomputador tinha
as seguintes caractersticas:

Microprocessador 8088, operando a 4.77 MHz


Monitor de vdeo monocromtico
2 drives de 320 KB
16 KB de memria, possibilitando expanso at 64 KB
Conexo para gravador K-7
Pouco tempo depois, a IBM realizou melhorias no projeto deste microcomputador
e lanou o IBM PC-XT. A sigla "XT" significa "Extended Technology" (Tecnologia
estendida). As caractersticas dos primeiros modelos do IBM PC-XT eram as
seguintes:
Microprocessador 8088, operando a 4.77 MHz
Monitor de vdeo monocromtico ou colorido
2 drives de 360 KB
64 KB de memria, possibilitando expanso at 256 KB
Disco rgido de 10 MB

A grande vantagem do IBM PC-XT em relao ao IBM PC era a possibilidade de


operar com um disco rgido (tambm chamado de winchester) de 10 MB, uma
altssima capacidade para aquela poca. Os microprocessadores 80186 e 80188
foram extenses aos dois chips anteriores, do ponto de vista das E/S. Entretanto,
estes nunca foram chips altamente utilizados. O passo seguinte e natural seria a
passagem para 32 bits, o que foi concretizado com o lanamento do 80386 e
80386SX. Logo aps surgiu o 80486 e que possui, integrados, um coprocessador de
ponto flutuante e um controlador de memria.

52
2.7 Componentes bsicos de um computador

Apesar da existncia de uma grande diversidade em termos de arquiteturas


de computador, pode-se enumerar, num ponto de vista mais genrico os
componentes bsicos desta classe de equipamentos.
A Figura a seguir apresenta um esquema de um computador, destacando os
elementos que o compem. Apesar da grande evoluo ocorrida na rea de
informtica desde o aparecimento dos primeiros computador, o esquema
apresentado na figura pode ser utilizado tanto para descrever um sistema
computacional atual como os computadores da dcada de 40, projetados por
engenheiros como John Von Neuman.

Elementos bsicos do computador

Os principais elementos do computador so:


O processador (ou microprocessador) responsvel pelo tratamento de
informaes armazenadas em memria (programas em cdigo de mquina e
dos dados).
A memria responsvel pela armazenagem dos programas e dos dados.
Perifricos, que so os dispositivos responsveis pelas entradas e sadas de
dados do computador, ou seja, pelas interaes entre o computador e o
mundo externo. Exemplos de perifricos so o monitor, teclados, mouses,
impressoras, etc.
Barramento, que liga todos estes componentes e uma via de alto
desempenho por onde circulam os dados tratados pelo computador.

53
2.8 Memria

2.8.1 Memria Interna


A memria principal, ou memria de trabalho, onde normalmente devem estar
armazenados os programas e dados a serem manipulados pelo processador.
Geralmente esta memria que se referencia na especificao de um
microcomputador. Em termos bsicos, a memria principal vista como um conjunto
de chips que so inseridas na placa me do computador. Pode-se ver na Figura 6
alguns tipos de chips de memria, usados para formar a memria principal de
microcomputadores. Os dois mdulos superiores desta figura so as memrias
utilizadas atualmente. Mais adiante sero apresentadas as tecnologias de memria
e os tipos de empacotamento.

Figura 6. Chips de memria

Os mdulos de memria mais usados nos microcomputadores so os dois


mdulos de memria superiores da Figura 6. O mais superior conectado no
barramento PCI e osegundo no barramento ISA (estes tipos de barramento sero
apresentados mais adiante). Estes mdulos so colocados na placa me, como
apresentado na Figura 7.

Figura 7. Placa Me e suas memrias


54
Tipos de memria
Os chips de memria podem ser divididos em duas grandes categorias: RAM
(memria de leitura e escrita): so chips de memria que podem ser lidos e
gravados pela CPU a qualquer instante. A CPU usa a RAM para armazenar e
executar programas vindos do disco, para ler e gravar os dados que esto sendo
processados. Uma outra caracterstica da RAM, que se trata de uma memria
VOLTIL. Isso significa que quando o computador desligado, todos os seus dados
so apagados. Por essa razo, necessrio que os programas e dados fiquem
gravados no disco, que uma memria PERMANENTE. Existem vrios tipos de
RAM com diversas caractersticas e para diversas aplicaes. A mais conhecida a
DRAM (dinmica) e a SRAM (esttica) e suas evolues. Estes tipos sero
detalhados mais adiante.
Memrias No Volteis: so memrias cujas informaes mantidas no so
perdidas caso o computador seja desligado. Nos microcomputadores, existe um
programa muito importante chamado de BIOS (Basic Input-Output System - Sistema
Bsico de Entrada e Sada). O BIOS tem vrias funes, entre as quais, a de
realizar a "partida" do computador. Quando ligamos o computador, o BIOS realiza a
contagem de memria, faz uma rpida checagem do funcionamento do computador
e realiza a carga do Sistema Operacional que deve estar armazenado no disco. O
BIOS est gravado em uma memria permanente localizada na placa me. Existem
diversos tipos de memria permanente:
ROM: So chips de memria que podem ser lidos pela CPU a qualquer instante,
mas no podem ser gravados pela CPU. Sua gravao feita apenas pelo
fabricante do computador, ou pelo fabricante de memrias. Os dados armazenados
nela j saem prontos de fbrica e so produzidas em larga escala na indstria. A
caracterstica importante de ROM que trata-se de uma memria PERMANENTE.
Seu contedo nunca perdido, mesmo com o computador desligado Portanto este
tipo de memria usada para armazenar programas estticos (que no alteram) e
produzidos em massa. Este tipo de memria foi usado para armazenar o BIOS, que
se localiza na placa-me.
PROM: Significa Programmable ROM, ou seja, ROM programvel. Trata-se de uma
espcie de ROM que produzida apagada. O fabricante pode program-las, ou

55
seja, gravar seu programa. Esta gravao pode ser feita apenas um vez, pois utiliza
um processo irreversvel. Por isso, usa-se o termo queimar a PROM quando se
grava nesta memria.
EPROM: Significa Eraseable PROM, ou seja, uma ROM programvel e apagvel.
Assim como ocorre com a PROM, a EPROM pode ser programada e a partir da,
comporta-se como uma ROM comum, mantendo os dados armazenados mesmo
sem corrente eltrica, e permitindo apenas operaes de leitura. A grande diferena
que a EPROM pode ser apagada com raios ultravioletas de alta potncia.
Possuem uma "janela de vidro", atravs da qual os raios ultravioleta podem incidir
nas operaes de apagamento. Nota-se que essa janela de vidro fica sempre
coberta por um adesivo que tampa a passagem de luz. fcil identificar um chip
EPROM na placa me justamente pela presena desse adesivo.
EEPROM: Significa Electrically Erasable Programmable ROM (EEPROM ou
E2PROM). Esta o tipo de memria ROM mais flexvel, que pode ser o controle de
software. Este o tipo que se usa para armazenar as BIOS atuais. Dessa forma, o
usurio pode realizar atualizaes no BIOS, fornecidas pelo fabricante da placa de
CPU. Quando se ouve falar em flashBIOS ou fazendo um upgrade de BIOS, isto
se refere a reprogramao do BIOS EEPROM com um programa de software
especial.

Memria fora da placa me


Como j mostramos, a placa me contm quase toda a memria de um
microcomputador, mas outras placas tambm podem conter memrias, do tipo RAM
e do tipo ROM. Por exemplo, as placas de vdeo contm uma ROM com o seu
prprio BIOS, e contm uma RAM chamada de memria de vdeo, que armazena os
caracteres e grficos que so mostrados na tela. Podemos ver na Figura 8 os chips
de memria existentes na PLACA DE VDEO de um microcomputador.

56
Figura 8. Placa de vdeo e suas memrias

Tecnologias de memria RAM


Como j apresentado, existem vrios tipos de RAM com diversas
caractersticas e para diversas aplicaes. A mais conhecida a SRAM (esttica) e
as vrias tecnologias DRAM (dinmica).

Memria SRAM
A Static Ram um tipo de RAM que mantm seus dados sem uma
ritualizao externa (refresh), na medida que seus circuitos so alimentados
continuamente. Ao contrrio, as DRAM necessita de pulsos de 15ns para manter seu
contedo, de forma que a energia no fique o tempo todo abastecendo os chip. Esse
pulso peridico o refresh. Toda a memria RAM mais lenta ou mais rpida de
acordo com o tempo de acesso medido em nano-segundos (bilionsimos de
segundo). A SRAM mais rpida que a DRAM. comum hoje encontrar nas
DRAMs 6 a 150ns de tempo de acesso (dependendo da tecnologia DRAM),
enquanto que nas SRAM de at 15ns. Mas ela apresenta algumas fraquezas.
SRAM tem um custo por byte muitas vezes maior que as DRAM. Cada bit da DRAM
necessita de um transistor e de um capacitor (que quando energizado mantm a
carga eltrica se o bit contm um 1 ou sem carga se ele contm um 0). J a
memria SRAM no necessita de refresh, como se a corrente eltrica estivesse o
tempo todo ligada a ela, por meio de interruptores que acionam e fecham a
memria. Assim, o tempo de acesso menor. Mas a sua desvantagem o seu
tamanho, pois requer seis transistores para cada bit. Estas vantagens e
desvantagens mostram claramente que em termos de desempenho as SRAM so
melhores que DRAM. A nica coisa que probe o uso generalizado da memria
SRAM seu custo. Por isto, as SRAMs so usadas basicamente para compor a
memria cache.

Memrias DRAM
Como apresentado, a DRAM um tipo de memria RAM que apenas mantm
os dados se eles so continuamente reforados por um circuito lgico especial
chamado circuito refresh. Devido a esta construo, tambm a ao de leitura

57
refresca os contedos da memria. Se isto no for feito regularmente, ento a
DRAM perder seus contedos, mesmo se a alimentao for mantida. Esta ao de
refrescamento que d o nome a memria de dinmica. Todos os PCs usam DRAM
para constituir sua memria de sistema (em vez de SRAM). A razo simples, elas
so mais baratas e tomam menos espao, tipicamente da rea de silcio das
SRAMs ou menos. Existem vrias espcies de tecnologias de DRAM e as
velocidades que elas fornecem so diferentes.

Os chips de DRAM diferenciam nos seguintes aspectos:


nmero de clulas na memria;
tamanho de cada clula na memria;
tempo de acesso;
encapsulamento;

O nmero de clulas relacionado com a capacidade de armazenamento (ou


posies de memria), existindo chips com 8KB a 16MB de clulas de memria. O
tamanho das clulas de memria o nmero de bits que cada clula armazena.
Existem chips de memria com 1, 4, 8, 9, 32 ou 36 bits. O tempo de acesso, como j
dito, em bilionsimos de segundo, conhecidos como nano-segundos. At o final
dos anos 80, a memria DRAM era feita com o encapsulamento DIP, que tinha que
ser encaixada na placa-me. Logo depois surgiu o encapsulamento SIPP, que deu
lugar, por sua vez, ao encapsulamento SIMM. Veja cada um dos chips abaixo.

Figura 9. Um chip de memria DIP

58
Figura 10. Um mdulo de memria SIPP

Figura 11. Um mdulo de memria SIMM

At hoje os chips de memria que compem as placas adaptadoras so do tipo DIP


(Dual In-Line Package). Com o SIPP (Single In-Line Pin package), surgiu o que
chamado mdulos de memria, que eram vrios chips de DRAM numa fileira de
terminais onde se encaixavam num soquete. Esse tipo de encapsulamento foi
bastante usado at o incio dos anos 90.O SIMM (Single In-Line Memory Module)
surgiu ao redor de 1992. Ela eletricamente igual aos SIPP, possuindo de diferente
apenas a forma de seus contatos para afixao na placa-mes. Podemos dizer que
o SIPP possui perninhas e o SIMM, contatos na borda inferior. Entre 1992 e 1994,
usaram-se muito os mdulos de memria SIMM pequenos, de 30 pinos. Esses
mdulos operavam com 8 bits cada um, necessitando serem usados em grupos.
Ento, para completar um banco de memria num 80386, era necessrio 4 desses
mdulos, pois 4x8bits significa 32 bits, o suficiente para um 80386 ou 80486. Nota-
se que os mdulos de 30 pinos (ou vias) conseguiam compor no mximo 4MB em
um nico mdulo.

Figura 12. Mdulo de memria de 30 vias


59
Figura 13. Combinao para chegar a 32 bits num 486

Mais tarde, surgiram os mdulos SIMM de memria de 72 vias, que um


pouco maior que o de 30, operando a 32 bits, onde os ltimos 486 fabricados
usavam muito (algumas vezes em conjunto com os de 30 vias). Esses mdulos de
memria de 72 vias podem ter at 32MB em um nico mdulo. Como esses
mdulos so de 32 bits, para poder completar um banco num Pentium, que de 64
bits, so necessrios 2 mdulos.

Figura 14. Mdulo de memria de 72 vias:

Figura 15. Combinao para se chegar a 64 bits num Pentium

60
Logo, a partir de 1995, praticamente todas as placas-me passaram a ser
fabricadas com soquetes que suportavam esses mdulos de 72 vias. Em outros
casos, as placas mes podiam possuir ainda um banco de 30 vias e dois bancos de
72 vias, isto , quatro soquetes de 30 vias e 2 soquetes de 72 vias. E em 1997
surgiram as memria no encapsulamento DIMM (Dual In-Line Memory Module), que
um mdulo de memria com um encaixe igual ao do SIMM, mas que de 168
pinos, praticamente o dobro do tamanho de um SIMM. Essa memria de 64 bits.
Assim, para um Pentium, basta um desses mdulos de memria para funcionar.

Figura 16. Mdulo de memria DIMM de 32MB

Asynchronous and Synchronous DRAM


A DRAM convencional, do tipo que era usada nos PCs desde os dias dos IBM
PCs originais, dita ser assncrona. Isto se refere ao fato que a memria no
sincronizada com o relgio do sistema (clock). Um acesso a memria iniciado, e
um certo tempo posterior o valor de memria aparece no barramento. Os sinais no
so coordenados com o clock do sistema. Estas memrias assncronas trabalham
bem com barramentos de memria de baixa velocidade, mas no trabalham bem
com sistemas de memria de alta velocidade (>66MHz).
O novo tipo de DRAM, chamada "synchronous DRAM" ou "SDRAM", sincronizada
com o relgio do sistema, todos os sinais so ligados ao clock de maneira que ela
melhor controlada. Como clock coordenado pela clock da CPU, o tempo de
execuo de comandos e transmisso de dados reduzido. Este tipo de memria
muito mais rpida que a DRAM assncrona e pode ser usada para melhorar o
desempenho do sistema. Portanto as SDRAM so melhores adaptadas aos
sistemas de memria de alta velocidade dos novos PCs.

DDR or SDRAM II
61
Double-data rate SDRAM uma verso mais rpida de SDRAM que capaz
de ler dados na subida e descida do clock do sistema, assim dobrando a taxa de
dados do chip de memria.
Rambus DRAM (Rambus RDRAM)
RDRAM, desenvolvida pela empresa Rambus, uma memria extremamente
rpida e usada como um canal rpido para transmitir dados a velocidades de 10
vezes mais rpidas que as DRAM padres.

2.8.2 Memria Externa


Alm da memria interna (principal), que diretamente acessada pela CPU,
existe tambm a memria secundria (tambm chamada de memria de massa).
Este tipo de memria no acessada diretamente pela CPU. Seu acesso feito
atravs de interfaces ou controladoras especiais. A memria secundria uma
memria do tipo permanente (no se apaga quando o computador est desligado),
que tem uma alta capacidade de armazenamento, e um custo muito mais baixo que
o da memria principal. A memria secundria no formada por chips, e sim, por
dispositivos que utilizam outras tecnologias de armazenamento. A Figura 17
apresenta alguns exemplos de memria secundria: o disco rgido, disquetes, CD-
ROM e fita magntica. O disco rgido, assim como os disquetes e as unidades de
fita, usam a tecnologia magntica para armazenar dados. Os discos CD-ROM usam
tecnologia tica.

Figura 17. Dispositivos de armazenamento secundrio

2.8.2.1 Discos Rgidos


Em termos gerais, um disco rgido usa discos achatados chamados pratos,
revestido no material magntico projetado para armazenar informaes. Os pratos
so montado em uma pilha. Estes pratos (o disco) giram a uma rotao constante
62
(3600 a 7200 rpm) desde que o computador ligado. Dispositivos especiais de
leitura/escrita, chamados de cabeotes, so usados para escrever ou ler
informaes no/do disco, sendo que sua posio no disco controlada por um brao
atuador. Cada prato contm dois cabeotes, um na parte superior do prato e outro
na parte inferior. Assim, um disco rgido com dois pratos tem quatro cabeotes.
Todos os cabeotes so presos a um nico brao atuador, eles no se movem
individualmente. Os discos rgidos e a CPU se comunicam via um conjunto de
circuitos denominados controladora de disco rgido que est geralmente integrada
na placa-me, mas pode ser uma placa independente. Um exemplo de placa
controladora a SCSI (Small Compact System Interface), que permite a conexo de
diversos perifricos, inclusive de naturezas distintas. Outra controladora muito usada
a IDE (Intelligent Drive Electronics). Dados so organizados no disco em cilindros,
trilhas e setores (Figura 19). a formatao que marca o disco com trilhas e
setores. Cilindros so trilhas concntricas na superfcie dos discos. Hoje, existem
aproximadamente 3000 trilhas em cada lado de um prato de 3,5 polegadas. Uma
trilha dividida em setores. Cada setor tem o tamanho de 512 bytes. Em uma
operao de leitura de um setor, o controlador de disco interpreta o endereo do
dado e move os cabeotes para o cilindro que contm os dados. Quando os
cabeotes esto na posio correta, o controlador ativa o cabeote especfico para
ler a trilha que contm o dado. O cabeote ento l a trilha procurando o setor que
contm o dado para leitura. A placa controladora do disco coordena o fluxo de
informao vinda do disco rgido em uma rea de armazenamento temporria
(cache). Ela ento envia a informao pela interface do disco rgido.

Figura 19. Disco Rgido

63
Muitas vezes os blocos de dados de um arquivo esto espalhados ao redor do disco.
Portanto, alguns mecanismos so necessrios para rastrear os blocos de um
arquivo (p.e. lista ligada, FAT File Allocation Table no DOS, I-node do UNIX).
Quando da leitura de vrios blocos em um arquivo espalhado, uma busca deve ser
realizada para a leitura de cada bloco. Os XTs usavam discos rgidos com 10 MB,
mas atualmente existem discos rgidos com vrias capacidades. Em 1991, a maioria
dos microcomputadores usava discos rgidos com 40, 60 ou 80 MB. J em 1993, os
discos de 120 e 200 MB eram mais comuns. Considere por exemplo, um
computador com 64 MB de RAM (que faz parte da memria principal) e um disco
rgido de 8.4 GB (que faz parte da memria secundria). Os 8.4 GB do disco rgido
servem para armazenar diversos programas e diversos dados. Os 64 MB de RAM
servem para manter apenas os programas e os dados que esto sendo efetivamente
processados.

2.8.2.2 CD-ROM (Compact-Disck Read-Only Memory)


O CD-ROM o meio de armazenamento que tem o menor custo por cada MB
armazenado. Infelizmente, como o nome j diz esse tipo de disco no pode ser
usado para gravar dados. Pode ser usado apenas para leitura. O CD-ROM tem sido
utilizado para veiculao de software, dicionrios, enciclopdias, etc.
Um CD-ROM utiliza tcnicas ticas de laser em vez de eletromagnetismo. A leitura
de um CD feita com a emisso de um feixe de laser sobre a superfcie do disco.
Sob a mesma tecnologia, encontram-se os WORM (Wirte Once, Read Many), discos
ticos que podem ser gravados apenas uma vez, mas lidos inmeras vezes, e os
discos apagveis (Magneto Optical Erasable Disk), regravveis, que permitem
inmeras atualizaes.

2.8.2.3 Unidades de fita magnticas


A unidade de fita magntica o dispositivo de alta velocidade que l e grava
fitas magnticas. A fita magntica, geralmente acondicionada em cartuchos, o
meio de armazenamento de grande capacidade. Um rolo pode conter centenas de
megabytes de dados. Elas so normalmente utilizadas para backups de discos
rgidos, tambm pode ser utilizadas no processamento em que os dados tenham
que ser acessados sequencialmente, principalmente quando todo o arquivo ou
64
grande parte dele tem que ser acessado. Seu uso mais corrente junto a mquinas
de porte mdio ou grande.

2.8.2.4 Memria Cache


Memria cache uma rea reservada de memria que possui duas funes:
aumentar o desempenho do computador e aumentar o tempo de vida das unidades
de disco. Basicamente h dois tipos de memria cache:
A que vem incorporada mquina. A que implementada via software na memria
RAM do sistema. A memria cache incorporada mquina um tipo muito mais
rpido do que a memria RAM convencional. Por exemplo, em uma placa me tpica
de 100MHz, o tempo de acesso memria principal de 180 nano segundos, e o
acesso memria cache na ordem de 45 nano segundos. Por isso ela usada
para armazenar tabelas muito usadas pelo sistema operacional ou para executar
parte de programas que necessitam de maior velocidade de processamento. Pode-
se fazer uma analogia entre a memria cache e o fichrio que ficaria em nossa mesa
de trabalho. Um arquivo (memria principal) maior conteria informaes completas
para realizao do trabalho e o fichrio (a memria cache) conteria informaes
mais corriqueiras. Mais prximo do trabalhador (a CPU), o fichrio (a cache)
aumentaria a rapidez na realizao do trabalho e reduziria a pesquisa no arquivo.

Nveis de Cache
Existem vrios nveis de cache em um computador moderno, cada nvel
agindo como um buffer para informaes recentemente usadas para aumentar o
desempenho. Mas quando referimos apenas a simplesmente cache, normalmente
est se referenciando o nvel secundrio ou nvel 2 que aquela posicionada entre
o processador e a memria principal.
Cada nvel mais prximo do processador e mais rpida que o nvel mais abaixo.
Cada nvel tambm cacheia o nvel mais abaixo dela, devido a sua velocidade
aumentada relativa aos nveis mais baixos.

Cache Primria Layer 1


A cache nvel 1 (L1) ou cache primria a memria mais rpida de um PC. Ela de
fato construda diretamente no processador. Ela roda na mesma velocidade do
processador. Se o processador solicita uma informao e pode encontr-la na cache
65
L1, este o melhor caso, pois a informao imediatamente disponvel e o
processador no tem que esperar.

Cache Secundria Layer 2


A cache nvel 2 uma cache secundria para o nvel 2, e maior e um pouco mais
lenta. Ela usada para armazenar endereos recentes que no so mantidos pelo
nvel 1.

Cache Externas
As primeiras placas-mes equipadas com SRAM apresentavam pequenas
quantidades de cache, entre 8KB a 128KB. Com o 486, tornou-se mais comum que
a placa-mes tivesse 128KB a 512KB de cache. O Pentium geralmente tem 512KB a
1MB de cache.
At recentemente, os chips que formavam a SRAM eram modularizados em forma
de chips DIP, mas atualmente, fabrica-se os mdulos d o tipo COAST, semelhante
ao SIMM, porm, eletronicamente diferentes.

Figura 20. Mdulo COAST.

Figura 21. SRAM do tipo DIP:

Praticamente, no se v mais placas de CPU novas com memria cache do tipo DIP.
As placas de CPU atuais incorporam os chip de SRAM na placa me, mas no do
tipo DIP. Os chips so soldados e geralmente no h bancos vazios para a
66
expanso. Com o mdulos COAST, basta trocar o mdulo. E com os chips VLSI da
Intel, estes possuem a capacidade de detectar automaticamente o tipo de cache em
uso, atravs do BIOS, dispensando a configurao manual, de forma que logo no
processo de boot h essa identificao.
3.6 Barramentos

2.9 Barramentos

Um barramento, ou bus, nada mais do que um caminho comum pelo qual os


dados trafegam dentro do computador. Este caminho usado para comunicaes e
pode ser estabelecido entre dois ou mais elementos do computador. O tamanho de
um barramento importante, pois ele determina quantos dados podem ser
transmitidos em uma nica vez. Por exemplo, um barramento de 16 bits pode
transmitir 16 bits de dado, e um barramento de 32 bits pode transmitir 32 bits de
dados a cada vez. Todo barramento tem uma velocidade medida em MHz. Um
barramento rpido permite transmitir dados rapidamente, que tornam as aplicaes
mais rpidas. Um PC tem muitos tipos de barramentos, que incluem: Barramento
do processador: o barramento que o chipset usa para enviar/receber informaes
do processador. O chipset so os chips de suporte adjacentes contidos na placa
me. Barramento de Cache: usado pelos Pentium Pro e Pentium III, um
barramento dedicado para acessar o sistema cache. Ele algumas vezes chamado
de barramento backside. Processadores convencionais que usam placas me de
quinta gerao tem uma cache conectada ao barramento de memria padro.
Barramento de memria: um barramento que conecta o subsistema de memria
ao chipset e ao processador. Em alguns sistemas o barramento do processador e o
barramento de memria so basicamente a mesma coisa. Barramento local de E/S
(Entrada/Sada). usado para conectar perifricos de alto desempenho memria,
chipset e processador. Por exemplo, placas de vdeo, interface de redes de alta
velocidade geralmente usam um barramento deste tipo. Os dois tipos barramentos
locais de E/S mais comuns so o Peripheral Component Interconnect Bus (PCI) e o
PCI Express. Barramento padro de E/S: conecta os trs barramentos acima ao
antigo barramento padro de E/S, usado para perifricos lentos (modems, placas de
som regulares, interfaces de rede de baixa velocidade) e tambm para
compatibilidade com dispositivos antigos. O principal barramento padro de E/S o

67
Industry Standard Architecture (ISA) bus. Nos PCs, o barramento ISA (antigo
padro) est sendo substitudo por barramentos mais rpidos, como PCI.
Geralmente, quando se ouve sobre o barramento de E/S, praticamente falamos de
slots de expanso. Alguns novos PCs usam um barramento adicional projetado
para comunicao de grafismos apenas. A palavra barramento foi colocada entre
aspas pois esta tecnologia no se trata de um barramento, ela um porto: o
Accelerated Graphics Port (AGP). A diferena entre um porto e um barramento que
o barramento geralmente projetado para vrios dispositivos compartilhando um
meio de comunicao, enquanto um porto apenas entre dois dispositivos. Todos os
barramentos tem duas partes: um barramento de endereamento e um barramento
de dados. O barramento de dados transfere o dado em si (por exemplo, o valor de
memria) e o barramento de endereo transfere a informao de onde o dado se
encontra.
Barramento do processador
O barramento do processador o caminho de comunicao entre a CPU e o
chipset. Este barramento usado para transferir dados entre a CPU e o barramento
principal do sistema (Figura 22). Pelo motivo de que o barramento do processador
serve para conseguir informaes para e da CPU velocidade mais rpida possvel,
este barramento opera de forma muito mais rpida que qualquer outro tipo de
barramento no computador. No existem congestionamentos neste barramento. Este
barramento consiste em circuitos eltricos de dados, endereamento e controle. No
processador 80486, o barramento consiste em 32 linhas de endereamento, 32
linhas de dados e algumas linhas para controle. No Pentium, so 32 linhas de
endereamento, 64 linhas de dados e as linhas de controle. O barramento do
processador opera a mesma velocidade que a CPU opera externamente. Num
Pentium 100MHz, o barramento opera a 66,6MHz, bem como num Pentium
133MHz, 166MHz e 200MHz. No processador Pentium II, o barramento de
processador opera a 100MHz e no Pentium III, a 100 ou 133 MHz. O barramento do
processador ligado nos pinos de conexo externos do processador e pode
transferir bits de dados a cada um ou dois ciclos. Um 80486 transfere 32 bits de
dados por vez, enquanto um Pentium transfere 64 bits.

68
Figura 22. Funcionamento o barramento do processador

Barramento de Cache
Processadores convencionais usam a cache externa na placa me e a CPU
acessa esta cache usando o barramento padro de memria. Para obter um melhor
desempenho, a maioria dos novos usam um barramento de alta velocidade
conectando o processador cache L2. No caso do Pentium Pro e Pentium III acima
de 600MHz, este barramento interno ao processador e opera na taxa da CPU. No
caso dos Pentium II e III at 600MHz, o barramento de cache opera na metade da
taxa do processador. Por exemplo, um Pentium II 266 MHz tem um barramento de
cache operando a 133 MHz.

Barramento da Memria
O barramento da memria usado para transferir informao entre a CPU e a
memria principal do sistema (a memria RAM). Estes barramento uma parte do
barramento do processador, ou na maioria dos casos implementado
separadamente por um chipset dedicado que responsvel pela transferncia de
informao entre o barramento do processador e o barramento da memria (Figura
23). Devido aos limites da capacidade do chips de DRAM, a taxa de transferncia de
informao no barramento da memria menor que a do barramento do
processador. Vale lembrar que a largura do barramento da memria a mesma que
do barramento do processador. Igualmente, num processador Pentium ou Pentium
Pro, que possui um barramento de 64 bit, cada banco de memria que usado
dever ter 64 bits preenchidos. As placas-me atuais possuem um suporte a pentes

69
de memria do tipo DIMM, que so de 64 bits. Assim, somente um pente
necessrio para o funcionamento do computador.

Figura 23. Funcionamento do barramento da memria

Barramento de E/S
Desde a criao do PC, muitos barramento de E/S tem sido desenvolvidos,
pela simples razo de CPUs mais rpidas, maiores demandas de software e maiores
requisitos de vdeo. Para cada avano obtido nos computadores, requer-se um
barramento que atenda s exigncias do hardware. Mesmo assim, necessita-se que
seja padronizado diante do mercado a nvel mundial, sem grandes custos aos
usurios (esta tambm uma das razes em que os barramento de E/S no
puderam evoluir mais do que se esperava). At foram criados barramento de E/S
mais rpidos do que o mercado exige, mas no foram colocados com sucesso no
mercado justamente pelos custos gerados na atualizao de hardware por parte dos
usurios).

Barramento ISA
Este barramento foi introduzido no PC original em 1981 como um barramento
de 8 bits e mais tarde foi expandido para 16 bits com o PC/AT em 1984, chamando-
se arquitetura padro da indstria. Existem duas verses do barramento ISA: O
barramento ISA de 8 bits surgiu com o XT e opera a 4,77MHz. Esta arquitetura de
barramento foi usada inicialmente nos primeiros PCs e desnecessria nos

70
sistemas atuais. O slot ISA de 8 bits um conector com 62 contatos, possuindo
eletronicamente 8 linhas de dados e 20 linhas de endereamento, habilitando ao slot
manusear 1MB de memria (Figura 24).

Figura 24. Slot ISA de 8 bits

O barramento ISA de 16 bits consegue operar num mximo de 8,33MHz, com uma
taxa mxima de 8MB/s. Surgiu aps a produo de processadores de 16 bits (a
partir do 80286, em 1984). Para compatibilidade, a IBM teve que criar um tipo de slot
que suportasse ambos 8 bits e 16 bits. Criou-se um slot com duas divises (Figura
25). As placas de expanso de 8 bits poderiam ser colocadas na parte maior do slot
e as de 16 bits em ambas as partes do slot. O conector ISA de 16 bits passa a ter,
assim, mais 36 pinos de conexo em relao ao ISA de 8 bits, em funo do amplo
caminho de dados.

Figura 25. Slot ISA de 16 bits

Barramento MCA
Com a introduo de chips de 32 bits (80386DX), significou que o ISA no
poderia suportar todo o poder dessa nova gerao de CPUs. Com o lanamento do
80386DX, a IBM decidiu criar um novo barramento, que resultou no MCA,
arquitetura de micro canal. Porm, a IBM no quis somente criar um novo
barramento, mas tambm receber os royalties por ele de outros fabricantes. Outra
razo para o MCA no se tornar um padro da indstria foi que no suportava as
placas ISA de 16 bits e 8 bits, haja vista que o conector era fisicamente menor, mais
complexo e bem mais diferente.
Barramento EISA

71
Este barramento foi criado em 1988 em resposta ao barramento MCA, sendo
primeiramente fabricado pela Compaq. Mesmo assim, poucas placas adaptadoras
foram criadas a partir do EISA. Simplesmente no emplacou no mercado, assim
como a MCA. Porm, o que salvou esse padro foi o de poder usar as placas ISA
presentes. Isto , os slots EISA esto presentes, mas foram usados principalmente
pelas placas ISA, que no necessitaram dos recursos colocados no EISA.
Local bus
Os barramentos de E/S vistos at agora (ISA, MCA e EISA) possuem algo em
comum: velocidade baixa. Esta limitao vem dos PCs originais, onde o barramento
de E/S operava a mesma velocidade do barramento do processador. Como a
velocidade do processador aumentou, o barramento de E/S aumentou apenas em
largura da banda de dados, permanecendo a uma velocidade muito mais baixa, por
causa da enorme base de placas adaptadoras instaladas que s poderiam operar a
velocidades mais baixas

Figura 26. Layout tradicional do barramento dos PCs

A ideia de que o sistema rodasse mais lento do que deveria, iria insatisfazer os
usurios. Porm, a velocidade do barramento de E/S muitas vezes s um
incmodo, porque no ser necessrio altas velocidades para a comunicao com o
teclado ou mouse, por exemplo. O problema s existe na lentido do barramento
quando placas de vdeo e controladores de disco se tornam prejudicados. Com os
sistemas e ambientes operacionais grficos, tanto o vdeo como os discos

72
necessitam de mais velocidade para os dados. Muito mais do que os 8MHz
oferecidos com o ISA. Uma soluo bvia mover os caminhos de dados dos slots
de E/S para a rea onde pode acessar velocidades maiores como a do barramento
do processador, como um cache externo (Figura 27). Este arranjo torna-se
conhecido como local bus, j que as placas adaptadoras podem acessar
diretamente o barramento do processador, que local. Consequentemente, para
comportar esse acesso, os slots necessitam ser diferentes do que os existentes,
bem como para diferenciar as placas mais lentas das mais rpidas que so
destinadas a esse tipo de barramento.

Figura 27. Funcionamento do barramento local

Nota-se que os primeiros barramento ISA de 8 e 16 bits at rodavam a velocidade


do barramento do processador, usando este barramento local. Mas quando o
processador se tornou mais rpido (e seu barramento tambm), o barramento
principal do ISA teve que ser desacoplado do barramento do processador.

VESA Local Bus


VESA Local Bus (VLB) foi o primeiro barramento local popular, em 1992.
VESA abreviao de Video Electronics Standards Association, que foi formada por
um grupo de fabricantes interessados em problemas relacionados com vdeos em
computadores pessoais. A principal razo do desenvolvimento do VLB foi aumentar
73
o desempenho de vdeo nos PCs. O VLB um barramento de 32 bits que de certo
modo uma extenso do barramento processador/memria do 486. Um slot VLB um
slot ISA 16 bits com um terceiro e quarto slots no final. Desta maneira, uma placa
ISA pode ser conectada no VLB. O VLB roda a taxas de 33 MHz, embora
velocidades maiores so possveis para alguns sistemas.
O VLB foi muito popular durante a era 486, com a introduo do Pentium e
seu barramento local PCI, em 1994, o VLB comeou a ser abandonado. Alm das
vantagens do PCI em relao ao VLB, existem tambm vrias problemas do VLB
que contriburam para seu abandono: Seu projeto foi duramente baseado no
processador 486, e a adaptao para o Pentium causou srios problemas de
compatibilidade e outros problemas. O barramento em si eletricamente fraco, por
exemplo, o nmero de placas que poderiam ser usadas no barramento era pequeno
(normalmente duas ou mesmo uma), e ocorria problemas quando mais de uma
placa era conectada. O barramento no tinha um controle muito forte, desde que
no havia um bom esquema de rbitro, e no suporta o Plug and Play.

Barramento PCI
PCI a abreviao de Peripheral Component Interconnect, um padro de
barramento local desenvolvido pela Intel Corporation. Embora ele tenha sido
desenvolvido pela Intel, o PCI no ligado a qualquer famlia de
microprocessadores. A maior parte dos PCs modernos incluem um barramento PCI
em adio ao barramento de expanso ISA. Mas a tendncia que o barramento
ISA seja totalmente substitudo pelo PCI. Como o VESA Local Bus, PCI um
barramento de 32 bits que normalmente roda a um mximo de 33 MHz. Nestas
condies, ele funciona a 133 MB/s. A vantagem chave do CI sobre seu
predecessor, o VLB, a existncia de um circuito no chipset que controla o
barramento. O VLB era basicamente uma extenso do barramento do processador
486. O PCI deste modo no casado com 486, e seu chipset fornece
funcionalidades para controle, que habilita o PCI a fazer mais coisas que o VLB
poderia fazer. A especificao 2.1 do barramento PCI estende o barramento para 64
bits e opera com a velocidade de 66MHz. A CPU pode processar os dados como um
cache externo enquanto o barramento PCI est ocupado transferindo informao
entre outras partes do sistema. Alm do ser mais eficiente, o barramento PCI

74
incorpora o recurso Plug and Play, no necessitando que o usurio configure as
placas adaptadoras. O sistema se encarrega disso. Para isso, os computadores
devem possuir um BIOS com essa caracterstica. Por exemplo, o Award Plug and
Play BIOS possui esse recurso.

Figura 28. Estrutura do barramento PCI

Os dados trafegam atravs do barramento PCI a 33MHz, com toda a banda


de dados da CPU, isto , usando-se uma CPU de 32 bits, a largura de 32 bits, com
uma taxa de transferncia de 132MB por segundo no mximo.

Figura 29. Slot PCI de 32 bits

O slot PCI de 64 bits constitudo de uma diviso a mais, como nos VLB.
Com esta banda de dados, a velocidade dobrando para um mximo de 264MB/s.

Barramento PC-Card (PCMCIA)


Este barramento destinado aos computadores portteis (notebooks e
laptops), desenvolvido pela PCMCIA, com um conjunto de mais de 300 fabricantes,
onde se estabeleceu os padres para os cartes adaptadores e de expanso para
notebooks e laptops. Um carto PCMCIA usa de 68 conectores, sendo ainda mais
caro que o ISA. Apesar dos padres, a indstria flexibilizou demais a arquitetura, de
75
forma que alguns cartes podem no ser compatveis com algum equipamento ou
outro. Os cartes tambm possuem o recurso de ser Plug and Play

USB
A interface externa USB fornece uma comunicao serial de 12 Mbps, apenas
sobre uma conexo de 4 fios. Um nico porto USB pode ser usado para conectar at
127 perifricos, tal como mouse, modems, teclados, scanners, cmeras. E A USB
tambm atende s especificaes Plug and Play da Intel, inclusive de poder
conectar os dispositivos com a mquina ligada e sem precisar reinici-las.
Simplesmente se conecta o dispositivo e a USB ir detectar automaticamente e
alocar os recursos necessrios para o seu funcionamento. O suporte a USB
fornecido com o Windows 95 e mais ainda pelo BIOS. Outra caracterstica
importante que os dispositivos USB conectados tm o fornecimento de energia
pelo prprio USB, o que significa que o USB verifica quais os requisitos de energia
requeridos pelos perifricos e avisar se estes dispositivos excederem os limites.

Firewire (IEEE 1394)


O firewire um barramento serial padro extremamente rpido que suporta
taxas de transferncias de dados de at 400 MBps. Um nico porto 1394 pode ser
usado para conectar at 63 dispositivos externos. Alm da alta velocidade, o 1394
tambm suporta dados iscronos, transmitindo dados com uma taxa garantida. Isto
ideal para dispositivos que necessitam altas taxas de transferncias em tempo
real, tal como dispositivos de vdeo. Embora muito rpido, o 1394 muito caro. Tal
como o USB, o 1394 suporta Plug-and- Play, e tambm fornece potncias aos
perifricos. A principal diferena entre do 1394 e USB que o 1394 suporta taxas de
transferncias altas e mais caro. Por esta razo, esperado usado mais
frequentemente para dispositivos que necessitam taxas altas, como cmeras de
vdeo, e o USB conectar os demais perifricos.
3.7 Dispositivos de Entrada/Sada

76
2.10 Dispositivos de entrada e sada

Os Dispositivos de Entrada/Sada so equipamentos utilizados como


portadores das informao que o computador ir processar. Por exemplo, quando se
pressiona uma tecla, faz com que o teclado transmita o cdigo da tecla pressionada.
Este cdigo recebido por um circuito chamado de INTERFACE DE TECLADO. Ao
receber o cdigo de uma tecla, a interface de teclado avisa a CPU que existe um
caractere recebido. Por outro lado, quando a CPU precisa enviar uma mensagem
para o usurio, precisa que a mensagem seja colocada na tela. Isto feito com
auxlio de um circuito chamado de INTERFACE DE VDEO. A CPU envia para a
interface de vdeo, a mensagem, seja ela em forma de texto ou figura. A interface de
vdeo coloca ento a mensagem na tela. Existem, portanto no computador, os
chamados DISPOSITIVOS DE ENTRADA E SADA, tambm chamados de
PERIFRICOS. Atravs desses dispositivos, o computador pode armazenar, ler,
transmitir e receber dados. Dentre os diversos dispositivos de E/S, existem alguns
que so especializados apenas em ENTRADA, outros especializados apenas em
SADA e outros em ENTRADA E SADA. Podemos citar os seguintes exemplos:

As Figura 30, 32 e 33 mostram diversos tipos de perifricos.

Figura 30. Dispositivos de ENTRADA

77
Figura 31. Dispositivos de SADA

Figura 32. Dispositivos de ENTRADA E SADA

Os microcomputadores muitas vezes so vendidos com apenas alguns de


seus perifricos de uso mais prioritrio. Nesse caso, dizemos que trata-se de uma
CONFIGURAO BSICA. Um exemplo tipo de configurao bsica aquela em
que o microcomputador acompanhado de:
Monitor
Drives
Disco rgido
Teclado
Mouse
Alto falante interno
O usurio pode, nesse caso, adquirir novos perifricos e realizar sua instalao
no microcomputador. Essa tarefa pode ser realizada por usurios mais experientes,
ou ento por tcnicos especializados. Quando instalamos novos perifricos em um
computador, dizemos que estamos realizando um EXPANSO. Nesse caso, podem
ser instalados, por exemplo:
Impressora
Kit multimdia (alto falantes, placa de som e drive de CD-ROM)
Modem
SCANNER

Tipos de comunicao com os Dispositivos

78
A CPU no pode comunicar-se diretamente com os perifricos. Esta
comunicao feita com a ajuda de circuitos chamados de interfaces ou portas de
E/S, as quais podem implementar a transmisso das palavras de dados segundo
duas diferentes polticas: na comunicao paralela, onde cada dgito (ou bit) da
palavra de dados conduzido por um fio dedicado, o que significa que os cabos
utilizados para a comunicao paralela so dotados de uma grande quantidade de
fios (ou vias); o exemplo mais clssico de dispositivos que utilizam a comunicao
paralela so as impressoras; na comunicao serial, onde os bits de cada palavra
so transmitidos um a um, de forma seqencial, atravs de uma nica via, o que
explica o fato dos cabos que implementam este tipo de comunicao serem
constitudos por uma pequena quantidade de fios; os exemplos mais conhecidos de
dispositivos que fazem uso desta poltica de comunicao so o mouse e os
modems.

79
3.0 Concluso

Conclumos que este trabalho possibilitou a compreenso do entendimento


sobre o funcionamento da arquitetura e redes de computadores, mostrando as
principais funcionalidades e diretrizes da organizao estruturada da arquitetura
computacional, a forma como ela padronizada e como os processos obtidos hoje
foram construdos ao longo do tempo.

Foi possvel aprender e conhecer sobre como cada componente tem seu
papel na arquitetura e redes de computadores e a evoluo dos mesmos atravs da
histria para que tenhamos a tecnologia atual. Alm de observar a histria do
computador desde uma simples mquina de clculo ou instrues em cartes
perfurados para teares tambm foi possvel observar a evoluo dos sistemas
operacionais e entender como est evoluo nos auxilia atualmente. Foi observado
tambm a como feito a lgica de instrues para que os processos emitidos pelo
usurio sejam traduzidos e entendidos pelo computador e como as instrues
emitidos pelo computador so traduzidos para que o usurio compreenda este no
formato visual ou sonoro para os usurios atravs do dos dispositivos de entrada e
sada.

80
4.0 Referncias.

TANENBAUM, Stuart Andrew, Organizao Estruturada de Computadores.5.Ed.,


So Paulo: Prentice - Hall, 2005.

HENNESSY, John L; PATTERSON, David A. Arquitetura de computadores: uma


abordagem qualitativa.Rio de Janeiro: Campus, 2003.

SRALLINGS, WILLIAM. Arquitetura e organizao de computadors: projeto para o


desempenho. 5.Ed., So Paulo: Prentice - Hall, 2003.

B.Piropo Disponvel em: http://www.bpiropo.com.br/arqcom1.htm Acesso em


31/04/2012

Scribd Disponvel em http://www.scribd.com/doc/16148458/Arquitetura-de-


Computadores-Apostila-Completa Acesso em 31/04/2012

Algol Disponivel em
http://algol.dcc.ufla.br/~monserrat/icc/Introducao_arq_computador.pdf Acesso em
03/05/2012 19:38
http://minerva.ufpel.edu.br/~guntzel/TD/projeto_ULA.pdf Acessado em 09/05/2012
23:12

http://www.pcs.usp.br/~labdig/pdffiles_2011/ula.pdf Acessado em 08/05/2012 as


19:09

81