Sie sind auf Seite 1von 4

Como funciona a memória do computador

Fonte: por Jeff Tyson - traduzido por HowStuffWorks Brasil


Extraído de: http://informatica.hsw.uol.com.br/memoria-do-computador.htm
Introdução
É incrível a quantidade de memórias eletrônicas encontradas atualmente. Muitas delas têm se tornado parte integral de nosso
vocabulário:

• memória RAM
• memória ROM
• memória cache
• memória RAM dinâmica
• memória RAM estática
• memória flash
• memory Stick
• memória virtual
• memória de vídeo
• BIOS
Você já sabe que [..] a maioria dos itens eletrônicos que usa todos os dias também tem algum tipo de memória. Aqui estão apenas
alguns exemplos:
• telefones celulares
• PDAs
• videogames
• aparelhos automotivos de rádio
• videocassetes
• TVs
Cada um desses aparelhos usa, de maneiras distintas, diferentes tipos de memória.

[..]

Elementos básicos da memória de um computador


Apesar da memória ser, tecnicamente, qualquer forma de armazenamento eletrônico, o termo é usado com freqüência para
identificar formas de armazenamento rápido e temporário. Se a CPU de seu computador precisasse acessar constantemente o
disco rígido para recuperar todas as porções de dados que necessitasse, com certeza operaria vagarosamente. Quando a
informação é mantida na memória, a CPU pode acessar os dados com mais rapidez. A maioria das formas de memória são
destinadas à armazenagem temporária de dados.

Como você pode ver na figura acima, a CPU acessa a memória de acordo com uma hierarquia distinta. Vinda do armazenamento
de dados permanente (disco rígido) ou da entrada de dados (teclado), a maioria das informações vai primeiro para a memória de
acesso aleatório (RAM). A CPU, então, armazena as partes dos dados que precisará acessar com freqüência no cache, e
mantém certas instruções especiais em registrador. Sobre os caches e registradores, falaremos mais adiante.
Todos os componentes no seu computador, como a CPU, o disco rígido e o sistema operacional, trabalham juntos como um time.
Nele, a memória desempenha uma das funções essenciais. Desde o momento em que o computador é ligado até a hora de
desligá-lo, a sua CPU está constantemente usando a memória. Vamos ver um cenário típico:

• você liga o computador;


• o computador carrega os dados da memória apenas de leitura (ROM) e executa um auto-teste de energia (POST -
Power-On Self Test) para ter certeza de que a maioria dos componentes principais está funcionando corretamente. Uma
parte desse teste, o controle de memória, checa todos os endereços de memória com um rápido processo de
leitura/escrita, operação executada para certificar-se de que não há erros nos chips de memória. Esse processo permite
que os dados sejam gravados em um bit e então lidos a partir desse bit;
• o computador carrega o sistema básico de entrada/saída (BIOS - Basic Input/Output System) da memória ROM. A
BIOS fornece a maioria das informações básicas sobre os dispositivos de armazenamento, seqüência de boot,
segurança, plug-and-play (auto reconhecimento de dispositivo), capacidade e alguns outros itens;
• o computador carrega o sistema operacional (SO) do disco rígido no sistema de memória RAM. Geralmente, as
partes críticas do sistema operacional são mantidas na memória RAM enquanto o computador é ligado. Isso permite que
a CPU tenha acesso imediato ao sistema operacional, o que aumenta a performance e a funcionalidade do sistema como
um todo;
• quando você abre um aplicativo, ele é carregado na memória RAM. Para preservar o uso dessa memória, muitos
aplicativos são carregados, inicialmente apenas em suas partes essenciais, sendo outras partes carregadas conforme a
necessidade;
• depois que um aplicativo está carregado, qualquer arquivo aberto para uso no aplicativo é carregado na memória RAM;
• quando você salva um arquivo e fecha o aplicativo, o arquivo é gravado no disco de armazenamento e, então, ele e o
aplicativo são removidos da memória RAM.

Como observado na lista acima, cada vez que algo é carregado ou aberto é então colocado na memória RAM. Isso significa que
eles são simplesmente colocados na área temporária de armazenamento do seu computador, para que a CPU possa acessar a
informação mais facilmente. A CPU requisita os dados de que necessita da memória RAM. Novos dados, que já foram processados
e gravados, voltam para a RAM em um ciclo contínuo. Na maioria dos computadores, essa troca de dados entre a CPU e RAM
acontece milhões de vezes por segundo. Quando os aplicativos são fechados, eles e outros arquivos relacionados são
normalmente removidos (deletados) da memória RAM, para dar lugar a novos dados. Se os arquivos alterados não forem salvos
em uma unidade de armazenamento permanente antes de serem removidos, serão definitivamente perdidos.
Uma questão comum sobre computadores de mesa (desktops) é: "por que o computador precisa de tantos sistemas de memória"?

Tipos de memória de um computador


Um computador comum tem:

• memória cache nível 1 e nível 2


