CAMPUS SERRA
7
APRESENTAÇÃO
É preciso dizer, antes de qualquer outra coisa que, sem o excelente
trabalho do Carlos Morimoto, autor do
site Guia do Hardware, juntar todo esse material neste único
compendio não seria possível. Isto porque a
maioria do texto que aqui se encontra advém dos seus guias, artigos
e tutoriais publicados no referido site.
Contudo, o material era imenso e impraticável para uma única
disciplina, num único semestre e com carga
horária relativamente curta. Assim sendo, houve um longo e intenso
trabalho por parte daquele que vos fala
neste momento, selecionando/editando/adaptando mais de mil páginas
de texto/imagens/tabelas a fim de
gerar esta apostila.
O assunto “Hardware” (de computadores PC) é de certa forma
contraditório. Se por um lado, em sua parte
prática tudo ficou mais fácil para o usuário e também
para o técnico de manutenção, no campo teórico o
oposto tem acontecido. A compreenção das características, positivas
e negativas, dos diferentes hardwares é
uma tarefa difícil e que exige muito estudo. E, é importante frizar
que, só com um conhecimento bem além do
superficial é que é possível efetuar escolhas sensatas ao montar um
novo microcomputador, desvendar as
possíveis causas de um problema, ou simplesmente não ser enganado
por uma propaganda tendenciosa que o
induz a comprar “gato por lebre”.
Em minha humilde opinião, como professor e alguém que acompanhou o
desenvolvimento de boa parte
do que será dito neste material, a melhor forma de fazer esse tipo
de estudo é de maneira cronológica. Ou
seja, primariamente compreender os dispositivos mais antigos e
progressivamente assistir sua evolução ao
longo do tempo, chegando finalmente aos hardwares modernos. Esse é
o motivo pelo qual algumas
tecnologias que estudaremos não são mais comercializadas hoje, mas
certamente formam a base das
maravilhas tecnológicas dos dias atuais, já que dificilmente se
“reinventa a roda”.
Por fim, é preciso dizer que, a cada semestre que se passa,
tecnologias mais avançadas estarão sendo
lançadas: novos processadores, placas de vídeo, placas-mãe, etc.
Com um conhecimento sólido servido-lhe de
base (esse é o principal objetivo dessa disciplina), você estará
apto a continuar esse estudo. A internet está aí,
cheia de informação disponível a um clique de distância. Só depende
de você!
Estaremos juntos nessa jornada. Pelo menos até que eu possa tirar
as rodinhas da sua bicicleta e permitir
que você ande sozinho, sem a minha ajuda...
(e, acredite, talvez você nem perceba quando isso
acontecer...)
Prof. Flávio Giraldeli
Eng. de Computação
1.1 O Computador e a Informação
......................................................................................................................
9
1.2 Sinais Digitais e Números Binários
.................................................................................................................
9
1.2.1 Mais Sobre Números Binários
...............................................................................................................
10
1.3 Base Hexadecimal
........................................................................................................................................
10
1.5 Conversão de Sinais: Analógico para Digital
................................................................................................
12
1.6 Lógica Temporizada
.....................................................................................................................................
13
1.7 Computador PC: Componentes
Básicos.......................................................................................................
14
1.7.5 Placa-Mãe
..............................................................................................................................................
18
Exercícios............................................................................................................................................................
20
2.2.1 O Surgimento do PC
..............................................................................................................................
22
2.2.2 O 286
.....................................................................................................................................................
23
2.2.3 O 386 e a Era dos 32 bits
.......................................................................................................................
23
2.2.3.1 Principais Recursos Trazidos pelo 386
............................................................................................
24
2.2.4 O 486
.....................................................................................................................................................
25
2.3.1 Pentium MMX
.......................................................................................................................................
29
2.3.2 Pentium Pro
...........................................................................................................................................
29
2.3.3 Pentium II
..............................................................................................................................................
31
2.3.6 Pentium III
.............................................................................................................................................
34
2.3.7 O Athlon
................................................................................................................................................
36
2.3.8.2 Smithfield, Cedar Mill e Presler
......................................................................................................
45
2.3.8.3 O Soquete LGA-775
........................................................................................................................
47
2.4 Processadores Modernos: A Era dos 64 Bits
................................................................................................
49
2.4.1 A Arquitetura K8
....................................................................................................................................
52
2.4.1.1 Os Modelos
.....................................................................................................................................
57
2.4.1.1.3 Sempron
.................................................................................................................................
64
2.4.2.2 Core 2 Duo E6xxx (Conroe)
.............................................................................................................
74
2.4.2.3 Core 2 Quad Q6xxx (Kentsfield)
......................................................................................................
75
2.4.2.4 Core 2 Duo E4xxx e Pentium E2xxx (Allendale)
..............................................................................
78
2.4.2.5 Penryn: a Segunda Geração
............................................................................................................
80
2.4.2.5.1 Os 45 nm
.................................................................................................................................
82
2.4.2.6 Core 2 Duo E8xxx e E7xxx (Wolfdale)
.............................................................................................
83
2.4.2.7 Core 2 Quad Q9xxx, Q8xxx e Q7xxx (Yorkfield)
..............................................................................
84
2.4.2.8 Pentium E5xxx e E6xxx
...................................................................................................................
85
2.4.2.9 Celeron 4xx, E1xxx e E3xxx
.............................................................................................................
86
2.4.3 A Plataforma AMD K10 (Barcelona)
......................................................................................................
89
2.4.3.1 Phenom
...........................................................................................................................................
92
2.4.3.1.2 O TLB Bug e o Problema do Cool'n'Quiet
...............................................................................
95
2.4.3.2 Athlon X2 7xxx
................................................................................................................................
97
2.4.3.3 Phenom II
........................................................................................................................................
98
2.4.3.3.4 O Sempron de 45 nm
............................................................................................................
105
2.4.3.3.5 Quatro Cores Pelo Preço de Três
..........................................................................................
106
2.4.3.4 Tuban: Six-Core da AMD
...............................................................................................................
107
2.5 Processadores Recentes: Intel: i3, i5 e i7 / AMD: APU’s e
Bulldozer .........................................................
109
2.5.1 A Arquitetura Intel Nahalem (Intel Core i de 1ª Geração)
..................................................................
109
2.5.1.1 Os Caches
......................................................................................................................................
110
2.5.1.3 Apresentando o
QPI......................................................................................................................
112
2.5.1.4 Loop Stream Detector e a Volta do Hyper Threading
..................................................................
114
2.5.1.5 Gerenciamento de Energia e o Turbo Boost
................................................................................
115
2.5.1.6 Os Modelos
...................................................................................................................................
116
2.5.1.6.2 Lynnfield (Core i5 e i7 – Soquete LGA-1156)
........................................................................
117
2.5.1.6.3 Clarkdale (Core i5, i3 e Pentium G – Soquete
LGA-1156 – Video Integrado) .......................
120
2.5.1.6.4 Gulftown (Six Core)
...............................................................................................................
125
2.5.2 Resumo dos Processadores Desktop Nahalem: Intel i3, i5 e i7
de Primeira Geração ........................ 128
2.5.3 A Arquitetura Intel Sandy Bridge (Intel Core i de 2ª Geração)
............................................................
128
2.5.3.1 O Que Mudou
...............................................................................................................................
130
2.5.3.2 A GPU Integrada
...........................................................................................................................
131
2.5.3.3 Turbo Boost Mais Agressivo
.........................................................................................................
133
2.5.3.4 Modelos e o Problema do Overclock
............................................................................................
133
2.5.3.5 Mais um Novo Soquete
................................................................................................................
136
2.5.3.6 Resumo dos Processadores Intel i3, i5 e i7 de Segunda
Geração (Sandy Bridge) ........................ 138
2.5.4 AMD Llano (Fusion): a Era das APUs
...................................................................................................
138
2.5.4.1 Metade GPU
.................................................................................................................................
140
2.5.5.2 Os modelos
...................................................................................................................................
147
2.5.6 Entendendo o Ivy Bridge (Intel Core i de 3ª Geração)
........................................................................
149
2.5.6.1 TDP configurável
...........................................................................................................................
151
2.5.7.1 Vídeo Onboard com Qualidade
....................................................................................................
152
2.5.7.2 GPUs para Desktops
.....................................................................................................................
154
2.5.7.3 Resumo das GPUs do Haswell
......................................................................................................
154
2.5.7.4 Bateria de Longa Duração
.............................................................................................................
155
2.5.7.5 Nova Família de Processadores, Nova Geração de Chipsets
........................................................ 155
2.5.7.6 Processadores para Desktop
........................................................................................................
156
2.6 Alguns Resumos a Respeito dos Processadores
........................................................................................
157
2.6.1 Os Diferentes Soquetes
.......................................................................................................................
157
2.6.2 Árvore Genealógica Simplificada dos Processadores Intel e AMD
..................................................... 159
2.6.3 Intel: Evolução das Arquiteturas
.........................................................................................................
160
Exercícios..........................................................................................................................................................
161
3.2 Chipsets ao Longo da História dos Processadores
.....................................................................................
167
3.3 O fim dos Chipsets, Como os Conhecemos
................................................................................................
167
Exercícios..........................................................................................................................................................
172
4.3 BIOS
............................................................................................................................................................
179
4.5 Vida e Morte do AGP
.................................................................................................................................
189
4.6 O PCI Express
..............................................................................................................................................
194
4.6.1 Como o PCI Express Funciona
.............................................................................................................
196
4.6.2 Dentro do Chipset
...............................................................................................................................
199
4.6.3 O PCI Express 3.0
.................................................................................................................................
200
4.7 USB
.............................................................................................................................................................
200
Exercícios..........................................................................................................................................................
212
5.1 Introdução
..................................................................................................................................................
214
5.9 Memórias DDR3
.........................................................................................................................................
228
5.10 A Maldição dos 32 Bits: o Limite de 3 GB
................................................................................................
230
5.11 Identificando Módulos de Memória Defeituosos
....................................................................................
234
5.12 Paridade, ECC e Memórias Registered
.....................................................................................................
239
Exercícios..........................................................................................................................................................
242
Cap. 6: Armazenamento de Dados: HD, Flash e Mídias Ópticas
.................................................................
243
6.1 Introdução
..................................................................................................................................................
243
6.2.1 A Placa Controladora
...........................................................................................................................
250
6.2.2 Os Discos
.............................................................................................................................................
252
6.2.4 Desempenho
.......................................................................................................................................
259
6.2.4.4 Head Switch Time
.........................................................................................................................
262
6.2.4.5 Taxa de Transferência Interna (Internal Transfer Rate)
...............................................................
263
6.2.5 NCQ
.....................................................................................................................................................
264
6.2.6 Cache/Buffer
.......................................................................................................................................
265
6.3 As interfaces
...............................................................................................................................................
267
6.4.1.1 RAID 0
(Striping)............................................................................................................................
275
6.4.1.4 RAID 5
...........................................................................................................................................
277
6.4.1.5 RAID 6
...........................................................................................................................................
278
6.4.2 As controladoras
.................................................................................................................................
280
6.5 [EXTRA] A Transição Para Os Setores De 4 Kbytes
.....................................................................................
283
6.6 Sistemas de arquivos
.................................................................................................................................
285
6.6.1 FAT16 e FAT32
.....................................................................................................................................
288
6.6.2 NTFS
.....................................................................................................................................................
291
6.6.3 EXT3
.....................................................................................................................................................
294
6.7.1 S.M.A.R.T
.............................................................................................................................................
296
6.7.3 Reparando Partições
...........................................................................................................................
299
6.7.5 Recuperando Arquivos Apagados
.......................................................................................................
306
6.7.5.1 Usando o Easy Recovery
...............................................................................................................
306
6.7.5.2 Usando o Photorec
.......................................................................................................................
309
6.8 Gigabytes e Gibibytes
................................................................................................................................
313
6.9 Memória Flash
...........................................................................................................................................
315
6.9.1.1 CompactFlash
...............................................................................................................................
318
6.9.1.2 SmartMedia
..................................................................................................................................
319
6.9.1.9 SDHC
.............................................................................................................................................
325
6.10.1 Os Acidentes Evolutivos
....................................................................................................................
327
6.10.2 Desempenho
.....................................................................................................................................
328
6.10.3 Ciclos De Gravação E A Questão Da Longevidade
.............................................................................
330
6.10.4 A Questão Da Capacidade
.................................................................................................................
331
6.10.5 Popularização
....................................................................................................................................
331
6.10.6 Formatos
...........................................................................................................................................
332
6.12 Mídias ópticas
..........................................................................................................................................
334
6.12.2 DVD (Digital Versatile Disk)
...............................................................................................................
337
6.12.3 Blu-ray
...............................................................................................................................................
338
7.1 Um Resumo sobre Placas de Video
............................................................................................................
342
7.2 FPS, V-Sync, Triple Buffering e tearing
.......................................................................................................
345
7.3 Recursos básicos
........................................................................................................................................
348
7.3.1 O Chipset
.............................................................................................................................................
348
7.3.3 Fill Rate
................................................................................................................................................
350
7.3.5 TMUs e ROPs
.......................................................................................................................................
354
7.3.6 Memória
..............................................................................................................................................
355
7.3.9 CrossFire
..............................................................................................................................................
367
7.4 As APIs: DirectX e OpenGL
.........................................................................................................................
371
7.5 O mundo da física: Physics, Physx e Havok
................................................................................................
377
7.6 Como Escolher uma Placa de Video?
.........................................................................................................
379
7.6.1 Entendendo o Mercado de GPUs
........................................................................................................
380
7.6.2 Maior Quantidade de Memória nem Sempre Quer Dizer Alguma
Coisa ............................................ 382
7.6.3 Entendendo as Denominações/Modelos das Placas de Video
...........................................................
382
7.6.3.1 AMD: Radeon
................................................................................................................................
382
7.6.3.2 nVidia: GeForce
............................................................................................................................
383
7.6.4 É Dificil Comparar Arquiteturas Diferentes
.........................................................................................
383
7.6.5 Uma Forma Segura de Conhecer o Desempenho de Uma Placa de
Video ......................................... 384
7.6.7 Em Resumo: Dicas ao Escolher uma Placa de Video
...........................................................................
386
Exercícios..........................................................................................................................................................
387
1.1 O COMPUTADOR E A INFORMAÇÃO
A troca de informações entre os seres humanos e o universo a sua
volta diferem bastante da troca de
informações entre os dispositivos eletrônicos (câmeras e
computadores) a qual estamos acostumados. Esta
diferença é referente à forma de representação da informação. Todas
as informações que chegam até nossos
olhos provem de ondas eletromagnéticas analógicas. Uma informação
analógica pode teoricamente assumir
qualquer valor numérico real de -∞ a +∞. Isto significa que a faixa
de valores que determinada informação
analógica pode assumir é infinita. Mesmo que você restrinja os
intervalos, como a tensão a que um dispositivo
ficará submetido é de 0 a 5V. Pergunta: Quantos valores são
possíveis entre 0 e 5? A resposta é: Infinitos. A
medida que costumamos fazer é na verdade uma aproximação, limitada
obviamente pelo dispositivo
responsável pela medição do valor.
Você já deve estar começando a perceber como seria difícil ou mesmo
impossível para um computador
manipular informações analógicas. Além da complexidade, nunca
saberíamos ao certo se o nosso resultado
final é de fato rigorosamente válido. O passo chave foi, portanto,
a criação de uma nova forma de
representação da informação, o que implicou diretamente em um novo
sistema numérico.
1.2 SINAIS DIGITAIS E NÚMEROS BINÁRIOS
Um sistema digital é um sistema no qual os sinais tem um número
finito de valores discretos (bem
definidos, enumeráveis). Como um exemplo elementar, uma balança
digital mede o peso através de sinais
discretos que indicam a massa (gramas ou kilogramas); por outro
lado, uma balança analógica mede o peso
através de um sinal contínuo correspondente a posição de um
ponteiro sobre uma escala.
Os benefícios dos sistemas digitais são muitos. Por exemplo:
1. A representação digital é bem adequada tanto para
processamento numérico como não-numérico de
informação. Um exemplo de informação não-numérica é a linguagem
escrita, na qual as letras tem
valores do alfabeto finito A, B, C... etc..
2.
O processamento da informação pode usar um sistema para propósitos
gerais (um computador) que
seja programado para uma tarefa de processamento particular (como o
de imagens), eliminando a
necessidade de haver um sistema diferente para cada tarefa.
3. O número finito de valores num sinal digital pode ser
representado por um vetor (conjunto de valores)
de sinais com apenas dois valores (sinais binários). Por exemplo,
os dez valores de um dígito decimal
podem ser representados por um vetor de quatro sinais binários (ou
bits), da seguinte maneira:
dígito 0 1 2 3 4 5 6 7 8 9
vetor 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
4. Esta representação permite implementações nas quais todos
os sinais são binários; em consequência,
os dispositivos que processam esses sinais são muito simples
(fundamentalmente, apenas chaves com
dois estados: aberto e fechado). Falaremos mais sobre números
binários à frente.
5.
Os sinais digitais são bastante insensíveis a variações nos valores
dos parâmetros dos componentes
(por exemplo, temperatura de operação, ruído), de modo que pequenas
variações na representação
física não mudam o valor efetivo.
Os sistemas digitais numéricos podem se tornar mais exatos
simplesmente aumentando-se o número
de dígitos usados na sua representação.
1.2.1 MAIS SOBRE NÚMEROS BINÁRIOS
Antes de compreender melhor como funciona a representação em base
binária (base 2), observe como um
número qualquer é formado na base em que estamos acostumados a
lidar, a base 10. Tome por exemplo o
número decimal 123. Veja só como o mesmo é formado:
123 = 1 x 102 + 2 x 101 + 3 x 100
Perceba que cada algarismo, em particular, dependendo da posição em
que o mesmo se encontra, ele
determina um valor relativo. O algarismo 1 na casa das centenas,
determina de fato uma centena. O 2
determina duas dezenas e o 3, três unidades. Perceba que a base é
dita “dez” uma vez que qualquer número
escrito nessa base pode ser desmembrado numa soma de potências de
10, multiplicadas por uma faixa de 10
algarismos definidos (0 – 9). Observe que não é
coincidência termos n diferentes algarismos para uma base n.
Pense agora que ao invés de dispor de 10 algarismos diferentes,
dispomos de apenas dois. Vamos chamar
esses algarismos de 0 (zero) e 1 (um). De forma absolutamente
análoga, pense no número 1111011 expresso
na base 2. Desmembrando o mesmo temos:
1111011 = 1 x 26 + 1 x 25 + 1 x 24 + 1 x 23 + 0
x 22 + 1 x 21 + 1 x 20
O número representado acima na base binária é exatamente o mesmo
número 123 representado na base
10 acima. É vital que você observe que quanto menos algarismos eu
dispuser para a minha representação, ou
seja, quanto menor for a minha base, uma sequência cada vez maior
de algarismos é necessária para
representar um valor qualquer. Na base binária em especial, cada
algarismo, seja ele 0 ou 1, é chamado de bit
(binary digit).
Não é muito comum descrevermos quantidades binárias em bits.
Costumamos expressar os valores em
bytes, que são agrupamentos formados por 8 bits. Outros múltiplos
também existem e são expressos em
relação a byte, alguns deles são:
1 Kilobyte (KB) 210 bytes 1.024 bytes
1 Megabyte (MB) 220 bytes 1.048.576 bytes
1 Gigabyte (GB) 230 bytes 1.073.741.824 bytes
1 Terabyte (TB) 240 bytes 1.099.511.627.776 bytes
Outro importante fato a ser observado no caso dos números binários
é que a faixa de valores possível de
ser expressa numa dada quantidade de bits é relativamente pequena
comparada aos números decimais. Por
exemplo, na base dez, dispondo de uma sequência formada por oito
algarismos, conseguimos representar 108
valores diferentes, ou seja, de 0 a 99.999.999. Já na base binária,
com uma sequência de oito dígitos (8 bits),
conseguimos representar 28 valores diferentes, ou seja, 256
valores distintos (0 a 255).
1.3 BASE HEXADECIMAL
Uma vez compreendida a base binária e decimal, fica fácil
compreender a base hexadecimal, ou base 16.
Essa base possui não apenas 2 ou 10 algarismos, mas 16 algarismos
diferentes. Veja a correspondência entre
decimais, binários e hexadecimais correspondentes:
010 = 00002 = 016
110 = 00012 = 116
210 = 00102 = 216
310 = 00112 = 316
410 = 01002 = 416
510 = 01012 = 516
610 = 01102 = 616
710 = 01112 = 716
810 = 10002 = 816
910 = 10012 = 916
1010 = 10102 = A16
1110 = 10112 = B16
1210 = 11002 = C16
1310 = 11012 = D16
1410 = 11102 = E16
1510 = 11112 = F16
11
Você pode estar pensando, por que motivo eu precisaria de mais uma
base?
O motivo é simples. Imagine lidarmos com números de 32 bits.
Obviamente, na base binária precisamos de
uma sequência de 32 algarismos, 0s e 1s, para representá-lo.
Trabalhando na base hexadecimal, uma vez que
para cada agrupamento de 4 bits temos um algarismo distinto, um
número de 32 bits pode ser representado
agora por uma sequência de 8 algarismos.
Observe o exemplo abaixo, onde os pontos presentes na representação
binária são apenas para melhor
legibilidade:
Decimal Binário Hexadecimal
4.285.639.982 1111.1111.0111.0001.1010.1101.0010.1110
FF71AD2E
Cores são muitas vezes representadas por valores numéricos de 24
bits (temos consequentemente
16.777.216 cores possíveis). Imagine, perguntarmos para nosso
colega que cor ele usou num determinado
projeto e o ouvirmos dizer uma sequência de 24 zeros e uns!
Obviamente será muito mais simples dizer uma
simples sequência de 6 algarismos hexadecimais, por exemplo F7FF29
que é um tom de amarelo.
Mas você pode estar se perguntando: Como faço para converter um
número de uma base para outra,
como no exemplo acima? É o que veremos na próxima seção.
1.4 CONVERSÕES ENTRE BASES NUMÉRICAS
1.4.1
DE DECIMAL PARA BINÁRIO
Existem basicamente duas formas de se converter de decimal para
binário.
A primeira delas envolve divisões sucessivas por 2 (a base
binária).
Vamos converter, por exemplo, o número 53 de decimal para
binário:
53 |_2_ 1 26 |_2_
0 13 |_2_ 1 6 |_2_
0 3 |_2_ 1 1 |_2_
1 0
As divisões sucessivas acabam quando o quociente chega finalmente a
zero. O número na forma binária é
formado pelos restos das divisões, de baixo para cima, tal qual
indicado pela seta. Assim: 5310 = 1101012
A segunda forma de fazer a conversão é mais “direta”. Observe que
um número qualquer, escrito na base
binária, é na verdade uma soma de produtos.
Imagine um número binário qualquer, de 6 dígitos. Vamos chamá-lo de
b5b4b3b2b1b0 onde cada b é um
dígito, que pode ser 0 ou 1, naturalmente. O valor desse número, na
base decimal é:
b5b4b3b2b1b0 = b5 x 25 + b4 x 24 + b3 x 23 + b2 x 22 + b1
x 21 + b0 x 20 = b5 x 32 + b4 x 16 + b3 x 8 + b2 x
4 + b1 x 2 + b0 x 1
Repare que, quando b vale 1, a “parcela” entra na soma que formará
o número em decimal. Caso seja b
seja 0, aquela “parcela” não conta. Voltemos ao caso do 53.
Pergunte-se: Qual é o “fator de multiplicação” (1,
2, 4, 8, 16, 32, 64, 128 ...) mais próximo de 53, sem ultrapassar
53? É 32, certo? Então, já temos 32. Assim, 5310
= 1b4b3b2b1b0. Falta-nos descobrir os demais dígitos. Repare que o
fator de multiplicação do próximo dígito é
16. Pergunte-se: Posso somar 32 + 16 sem ultrapassar 53? A resposta
é sim, pois 32 + 16 = 48 que é menor que
53. Portanto, o próximo dígito é também 1. Já temos: 53 10 =
11b3b2b1b0. O próximo fator de multiplicação é 8.
12
não entra na conta e o dígito é, portanto, 0. Já temos: 53 10
= 110b2b1b0. O raciocínio continua da mesma
forma: 32 + 16 + 4 = 52, que é menor que 53. Logo 53 10 =
1101b1b0. Já que 52 + 2 ultrapassa 53, o penúltimo
digito é 0. E, finalmente, o último dígito é 1. Assim: 5310 =
1101012 que é, naturalmente, o mesmo resultado
que encontramos da primeira forma, com divisões sucessivas. Com um
pouco de prática, você verá que a
segunda forma é muito mais rápida e prática.
1.4.2 DE BINÁRIO/DECIMAL PARA HEXADECIMAL
A conversão de binário para hexadecimal é bastante simples. Basta
agrupar os dígitos em grupos de 4, a
partir da direta e completar o último grupo com zeros. O ponto,
neste caso, é apenas para melhor visualização.
Observe:
5310 = 0011.01012 = 3516
1223751410 = 1011.1010.1011.1010.1100.10102 =
BABACA16
As conversões de hexadecimal/binário para decimal podem ser
facilmente executadas a partir da própria
expressão do número na base correspondente, efetuando a soma de
produtos, conforme extensamente
mostrado nesta seção.
Por exemplo:
1101012 = 1 x 25 + 1 x 24 + 0 x 23 +
1 x 22 + 0 x 21 + 1 x 20 = 5310
32AC16 = 3 x 163 + 2 x 162 + 10 x 21 +
12 x 20 = 1297210
1.5 CONVERSÃO DE SINAIS: ANALÓGICO PARA
DIGITAL
Uma vez que os sinais do mundo físico são analógicos, é necessário
convertê-los para sinais digitais e vice-
versa sempre que sistemas digitais tenham de interagir com estes
sinais físicos.
Considere como exemplo uma máquina fotográfica digital. Numa visão
simplificada, podemos entender o
seu funcionamento da seguinte forma:
1. A luz entra através das lentes e atinge um sensor que é
formado por uma matriz (linhas e colunas) de
microcircuitos baseados em elementos semicondutores (transistores)
que são sensíveis à radiação
luminosa.
2. Cada um desses sensores é capaz de detectar um comprimento
de onda em específico (ou seja, uma
cor), bem como a sua intensidade, e converter isso para valores de
tensão. No caso de uma imagem
colorida, tem-se sensores sensíveis as 3 luzes primárias:
Red (Vermelho), Green (Verde) e
Blue (Azul).
No modelo de cores RGB (usado por monitores, por exemplo),
“qualquer” cor pode ser expressa pelas
suas 3 componentes (RGB).
3. O próximo passo é de fato a conversão dos valores
analógicos de tensão para valores digitais. Esse
processo é chamado de quantização ou digitalização.
4.
13
completa é, portanto a enorme sequência formada pela junção de
todos os vetores de bits individuais
de cada ponto. No fundo, uma imagem digital é uma sequência de 0s e
1s que descrevem a cor de
todos os pontos que formam a imagem, um por um.
5.
Uma vez tido a representação completa da imagem por uma extensa
cadeia de bits, a mesma pode
sofrer inúmeros processamentos (manipulações) até chegar ao
resultado final, que é efetivamente o
arquivo guardado no dispositivo de memória e posteriormente
transferido para o computador.
1.6 LÓGICA TEMPORIZADA
Na comunicação entre o processador e memória, as instruções, os
dados e os endereços “trafegam” no
computador através dos barramentos (de dados, de endereços e de
controle), sob a forma de bits
representados por sinais elétricos: uma tensão positiva alta
(“high” - geralmente no em torno de 3 volts)
significando “1 e uma tensão baixa (“low” - próxima de zero)
significando “0”. Mas os dados no computador
não ficam estáticos; pelo contrário, a cada ciclo (cada “estado”)
dos circuitos, os sinais variam, de forma a
representar novas instruções, dados e endereços. Ou seja, os sinais
ficam estáticos apenas por um curto
espaço de tempo, necessário e suficiente para os circuitos poderem
detectar os sinais presentes no
barramento naquele instante e reagir de forma apropriada. Assim,
periodicamente, uma nova configuração de
bits é colocada nos circuitos, e tudo isso só faz sentido se
pudermos de alguma forma organizar e sincronizar
essas variações, de forma a que, num dado instante, os diversos
circuitos do computador possam “congelar”
uma configuração de bits e processá-las. Para isso, é preciso que
exista um outro elemento que forneça uma
base de tempo para que os circuitos e os sinais se sincronizem.
Este circuito é chamado clock - o relógio
interno do computador. Cada um dos estados diferentes que os
circuitos assumem, limitados pelo sinal do
clock , é chamado um ciclo de operação.
1.6.1 CLOCK
A Unidade de Controle do processador envia a todos os componentes
do computador um sinal elétrico
regular - o pulso de “clock” - que fornece uma
referência de tempo para todas as atividades e permite o
sincronismo das operações internas. O clock é um pulso
alternado de sinais de tensão, gerado pelos circuitos
de relógio (composto de um cristal oscilador e circuitos
auxiliares).
1.6.2
CICLO DE OPERAÇÃO
Cada um destes intervalos regulares de tempo é delimitado pelo
início da descida do sinal, e um ciclo é
equivalente à excursão do sinal por um “low” e um
“high” do pulso.
O tempo do ciclo equivale ao período da oscilação. A física diz que
período é o inverso da frequência. Ou
seja, P = 1 / f.
A frequência f do clock é medida em hertz. Inversamente,
a duração de cada ciclo é chamada de período,
definido por P=1/f (o período é o inverso da frequência).
Por exemplo, se f = 10 hz logo P = 1/10 = 0,1 s.
1 Mhz (1 megahertz) equivale a um milhão de ciclos por segundo.
Sendo a frequência de um processador
medida em megahertz, o período será então medido em nanosegundos,
como vemos no exemplo abaixo:
f = 10 Mhz = 10 x 106 hz
P = 10 / 106 = 0,0000001 s (segundo) = 0,0001 ms
(milissegundo) = 0,1 µs (microssegundo) = 100 ns
(nanosegundo)
14
Sempre que se fala sobre máquinas velozes, citamos números em
megahertz. Para um melhor
entendimento sobre o que ocorre na máquina, em vez de falar sobre a
frequência do clock seria mais
ilustrativo discutirmos outra grandeza: o período (isto é, o tempo
de duração de cada ciclo ou simplesmente
tempo de ciclo).
Quando se diz que um processador é de 200 Mhz, está-se definindo a
frequência de operação de seu
processador (seu clock ), significando que o processador pode
alternar seus estados internos 200 milhões de
vezes por segundo. Isto acarreta que cada ciclo (equivalente a um
estado lógico) de operação dura
1 / 200.000.000 s = 5 x 10-9 s, ou seja, 5 ns.
Como podemos ver pelo exemplo a seguir, o processador com o
clock ilustrado em (B) teria um tempo de
ciclo cinco vezes menor que o (A) e, portanto teria (teoricamente)
condições de fazer cinco vezes mais
operações no mesmo tempo.
Quando analisamos os números de clock de um processador
ou barramento, pode ficar uma impressão
que esses números não fazem sentido: 133 MHz, 166 MHz... Vejamos
como ficam seus períodos, e como esses
números apresentam um padrão regular:
Frequência (MHz) Período (ns)
Qualquer PC é composto pelos mesmos componentes básicos:
processador, memória, HD, placa-mãe,
placa de vídeo e monitor. Essa mesma divisão básica se aplica
também a outros aparelhos eletrônicos, como
palmtops e celulares. A principal diferença é que neles os
componentes são integrados numa única placa de
circuito (muitas vezes no mesmo chip) e são utilizados chips de
memória flash no lugar do HD.
Antigamente, a placa-mãe funcionava apenas como um ponto central,
contendo os slots e barramentos
usados pelos demais componentes. Além do processador e pentes de
memória, era necessário comprar a
15
Com a integração dos componentes, a placa-mãe passou a incluir cada
vez mais componentes, dando
origem às placas "tudo onboard" que utilizamos atualmente (existem
placas que já vêm até com o processador
e chips de memória!). Isso permitiu que os preços dos PCs caíssem
assustadoramente, já que, com menos
componentes, o custo de fabricação é bem menor. Para quem quer mais
desempenho ou recursos, é sempre
possível instalar placas adicionais, substituindo os componentes
onboard.
Com o micro montado, o próximo passo é instalar o sistema
operacional e programas, que finalmente vão
permitir que ele faça algo de útil. Vamos começar com um overview
da função de cada um destes
componentes.
1.7.1 PROCESSADOR
O processador é o cérebro do micro, encarregado de processar a
maior
parte das informações. Ele é também o componente onde são usadas
as
tecnologias de fabricação mais recentes.
Existem no mundo apenas quatro grandes empresas com
tecnologia
para fabricar processadores competitivos para micros PC: a Intel
(que
domina mais de 60% do mercado), a AMD (que disputa diretamente com
a
Intel), a VIA (que fabrica alguns chips em pequenas quantidades) e
a IBM, que esporadicamente fabrica
processadores para outras empresas.
O processador é o componente mais complexo e frequentemente o mais
caro, mas ele não pode fazer
nada sozinho. Como todo cérebro, ele precisa de um corpo, que é
formado pelos outros componentes do
micro, incluindo memória, HD, placa de vídeo e de rede, monitor,
teclado e mouse.
O transístor é a unidade básica do processador, capaz de processar
um bit de cada vez. Mais transistores
permitem que o processador processe mais instruções de cada vez
enquanto a frequência de operação
determina quantos ciclos de processamento são executados por
segundo.
1.7.2
MEMÓRIA
Depois do processador, temos a memória RAM, usada por ele
para
armazenar os arquivos e programas que estão sendo executados, como
uma
espécie de mesa de trabalho. A quantidade de memória RAM disponível
tem
um grande efeito sobre o desempenho, já que sem memória RAM
suficiente
o sistema passa a usar memória swap, que é muito mais lenta.
A principal característica da memória RAM é que ela é volátil, ou
seja, os
dados se perdem ao reiniciar o micro. É por isso que ao ligar é
necessário
sempre refazer todo o processo de carregamento, em que o
sistema
operacional e aplicativos usados são transferidos do HD para a
memória,
onde podem ser executados pelo processador.
Os chips de memória são vendidos na forma de pentes de memória.
Existem pentes de várias capacidades,
e normalmente as placas possuem dois ou três encaixes disponíveis.
Hoje em dia, 1 GB por módulo é
normalmente o mínimo que se encontra disponível no mercado.
Ao contrário do processador, que é extremamente complexo, os chips
de memória são formados pela
repetição de uma estrutura bem simples, formada por um par de um
transístor e um capacitor. Um transístor
solitário é capaz de processar um único bit de cada vez, e o
capacitor permite armazenar a informação por um
certo tempo. Essa simplicidade faz com que os pentes de memória
sejam muito mais baratos que os
16
Todos os micros modernos são equipados com algum tipo de memória
DDR, seja ela DDR, DDR2 ou DDR3.
Antigamente, na época dos Pentium II e III e os primeiros Athlons e
Durons, eram as SDR (tipo mais antigo e
mais lento) que dominavam o mercado.
Apesar de fisicamente muito parecidas, é fácil diferenciar os
pentes SDR, DDR, DDR2 e DDR3, pois cada
uma delas possui um ou mais chanfros que impedem que sejam usadas
inadequadamente (uma vez que todas
são incompatíveis entre si).
De qualquer forma, apesar de toda a evolução a memória RAM continua
sendo muito mais lenta que o
processador. Para atenuar a diferença, são usados dois níveis de
cache, incluídos no próprio processador: o
cache L1, L2 e em alguns modelos de processador, o cache L3.
O cache L1 é extremamente rápido, trabalhando próximo à freqüência
nativa do processador. Na verdade,
os dois trabalham na mesma freqüência, mas são necessários alguns
ciclos de clock para que a informação
armazenada no L1 chegue até as unidades de processamento. Possui
alguns poucos KB de capacidade
(geralmente menos de 128KB) e é dividido em cache de dados e cache
de instruções.
Em seguida vem o cache L2, que é mais lento tanto em termos de
tempo de acesso (o tempo necessário
para iniciar a transferência) quanto em largura de banda, mas é bem
mais econômico em termos de
transistores, permitindo que seja usado em maior quantidade
(podendo chegar a 1 MB).
De uma forma geral, quanto mais rápido o cache, mais espaço ele
ocupa e menos é possível incluir no
processador. Em processadores multicore (vários núcleos), cada
núcleo possui seu próprio cache L1 e L2.
Por fim, temos o cache L3, cada vez mais comum em processadores
modernos, multi-núcleos. Ele é
consideravelmente mais lento que os L1 e L2, e se diferencia dos
demais principalmente por ser de uso
compartilhado entre os núcleos e ter uma capacidade na ordem de
vários megabytes.
1.7.3 HD
No final das contas, a memória RAM funciona como uma mesa
de trabalho, cujo conteúdo é descartado a cada boot. Temos em
seguida o disco rígido, também chamado de hard disk (o termo
em
Inglês), HD ou até mesmo de "disco duro" pelos nossos primos
lusitanos. Ele serve como unidade de armazenamento
permanente,
guardando dados e programas.
O HD armazena os dados em discos magnéticos que mantêm a
gravação por vários anos. Os discos giram a uma grande velocidade
e
um conjunto de cabeças de leitura, instaladas em um braço
móvel
faz o trabalho de gravar ou acessar os dados em qualquer
posição
nos discos. Junto com o CD-ROM, o HD é um dos poucos componentes
mecânicos ainda usados nos micros
atuais e, justamente por isso, é o que normalmente dura menos tempo
(em média de três a cinco anos de uso
contínuo) e que inspira mais cuidados.
Na verdade, os discos magnéticos dos HDs são selados, pois a
superfície magnética onde são armazenados
os dados é extremamente fina e sensível. Qualquer grão de poeira
que chegasse aos discos poderia causar
danos à superfície, devido à enorme velocidade de rotação dos
discos. Fotos em que o HD aparece aberto são
apenas ilustrativas, no mundo real ele é apenas uma caixa fechada
sem tanta graça.
Um fato importante é que, apesar de não ser volátil (ao contrário
das RAMs que perdem todos os dados
assim que o computador é desligado), o HD é muito mais lento que a
memória RAM. Enquanto um simples
módulo DDR2-533 (PC2-4200) comunica-se com o processador a uma
velocidade teórica de 4200 megabytes
por segundo, a velocidade de leitura sequencial dos HDs atuais
(situação em que o HD é mais rápido)
dificilmente ultrapassa a marca dos 100 MB/s, em média.
17
Para piorar as coisas, o tempo de acesso do HD (o tempo necessário
para localizar a informação e iniciar a
transferência) é absurdamente mais alto que o da memória RAM.
Enquanto na memória falamos em tempos
de acesso inferiores a 10 nanosegundos (milionésimos de segundo), a
maioria dos HDs trabalha com tempos
de acesso superiores a 10 milissegundos.
Aos poucos, os discos de estado sólido (SSD’s), que são
dispositivos formatos por memória flash, aos
poucos estão substituindo os HDs em alguns cenários, como para a
instalação de sistemas operacionais. Sua
popularização só não é mais rápida devido ao alto custo e
capacidade significativamente inferior já que, na
questão do desempenho, são indiscutivelmente mais rápidos.
1.7.4 PLACA DE VÍDEO
A placa de vídeo é um dos componentes mais importantes
do PC. Originalmente, as placas de vídeo eram dispositivos
simples, que se limitavam a mostrar o conteúdo da memória de
vídeo no monitor. A memória de vídeo continha um simples
bitmap da imagem atual, atualizada pelo processador, e o
RAMDAC (um conversor digital-analógico que faz parte da placa
de vídeo) lia a imagem periodicamente e a enviava ao monitor.
A resolução máxima suportada pela placa de vídeo era limitada pela
quantidade de memória de vídeo. Na
época, memória era um artigo caro, de forma que as placas vinham
com apenas 1 ou 2 MB. As placas de 1 MB
permitiam usar no máximo 800x600 com 16 bits de cor, ou 1024x768
com 256 cores. Estavam limitadas ao que
cabia na memória de vídeo.
Em seguida, as placas passaram a suportar recursos de aceleração,
que permitem fazer coisas como mover
janelas ou processar arquivos de vídeo de forma a aliviar o
processador principal. Esses recursos melhoram
bastante a velocidade de atualização da tela (em 2D), tornando o
sistema bem mais responsivo.
Finalmente, as placas deram o passo final, passando a suportar
recursos 3D. Imagens em três dimensões
são formadas por polígonos, formas geométricas como triângulos e
retângulos em diversos formatos.
Qualquer objeto em um game 3D é formado por um grande número destes
polígonos, Cada polígono tem sua
posição na imagem, um tamanho e cor específicos. O "processador"
incluído na placa, responsável por todas
estas funções é chamado de GPU (Graphics Processing Unit, ou
unidade de processamento gráfico).
Apesar de o processador também ser capaz de criar imagens
tridimensionais, trabalhando sozinho ele não
é capaz de gerar imagens de qualidade a grandes velocidades (como
as demandadas por jogos complexos),
pois tais imagens exigem um número absurdo de cálculos e
processamento. Para piorar ainda mais a situação,
o processador tem que ao mesmo tempo executar várias outras tarefas
relacionadas com o aplicativo.
As placas aceleradoras 3D, por sua vez, possuem processadores
dedicados, cuja função é unicamente
processar as imagens, o que podem fazer com uma velocidade
incrível, deixando o processador livre para
executar outras tarefas. Com elas, é possível construir imagens
tridimensionais com uma velocidade suficiente
para criar jogos complexos a um alto frame-rate.
Depois dos jogos e aplicativos profissionais, os próximos a
aproveitarem as funções 3D das placas de vídeo
foram os próprios sistemas operacionais. A idéia fundamental é que,
apesar de toda a evolução do hardware,
continuamos usando interfaces muito similares às dos sistemas
operacionais do final da década de 80, com
janelas, ícones e menus em 2D. Embora o monitor continue
sendo uma tela bidimensional, é possível criar a
ilusão de um ambiente 3D, da mesma forma que nos jogos, permitindo
criar todo tipo de efeitos interessantes
e, em alguns casos, até mesmo úteis ;-).
No caso do Windows Vista/7 temos o Aero, enquanto no Linux a
solução mais usada é o AIGLX, disponível
na maioria das distribuições atuais.
18
Com a evolução das placas 3D, os games passaram a utilizar gráficos
cada vez mais elaborados, explorando
os recursos das placas recentes. Isso criou um círculo vicioso, que
faz com que você precise de uma placa
razoavelmente recente para jogar qualquer game atual.
As placas 3D atuais são praticamente um computador à parte, pois
além da qualidade generosa de
memória RAM, acessada através de um barramento muito mais rápido
que a do sistema, o chipset de vídeo é
muito mais complexo e absurdamente mais rápido que o processador
principal no processamento de gráficos.
As placas 3D offboard também incluem uma quantidade generosa de
memória de vídeo (512 MB ou mais
nos modelos mais recentes), acessada através de um barramento muito
rápido. O GPU (o chipset da placa) é
também muito poderoso, de forma que as duas coisas se combinam para
oferecer um desempenho
monstruoso.
Longe do mundo brilhante das placas de alto desempenho, temos as
placas onboard, que são de longe as
mais comuns. Elas são soluções bem mais simples, onde o GPU é
integrado ao chipset da placa-mãe (ou, nas
arquiteturas mais modernas, dentro do próprio processador) e, em
vez de utilizar memória dedicada, como
nas placas offboard, utiliza parte da memória RAM principal, que é
"roubada" do sistema.
De uma forma geral, as placas de vídeo onboard (pelo menos os
modelos que dispõem de drivers
adequados) atuais atendem bem às tarefas do dia-a-dia, com a grande
vantagem do custo. Elas também
permitem rodar os games mais antigos, apesar de, naturalmente,
ficarem devendo nos lançamentos recentes.
As placas mais caras são reservadas a quem realmente faz questão de
rodar os games recentes com uma boa
qualidade. Existem ainda modelos de placas 3D específicos para uso
profissional, como as nVidia Quadro.
1.7.5
PLACA-MÃE
A placa-mãe é o componente mais importante do micro, pois
é ela a responsável pela comunicação entre todos os
componentes. Pela enorme quantidade de chips, trilhas,
capacitores e encaixes, a placa-mãe também é o componente
que, de uma forma geral, mais dá defeitos. É comum que um
slot
PCI pare de funcionar (embora os outros continuem normais),
que instalar um pente de memória no segundo soquete faça o
micro passar a travar, embora o mesmo pente funcione
perfeitamente no primeiro e assim por diante.
A maior parte dos problemas de instabilidade e travamentos
são causados por problemas diversos na placa-mãe, por isso ela
é
o componente que deve ser escolhido com mais cuidado. Em
geral, vale mais a pena investir numa boa placa-mãe e economizar
nos demais componentes, do que o
contrário.
A qualidade da placa-mãe é de longe mais importante que o
desempenho do processador. Você mal vai
perceber uma diferença de 20% no clock do processador, mas com
certeza vai perceber se o seu micro
começar a travar ou se a placa de vídeo onboard não tiver um bom
suporte no Linux, por exemplo.
Ao montar um PC de baixo custo, economize primeiro no processador,
depois na placa de vídeo, som e
outros periféricos. Deixe a placa-mãe por último no corte de
despesas.
Antigamente existia a polêmica entre as placas com ou sem
componentes onboard. Hoje em dia isso não
existe mais, pois todas as placas vêm com som e rede onboard.
Apenas alguns modelos não trazem vídeo
onboard, atendendo ao público que vai usar uma placa 3D offboard e
prefere uma placa mais barata ou com
19
Os conectores disponíveis na placa estão muito relacionados ao
nível de atualização do equipamento.
Placas atuais incluem conectores PCI Express x16, usados para a
instalação de placas de vídeo offboard, slots
PCI Express x1 e slots PCI, usados para a conexão de periféricos
diversos. Placas antigas não possuem slots PCI
Express nem portas SATA, oferecendo no lugar um slot AGP para a
conexão da placa de vídeo e duas ou quatro
portas IDE para a instalação dos HDs e drives ópticos.
Temos ainda soquetes para a instalação dos módulos de memória, o
soquete do processador, o conector
para a fonte de alimentação e o painel traseiro, que agrupa os
encaixes dos componentes onboard, incluindo o
conector VGA ou DVI do vídeo, conectores de som, conector da rede e
as portas USB.
O soquete (ou slot) para o processador é a principal característica
da placa-mãe, pois indica com quais
processadores ela é compatível. O soquete é na verdade apenas um
indício de diferenças mais "estruturais" na
placa, incluindo o chipset usado, o layout das trilhas de dados,
etc. É preciso desenvolver uma placa quase que
inteiramente diferente para suportar um novo processador.
Existem dois tipos de portas para a conexão do HD: as portas IDE
tradicionais, de 40 pinos (chamadas de
PATA, de "Parallel ATA") e os conectores SATA (Serial ATA), que são
muito menores. Muitas placas recentes
incluem um único conector PATA e quatro conectores SATA. Outras
incluem as duas portas IDE tradicionais e
dois conectores SATA, e algumas já passam a trazer apenas
conectores SATA, deixando de lado os conectores
antigos.
Existem ainda algumas placas "legacy free", que eliminam também os
conectores para o drive de disquete,
portas seriais e porta paralela, incluindo apenas as portas USB.
Isso permite simplificar o design das placas,
reduzindo o custo de produção para o fabricante.
1.7.6 HARDWARE X SOFTWARE
Os computadores são muito bons em armazenar informações e fazer
cálculos, mas não são capazes de
tomar decisões sozinhos. Sempre existe um ser humano orientando o
computador e dizendo a ele o que fazer
a cada passo. Seja você mesmo, teclando e usando o mouse, ou, num
nível mais baixo, o programador que
escreveu os programas que você está usando.
Chegamos então aos softwares, gigantescas cadeias de instruções que
permitem que os computadores
façam coisas úteis. É aí que entra o sistema operacional e, depois
dele, os programas que usamos no dia-a-dia.
Um bom sistema operacional é invisível. A função dele é detectar e
utilizar o hardware da máquina de
forma eficiente, fornecendo uma base estável sobre a qual os
programas que utilizamos no cotidiano possam
ser usados. Como diz Linus Torvalds, as pessoas não usam o sistema
operacional, usam os programas
instalados. Quando você se lembra que está usando um sistema
operacional, é sinal de que alguma coisa não
está funcionando como deveria.
O sistema operacional permite que o programador se concentre em
adicionar funções úteis, sem ficar se
preocupando com que tipo de placa de vídeo ou placa de som você
tem. O programa diz que quer mostrar
uma janela na tela e ponto; o modelo de placa de vídeo que está
instalado e que comandos são necessários
para mostrar a janela são problema do sistema operacional.
Para acessar a placa de vídeo, ou qualquer outro componente
instalado, o sistema operacional precisa de
um driver, que é um pequeno programa que trabalha como um
intérprete, permitindo que o sistema converse
com o dispositivo. Cada placa de vídeo ou som possui um conjunto
próprio de recursos e comandos que
permitem usá-los. O driver converte esses diferentes comandos em
comandos padrão, que são entendidos
pelo sistema operacional.
Embora as duas coisas sejam igualmente importantes, existe uma
distinção entre o "hardware", que inclui
todos os componentes físicos, como o processador, memória,
placa-mãe, etc. e o "software", que inclui o
sistema operacional, os programas e todas as informações
armazenadas.
1) O que são sinais digitais e sinais analógicos?
2) Por que é apropriado que computadores trabalhem com os
números binários?
3) A base hexadecimal e a binária são conversíveis entre si
muito facilmente. Você é capaz de justificar o
porquê?
4) Converta os seguintes números binários para os decimais
equivalentes:
a. 001100 b. 000011 c. 011100 d. 111100 e. 101010
5) Converta os seguintes números decimais para os binários
equivalentes:
a. 64 b. 100 c. 111 d. 145 e. 255
6)
a. C b. 9F c. D52 d. 67E e. ABCD
7) Converta os seguintes números hexadecimais para seus
binários equivalentes
a. E b. 1C c. A64 d. 1F e. 239
8) O que é o sinal de clock e por que ele é tão
importante para o computador?
9) Quais os componentes básicos de um PC?
simplesmente CPU (Central Processing Unit) ou ainda em português,
UCP
(Unidade Central de Processamento) – são circuitos
integrados passíveis
de serem programados para executar uma tarefa predefinida,
basicamente manipulando e processando dados. Resumidamente, o
papel
do microprocessador é somente um: pegar dados, processar esses
dados
conforme programação prévia e devolver o resultado. De onde vêm
tais
dados e para onde vai o resultado é, para ele, indiferente.
Tal programação é feita através de instruções. Todo
microprocessador tem um conjunto de instruções, ou
seja, um conjunto limitado de tarefas que pode executar. A uma
sequência de instruções damos o nome de
programa ou software. Para que um processador seja capaz
de executar um programa, ele deverá ser capaz de
reconhecer as instruções presentes no programa.
A relação do processador com o restante do micro é de crucial
importância. É ele que processa programas
e que comanda todas as tarefas produzidas pelo micro, por exemplo,
transferir dados para o vídeo.
Nosso estudo sobre processadores será o mais extenso dessa
disciplina. Isto porque cobriremos
basicamente toda a história dos processadores usados nos
microcomputadores PC. Contudo, você pode estar
se perguntando: Por que não estudamos apenas os processadores
modernos, atualmente em uso? A resposta
é simples e se dá por dois motivos:
1.
Um processador moderno, tecnologicamente avançado, não surge do
nada. Apesar de apresentarem
um ou mais recursos inovadores, a base é sempre uma evolução de
alguma arquitetura anterior. Em
outras palavras, não se reinventa a roda. As arquiteturas e
técnicas usadas são sempre aperfeiçoadas.
2. Um estudo histórico permite compreender gradativamente
evolução dos processadores, quando e
porque cada recurso/tecnologia/conceito surgiu e como isso afetou o
desempenho do sistema. Além
disso, essa abordagem torna mais fácil o aprendizado.
Evidentemente, estudaremos os processadores modernos com maior
riqueza de detalhes (visto serem o
que vocês mais usarão no dia a dia), abordando de maneira resumida
os modelos antigos. De modo geral,
quanto mais antigo um processador, mais objetivamente falaremos
sobre ele.
2.2 PROCESSADORES PRÉ-HISTÓRICOS: DO “PRINCÍPIO” AO
INTEL 486
O primeiro microchip, o 4004, foi lançado pela Intel em 1971. Ele
era um chip bastante primitivo, que
processava instruções de 8 bits, transferia os dados através de um
barramento de apenas 4 bits, operava a
apenas 740 kHz e era muito lento, muito mais que uma calculadora
moderna. Ele era capaz de processar
apenas 74 mil instruções por segundo (ao contrário dos bilhões de
instruções por segundo dos processadores
atuais. Um simples Intel Core i5 passa facilmente de 10 bilhões de
operações por segundo)
Pouco tempo depois, a Intel lançou um processador de 8 bits, o
8008, que foi logo substituído pelo 8080,
uma versão aperfeiçoada que fez sucesso durante muitos anos. Ele
operava a 2 MHz e era capaz de processar
500 mil instruções por segundo, o que na época era um valor
assombroso. Como se não bastasse, ele era
capaz de acessar incríveis 64 kbytes de memória, mais do que
qualquer mortal poderia sonhar... :) O 8080 foi o
chip usado no Altair 8800 que, lançado no final de 1974, é
considerado por muitos o primeiro computador
pessoal da história.
2.2.1 O SURGIMENTO DO PC
Depois dos dinossauros da primeira metade da década de 70, os
computadores pessoais finalmente
começaram a atingir um nível de desenvolvimento suficiente para
permitir o uso de aplicativos sérios.
Surgiram então os primeiros aplicativos de processamento de texto,
planilhas e até mesmo programas de
editoração e desenho, que aproveitavam ao máximo os recursos
oferecidos pelas máquinas de 8 bits da época.
Esse mercado crescente chamou a atenção da IBM, o que levou ao
início da era PC.
A IBM de 1980 era uma empresa especializada em mainframes e
terminais burros. Entretanto, percebendo
a crescente demanda por computadores pessoais, decidiram criar um
pequeno grupo (que originalmente
possuía apenas 12 desenvolvedores) para desenvolver um computador
pessoal, sem grandes pretensões.
O PC era considerado um projeto menor dentro da IBM, apenas uma
experiência para testar a demanda do
mercado. O projeto chegou a ser marginalizado dentro da
empresa,
pois muitos executivos acreditavam que o IBM PC poderia
concorrer
com outros produtos do portfólio da IBM, canibalizando as
vendas.
Depois de quase um ano de desenvolvimento, o projeto rendeu
frutos e o primeiro PC foi lançado em 12 de agosto de 1981.
Para cortar custos e acelerar o desenvolvimento, a equipe
decidiu
que usaria apenas componentes padronizados, que pudessem ser
encontrados facilmente no mercado. O processador escolhido foi
o
Intel 8088, uma versão econômica do 8086, que havia sido
lançado
pela Intel em 1978. Quando a IBM estava desenvolvendo seu
computador pessoal, chegou a ser cogitado o uso
do 8086, mas acabou sendo escolhido o 8088 devido à questão do
custo.
O 8088 é capaz de acessar até 1 MB de memória RAM (embora o PC
original suportasse apenas 256 KB,
devido a limitações por parte da placa-mãe) e funciona a 4.77 MHz,
oferecendo um desempenho mais do que
respeitável para os padrões da época.
O aspecto técnico não foi o determinante para o sucesso do PC. Ele
era um bom computador para a época,
mas era caro e não tinha nada que os concorrentes não pudessem usar
em seus produtos. Ele tinha tudo para
ser apenas mais um no mercado, se não fosse um diferencial
importante: a arquitetura aberta.
Diferente de outros computadores da época, qualquer fabricante
podia desenvolver e vender acessórios
para o PC, sem pagar royalties ou fazer acordos de licenciamento.
Como todos os componentes podiam ser
encontrados no mercado, era possível também desenvolver clones,
computadores compatíveis com o PC,
fabricados por outras empresas. Isso lentamente fez com que toda a
indústria passasse a orbitar em torno do
PC, o que levou a um crescimento assombroso da plataforma.
Na configuração básica (sem monitor, apenas 16 KB de memória RAM,
gabinete e teclado), o PC custava
"apenas" 1.564 dólares da época, mas incluindo mais 48 KB de
memória, dois drives de disquete e um monitor
mono de 12", o preço chegava facilmente a 2.500 dólares, que
equivalem a mais de 7.000 dólares em valores
atuais.
Na época, os HDs ainda eram um componente caro e exótico. Em 1981,
um Seagate ST-506 (o modelo mais
popular até então) custava mais de 1.000 dólares (da época) e tinha
apenas 5 MB de capacidade.
Ao usar um PC sem HD, o sistema operacional e todos os programas
eram carregados a partir de disquetes
de 5¼". Inicialmente eram usados disquetes de 180 KB, mas eles
foram logo substituídos por disquetes de 360
KB (onde eram usadas as duas faces do disco) e, alguns anos mais
tarde, por disquetes de "alta densidade",
com 1.2 MB. Os disquetes de 3.5" com 1.44 MB, usados até pouco
tempo, passaram a ser usados nos PCs
apenas em 1987, com o lançamento do IBM PS/2.
O PC original era monotarefa, de forma que para carregar outro
programa, você precisava primeiro
23
O sistema operacional usado no PC original era o MS-DOS 1.0 (na
época ainda chamado de PC-DOS), que
foi desenvolvido às pressas pela Microsoft com base num sistema
operacional mais simples, o QDOS, que foi
por sua vez comprado da Seattle Computers, uma pequena empresa
desenvolvedora de sistemas.
Na época, a IBM acreditava que ganharia dinheiro vendendo as
máquinas e não vendendo sistemas
operacionais e softwares, o que era considerado um negócio menor,
que acabou sendo dado de bandeja para
a Microsoft.
Com o passar do tempo, os executivos da IBM se arrependeram
amargamente da decisão, pois a
concorrência entre os diversos fabricantes derrubou os preços e as
margens de lucro dos PCs, enquanto a
Microsoft conseguiu atingir um quase monopólio do sistema
operacional e, sem concorrentes de peso, passou
a trabalhar com margens de lucro cada vez maiores.
Um fabricante de memórias, como a Micron, trabalha normalmente com
margens de lucro abaixo de 1%;
conseguem ganhar dinheiro apenas por venderem quantidades muito
grandes. Um integrador como a Dell
trabalha com margens de 3 a 5% (e leva prejuízo às vezes, nas
unidades que ficam muito tempo em estoque
ou não vendem), enquanto a Microsoft (mesmo com toda a pirataria)
trabalha com margens superiores a 80%
vendendo o Windows e Office: um negócio da China.
Voltando à história, dois anos depois foi lançado o PC XT, que
apesar de continuar usando o 8088 de 4.77
MHz, vinha bem mais incrementado, com 256 KB de RAM, disco rígido
de 10 MB, monitor CGA e o MS-DOS
2.0.
O XT se tornou um computador bastante popular, rapidamente clonado
por outros fabricantes, que
passaram a vender versões modificadas, com mais memória, HDs de
maior capacidade, monitores coloridos e
até mesmo versões com processadores da AMD, que vendia uma versão
do 8088 capaz de operar a 10 MHz.
Ele chegou a ser até mesmo fabricado no Brasil, durante a época da
reserva de mercado.
2.2.2 O 286
Depois do XT, o próximo passo foi o PC AT, que foi o
primeiro PC baseado no Intel 286. Ele usava uma versão de 6
MHz do processador (depois surgiram versões mais rápidas,
de 8, 12 e até 16 MHz), HD de 10 MB, monitor EGA
(640x350, com 64 cores) e já usava disquetes de 5¼" de 1.2
MB.
Como a memória RAM ainda era um item muito caro,
existiam versões com de 256 KB a 2 MB de RAM.
O 286 trouxe vários avanços sobre o 8088. Além de
incorporar novas instruções, ele passou a utilizar um
barramento de 16 bits;
O 386 E A ERA DOS 32 BITS
Em outubro de 1985 a Intel lançou o 386, um marco na história dos
computadores, trazendo a primeira
encarnação da arquitetura de 32 bits que continua em uso
basicamente até os dias de hoje.
Possuia as seguintes características:
Barramento de 32 bits (grande ganho de desempenho no acesso
à memória e a possibilidade de usar
barramentos mais rápidos que o ISA).
Endereçamento de 32 bits para acesso à memória, o que tornou
possível acessar até 4 GB (2 elevado a
32ª potência).
24
Permitia rodar um Sistema Operacional “moderno”, como
f oi o Windows 95 para a época.
Opcionalmente, poderia usar o co-processador aritmético, um
processador adicional, que executava
cálculos complexos, as famosas operações de ponto flutuante
(números com “vírgula”, “quebrados”).
Ele era necessário para rodar programas de engenharia, modelagem 3D
e alguns jogos. A partir do 486
ele já vinha incorporado.
Operava a apenas 16 MHz, o que permitia que o processador
operasse à mesma velocidade dos chips
de memória, assim como nos processadores anteriores. Quando foi
lançada a versão de 20 MHz, o
clock do processador havia se tornado maior que o suportado pelos
chips de memória, o que obrigou
os projetistas a introduzirem o uso de ciclos de espera,
prejudicando o desempenho. Para amenizar o
problema, foi introduzido o uso da memória cache.
A memória cache é um tipo de memória ultra-rápida, que armazena os
dados mais usados pelo
processador, evitando na grande maioria dos casos, que ele precise
perder tempo buscando dados
diretamente na lenta memória RAM. Mesmo uma pequena quantidade de
memória cache é capaz de
melhorar bastante a velocidade da troca de dados entre o
processador e a RAM.
Apesar de já ser bem mais rápido que a memória RAM, o 386 ainda não
era um processador muito rápido,
justamente por isso, ainda não era tão dependente do
desempenho da memória cache quanto os
processadores atuais. Um 386 equipado com memória cache é de 20 a
30% mais rápido que um 386 da mesma
frequência, mas sem memória cache, enquanto um processador moderno
pode ficar até 20 vezes mais lento
caso sejam desabilitados tanto o cache L1 quanto o cache L2.
2.2.3.1 PRINCIPAIS RECURSOS TRAZIDOS PELO 386
O 386, através do modo “avançado” de operação conhecido como Modo
Protegido trouxe três novos
recursos, usados até hoje: memória virtual, multitarefa e proteção
de memória.
Memória Virtual: A capacidade do 386 de trabalhar com vários
aplicativos ao mesmo tempo (multitarefa)
é realmente muito útil, mas esta característica traz um pequeno
problema: abrindo vários aplicativos
sucessivamente, logo a memória RAM do sistema se esgota. Para
corrigir este problema, o modo protegido
traz também a memória virtual, que permite criar um arquivo
temporário no disco rígido, chamado de Swap
File, ou arquivo de troca, que funciona como uma extensão da
memória RAM, permitindo abrir quantos
aplicativos forem necessários, até que o espaço do disco rígido se
esgote.
Um exemplo que, apesar de antigo, serve de base é o Windows 2000
Professional. Este, junto com os
serviços básicos ocupa cerca de 40 MB de memória. Se você abrir o
Word 97, serão necessários mais 10 MB,
um total de quase 50 MB. Caso o micro em questão possua apenas 32
MB de memória, seria criado um
arquivo temporário de 18 MB no disco rígido, que armazenaria os
dados que não couberam na memória RAM.
O problema em usar memória virtual é que o disco rígido é centenas
de vezes (hoje em dia esse número é
de centena de milhares) mais lento do que a memória RAM. Um disco
rígido razoável possui um tempo de
acesso em torno de 10 milessegundos (milésimos de segundo) enquanto
um módulo de memória PC-100
possui um tempo de acesso inferior a 10 nanossegundos (bilionésimos
de segundo) ou seja, um tempo de
acesso um milhão de vezes menor! Isso sem falar na taxa de
transferência, que corresponde a velocidade com
que os dados saem do HD e vão para a memória.
Graças a este abismo, apesar dos programas funcionarem normalmente
usando memória virtual, o sistema
vai ficando cada vez mais lento. Isso pode ser facilmente sentido
quando se instala um sistema operacional
mais novo (mais “pesado”, portanto) num PC mais antig