• sistema normal de memória RAM
• memória virtual
• disco rígido
Para que tantas memórias? A resposta para essa pergunta pode lhe ensinar muito sobre o assunto!
CPUs rápidas e potentes precisam de acesso ágil e fácil a uma grande quantidade de dados para maximizar sua performance. Se
a CPU não pode pegar os dados de que precisa, ela literalmente pára e espera por eles. As CPUs modernas com velocidade na
faixa de 1 gigahertz podem manipular uma grande quantidade de dados, potencialmente bilhões de bytes por segundo. O
problema enfrentado pelos projetistas é que uma memória capaz de acompanhar a velocidade de uma CPU de 1 gigahertz é
extremamente cara para a comercialização em grandes quantidades.
Os projetistas têm resolvido o problema de custo por meio das "camadas" de memória, usando memória cara em pequenas
quantidades e então reforçando-a com grandes quantidades de memória mais baratas.
A forma mais barata de memória de leitura/escrita, amplamente utilizada hoje, é o disco rígido. Os discos rígidos fornecem grandes
quantidades de armazenamento permanente e barato. Você pode comprar discos rígidos a um custo de centavos por megabyte,
porém, pode levar um bom tempo (aproximadamente um segundo) para ler um megabyte do disco rígido. Devido ao espaço de
armazenamento em um disco rígido ser tão barato e abundante, ele representa o estágio final da hierarquia da memória da CPU,
chamado memória virtual.
O próximo estágio da hierarquia é a memória RAM [..] e muitos pontos sobre ela são importantes aqui.
O tamanho em bit de uma CPU lhe diz quantos bytes de informação ela pode acessar da RAM ao mesmo tempo. Por exemplo,
uma CPU de 16 bits pode processar 2 bytes ao mesmo tempo (1 byte = 8 bits, então 16 bits = 2 bytes) e uma CPU de 64 bits pode
processar 8 bytes ao mesmo tempo.
Megahertz (MHz) é a medida de velocidade de processamento da CPU (ciclo de clock) em milhões por segundo. Assim, um
Pentium III de 32 bits e 800-Mhz pode processar potencialmente 4 bytes simultaneamente, 800 milhões de vezes por segundo,
possivelmente fortemente baseado no pipelining (arquitetura do processador que permite a execução de inúmeras atividades ao
mesmo tempo). O objetivo do sistema de memória é encontrar alguns desses requisitos.
Sozinho, o sistema de memória RAM do computador não é rápido o suficiente para estar compatível com a velocidade da CPU. É
por isso que ele precisa de um cache (discutido mais adiante). Entretanto, quanto mais rápida a memória RAM, melhor. A maioria
dos chips hoje opera com um ciclo de acesso à memória de 50 a 70 nanossegundos. A velocidade de leitura/escrita é tipicamente
proveniente do tipo de memória RAM usada como DRAM, SDRAM, RAMBUS.
Primeiro, vamos falar sobre o sistema RAM.
Sistema de Memória RAM
A velocidade do sistema de memória RAM é controlada pela largura do barramento (bus) e pela velocidade de barramento. A
largura de barramento se refere ao número de bits que podem ser enviados à CPU simultaneamente, e a velocidade de barramento
se refere ao número de vezes que um grupo de bits pode ser enviado a cada segundo. Um ciclo de barramento ocorre toda vez
que dados trafegam da memória para a CPU.
Por exemplo, um barramento de 100 Mhz e 32 bits é teoricamente capaz de enviar 4 bytes (32 bits divididos por 8 = 4 bytes) de
dados para a CPU, 100 milhões de vezes por segundo, enquanto um barramento de 66Mhz e 16 bits pode enviar 2 bytes de dados,
66 milhões de vezes por segundo. Se você fizer as contas, descobrirá que simplesmente mudando a largura de barramento de 16
bits para 32 bits e a velocidade de 66 MHz para 100 MHz, por exemplo, permitirá que três vezes mais dados (400 milhões de bytes
contra 132 milhões de bytes) passem através da CPU a cada segundo.
Na realidade, a memória RAM raramente opera em velocidade otimizada. A latência muda a equação radicalmente. Ela se refere
ao número preciso de ciclos de clock necessários para ler um bit de informação. Como exemplo, a RAM com taxa de 100 MHz é
capaz de enviar um bit em 0,00000001 segundos, mas pode levar 0,00000005 segundos para começar o processo de leitura do
primeiro bit. Para compensar a latência, a CPU usa uma técnica especial chamada modo burst.
O modo burst depende da expectativa de que os dados requisitados pela CPU serão armazenados em células seqüenciais de
memória. O controlador de memória antecipa que qualquer trabalho que a CPU esteja realizando continue a vir da mesma série de
endereços de memória, de modo que ela leia vários bits de dados consecutivos em conjunto. Isso significa que somente o primeiro
bit está sujeito ao efeito total da latência; ler bits sucessivos leva significativamente menos tempo. A taxa do modo burst da
memória é normalmente expresso como quatro números separados por traços. O primeiro número informa o número de ciclos
de clock necessários para começar a operação de leitura; o segundo, o terceiro e o quarto mostram quantos ciclos são necessários
para ler cada bit consecutivo em uma linha, também conhecida como wordline. Por exemplo: 5-1-1-1 dizem a você que leva 5
ciclos para ler o primeiro bit e um ciclo para cada bit depois dele. Obviamente, quanto menores estes números, melhor é a
performance da memória.
O modo burst é freqüentemente usado com o pipelining, outro meio de minimizar os efeitos da latência. O pipelining organiza
a recuperação dos dados em um tipo de processo de linha de montagem. O controlador de memória lê, simultaneamente, uma ou
mais palavras da memória, envia a palavra ou as palavras atuais para a CPU e grava uma ou mais palavras nas células de
memória. Usados em conjunto, o modo burst e o pipelining podem reduzir drasticamente o atraso causado pela latência.
Então, por que você não compraria a memória maior e mais rápida possível? A velocidade e o tamanho do barramento de memória
devem ser compatíveis com o barramento do sistema. Você pode usar a memória designada para trabalhar a 100 MHz em um
sistema de 66-MHz, mas ela vai funcionar a uma velocidade de barramento de apenas 66-MHz, não trazendo, portanto, nenhuma
vantagem. Além disso, uma memória de 32 bits não caberia em um barramento de 16 bits.
Mesmo com um barramento grande e rápido, os dados demoram mais para irem da placa de memória à CPU do que a CPU pode
processar os dados. É nesse contexto que surge a idéia da memória cache.

Memória cache e registradores


As memórias cache são designadas para aliviar esse gargalo, fazendo com que os dados usados com mais freqüência pela CPU
estejam instantaneamente disponíveis. Isso é conseguido através da construção de uma pequena quantidade de memória,
conhecida como memória primária ou cache nível 1 (L1), localizada dentro da CPU. O cache nível 1 é muito pequeno,
normalmente variando entre 2 kilobytes (KB) e 64 KB.
O cache secundário, ou de nível 2 (L2), geralmente fica em uma placa de memória perto da CPU. Esse cache tem uma conexão
direta com a CPU. Um circuito integrado dedicado na placa mãe, o controlador L2, regula o uso do cache de nível 2 pela CPU. O
tamanho desse cache varia de 256 KB a 2 megabytes (MB), dependendo da CPU. Na maioria dos sistemas, os dados necessários
à CPU são acessados do cache em aproximadamente 95% do tempo, reduzindo em muito a espera da CPU pelos dados da
memória principal.
Alguns sistemas mais acessíveis em termos de preço, em geral dispensam o cache nível 2. Muitas CPUs de alta performance têm
agora esse cache embutido dentro do próprio chip da CPU. Assim, seu tamanho e o fato de serem onboard (na CPU), são fatores
determinante na performance da máquina.
Um tipo particular de RAM, a memória estática de acesso aleatório (SRAM), é usada principalmente para implementar a
memória cache. A SRAM usa transistores múltiplos, normalmente de quatro a seis, para cada célula (bit) de memória. Ela possui
uma matriz externa de portas, conhecida como multivibrador bi-estável (flip-flop) que chaveia entre dois estados. Isso significa
que ela não tem que ficar sendo refrescada continuamente como a DRAM. Cada célula mantém seus dados, enquanto estiver
energizada. Sem precisar ficar sendo constantemente refrescada, a SRAM pode operar com extrema rapidez. Porém, a
complexidade de cada célula faz com que seja proibitivo o seu uso como um padrão de memória RAM.
A SRAM utilizada na memória cache pode ser assincrônica ou sincrônica. A SRAM sincrônica é projetada para ter velocidade
igual a velocidade da CPU, enquanto a assincrônica não. Esse ínfimo lapso de tempo faz toda a diferença na performance. Igualar
a velocidade do clock da CPU é interessante, então sempre procure por RAM sincrônica.
O passo final em memória são os registradores. Eles são células de memória embutidas na CPU, que contêm dados específicos
para seu uso, especialmente a unidade de aritmética e lógica (ULA). Parte integrante da própria CPU, ela é controlada
diretamente pelo compilador, que envia as informações a serem processadas na CPU.
A memória pode ser dividida em duas categorias principais: volátil e não-volátil. A memória volátil perde os dados cada vez que o
sistema é desligado e precisa de energia para ser acessada. A maioria dos tipos de memória RAM incluem-se nesta categoria.
Módulos de memória RAM
De cima para baixo: SIMM, DIMM e SODIMM
A memória não-volátil não perde seus dados quando o sistema ou o dispositivo é desligado. Essa categoria abrange inúmeros tipos
de memória. A mais familiar é a ROM, mas dispositivos de armazenamento do tipo memória flash, como os cartões CompactFlash
e SmartMedia, são também formas de memória não-volátil.

Módulo de memória ROM

Das könnte Ihnen auch gefallen