You are on page 1of 12

Memria

Breno Vincius de Paiva1


Resumo
Memria um termo genrico usado para designar as partes do computador
ou dos dispositivos perifricos onde os dados e programas so armazenados.
Sem uma memria de onde os processadores podem ler e escrever
informaes,

no

haveria

nenhum

computador

pode

computador

digital

de

programa

armazenado.
A memria

do

ser dividida

em

duas

categorias:

Principal: de acesso mais rpido, mas de capacidade mais restrita. Armazena


informaes temporariamente durante um processamento realizado pela UCP.
Secundria: de acesso mais lento, mas de capacidade bem maior. Armazena
grande conjunto de dados que a memria principal no suporta.
Palavras Chave: Memrias, Unidade Bsica de Memria, Funcionamento da
Memria.
Abstract
Memory is a generic term used to designate the parts of the computer or
peripheral devices where data and programs are stored. Without a memory
where the processor can read and write information, there would be no digital
computer program stored.
The computer memory may be divided into two categories:
Principal: faster access, but more restricted capacity. Stores information
temporarily during a processing performed by the CPU.
Secondary: slower access, but of much greater capacity. Stores large data set
that the main memory does not support.Keywords: Deadlock. Multithread.
Detection Technique. Shared Resources.

1 Pontifcia Universidade Catlica de Minas Gerais - R. Dom Jos Gaspar, 500 - Corao
Eucarstico, Belo Horizonte - MG{Breno} bvpaiva@sga.pucminas.br

Keywords: Memories, Memory Basic Unit, Memory operation.

UNIDADE

BSICA

DE

MEMRIA

O computador s pode identificar a informao atravs de sua restrita


capacidade de destinguir entre dois estados, por exemplo, algo est imantado
num sentido ou est imantado no sentido oposto. A uma dessas opes o
computador associa o valor 1, e ao outro estado, o valor 0.
Os dgitos 0 e 1 so os nicos elementos do sistema de numerao de base
2, sendo ento chamados de dgitos binrios, ou abreviadamente, bit. Entendase por bit a unidade bsica de memria, ou seja, a menor unidade de
informao que pode ser armazenada num computador.
2 ORGANIZAO DA MEMRIA
Como o valor de um bit tem pouco significado, as memrias so estruturadas
e divididas em conjuntos ordenados de bits, denominados clulas, cada uma
podendo armazenar uma parte da informao.
Se uma clula consiste em k bits ela pode conter uma em 2k diferente
combinao de bits, sendo que todas as clulas possuem a mesma quantidade
de bits.
Cada clula deve ficar num local certo e sabido, ou seja, a cada clula
associa-se um nmero chamado de seu endereo. S assim torna-se possvel
a busca na memria exatamente do que se estiver querendo a cada
momento(acesso aleatrio). Sendo assim, clula pode ser definida como a
menor parte de memria enderevel.
Se uma memria tem n clulas o sistema de endereamento numera as
clulas seqencialmente a partir de zero at n-1, sendo que esses endereos
so fixos e representados por nmeros binrios. A quantidade de bits em um
endereo est relacionado a mxima quantidade de clulas endereveis. Por
exemplo, se um endereo possui m bits o nmero mximo de clulas
diretamente endereveis 2m.
A maioria dos fabricantes de computador padronizaram o tamanho da clula

em 8 bits(Byte). Bytes so agrupados em palavras, ou seja, a um grupo de


bytes(2,4,6,8 Bytes) associado um endereo particular. O significado de uma
palavra que a maioria das instrues operam em palavras inteiras.
Os bytes em uma palavra podem ser numerados da esquerda para direita ou
da direita para esquerda. O primeiro sistema, onde a numerao comea no
lado de alta ordem, chamado de computador big endian, e o outro de little
endian. Ambas representaes so boas mas quando uma mquina de um tipo
tenta enviar dados
para outra, problemas de posicionamento podem surgir. A falta de um padro
para ordenar os bytes um grande problema na troca de dados entre
mquinas

diferentes.

3 O TAMANHO DA MEMRIA
Esse o indicador da capacidade de um computador. Quanto maior ela for,
mais informao poder guardar. Em geral, o tamanho da clula depende da
aplicao desejada para a mquina. Emprega-se clulas pequenas em
mquinas mais voltadas para aplicaes comerciais ou pouco cientificas. Uma
memria com clulas de 1 byte permite o processamento individual de caracter,
o que facilita o processamento de aplicaes como editores de textos.
Por outro lado, clculos cientficos seriam desvantajosos em clulas
pequenas pois nmeros desse tipo precisariam de mais de uma clula para
armazena-los.
A capacidade propriamente dita da memria est relacionada diretamente
quantidade de clulas endereveis.
4 FUNCIONAMENTO DA MEMRIA PRINCIPAL
Toda memria, seja Secundria ou Principal, permite a realizao de dois
tipos de operaes: escrita e leitura.
Entende por leitura a recuperao da informao armazenada e a escrita a
gravao (ou armazenamento) da informao na memria.
No caso da Memria Principal (MP), essas operaes so realizadas pela

UCP e efetuada por clulas, no sendo possvel trabalhar com parte dela.
A leitura no uma operao destrutiva, pois ela consiste em copiar a
informao contida em uma clula da MP para a UCP, atravs de um comando
desta.
Pelo contrrio a escrita uma operao destrutiva, por que toda vez que se
grava uma informao em uma clula da MP, o seu contudo anterior de
eliminado.
5 TIPOS DE MEMRIA
Memria RAM um tipo de memria essencial para o computador, sendo
usada para guardar dados e instrues de um programa. Tem como
caractersticas fundamentais, a volatilidade, ou seja, o seu contedo perdido
quando o computador desligado; o acesso aleatrio aos dados e o suporte
leitura e gravao de dados, sendo o processo de gravao um processo
destrutivo e a leitura um processo no destrutivo. Existem dois tipos bsicos de
memria RAM, RAM Dinmica e RAM Esttica.
Dinmica - Esta uma memria baseada na tecnologia de capacitores e
requer a atualizao peridica do contedo de cada clula do chip consumindo
assim pequenas quantidades de energia, no entanto possui um acesso lento
aos

dados.

Uma

importante

vantagem

grande

capacidade

de

armazenamento oferecida por este tipo de tecnologia.


Esttica uma memria baseada na tecnologia de transistores e no requer
atualizao dos dados. Consome mais energia (o que gera mais calor)
comparando-se com a memria dinmica sendo significativamente mais rpida.
frequentemente usada em computadores rpidos. Possui uma capacidade de
armazenamento bem menor que a memria dinmica.
Vdeo Memria RAM - uma rea especializada da memria RAM onde a
CPU

compe,

detalhadamente,

imagem

mostrada

no

monitor.

especialmente organizada para manipular tanto a qualidade de apresentao

quanto a cor. O buffer de vdeo inicia com 640K, mas seu tamanho e sua
localizao na memria depende do tipo de modo de vdeo em uso.
Os modos de vdeo so: modo texto
e modo grfico. No modo texto, a CPU usa um conjunto de bytes do buffer de
vdeo para prescrever que conjunto de bytes do buffer de vdeo para prescrever
que caractere aparecer, em que posio da tela e com que cor. No modo
grfico, a CPU deve especificar o valor da cor de cada pixel ou ponto da tela. O
Adaptador

de

vdeo

encarrega-se

de

formar

os

caracteres.

ROM - um tipo de memria que contm instrues imutveis, nela esto


localizadas rotinas que inicializam o computador quando este ligado; novoltil, ou seja, os dados no so perdidos com a ausncia de energia;
tambm de acesso aleatrio. Alguns dos tipos de memria ROM so: EPROM
e

EEPROM.
EPROM - um tipo de ROM especial que pode ser programada pelo

usurio. Seu contedo pode ser apagado pela exposio a raios ultravioletas.
EEPROM - tambm um tipo especial de ROM muito semelhante
EPROM, tendo como diferena apenas o fato de que seu contedo apagado
aplicando-se uma voltagem especfica em um dos seus pinos de entrada.
Memria Cache - uma memria de alta velocidade que faz a interface entre o
processador

memria

do

sistema.

A memria RAM dinmica frequentemente usada em computadores


modernos. Isto, devido a caractersticas como: Baixo consumo, Chips de alta
densidade, e baixo custo. No entanto, uma memria lenta no podendo
assim suportar processadores velozes. Quando um processador requer dados
da memria, ele espera receb-los num tempo
mximo.

Isto

chamado

ciclo

de

clock.

Para usar uma memria dinmica lenta com um processador rpido


necessrio um hardware extra(chamado de memria cache) que fica entre o

processador

memria.

Todos os acessos da memria pelo processador so alimentados pelo


sistema de cache. Ela compreende um comparador de endereos que monitora
as requisies do processador, alta velocidade da RAM esttica e chips extras
de

hardware.
O sistema de cache inicia tentando ler tantos dados da memria dinmica

quanto possvel e guarda-os em sua memria esttica de alta velocidade (ou


cache). Quando requisies do processador chegam, ela checa se os
endereos requisitados so os mesmos dos que j foram lidos da memria,
caso seja, os dados so enviados diretamente da cache para o processador,
caso contrrio, ela permite que o processador acesse a memria principal (o
processador realiza este acesso lentamente).Ento o sistema de cache atualiza
seu contedo com o que foi lido da memria pelo processador e tenta ler tantos
dados quanto possvel antes que a prxima requisio do processador chegue.
Quando o sistema de cache atende a uma requisio do processador,
chamado cache hit. Se o sistema de cache no atende a uma requisio do
processador,

MEMRIA

chamado

cache

miss.
SECUNDRIA

A memria principal (ram) no o nico meio de armazenamento existente. Devido a


algumas caractersticas que so peculiares a este tipo de memria - por exemplo:
volatilidade e alto custo - , surgiu a necessidade de implementao de outro tipo de
memria, chamado memria secundria. Este tipo de memria, no voltil, tem maior
capacidade de armazenamento e mais barata. Estas memrias podem ser removveis
ou no. Neste contexto, "removveis" significa que ela pode ser retirada do computador
e transportada facilmente para outro. O winchester ou disco rgido, por exemplo, no
removvel. J os demais podem ser chamados de removveis. Estes so os tipos de
memria secundria disponveis hoje:
* Fitas Magnticas (streamer e dat)
* Discos rgidos e flexveis
* Cd-rom (compact disk read only memory) e Cd-worm (write once read many)
* Zip disks, etc.
Vejamos suas caractersticas:

1. Fitas streamer
Foi o primeiro tipo de memria secundria. Elas so usadas para armazenamento offline de dados (backups de dados, programas, etc.). A aparncia da fita magntica
similar das fitas usadas em gravadores antigos. Ela feita de material plstico coberto
com uma substncia magnetizvel.
Os dados so gravados na fita nos chamados registros fsicos. Cada registro fsico
gravado em trilhas paralelas (geralmente 7 ou 9, com a ltima sendo usada para gravar o
bit de paridade vertical), que por sua vez so subdivididas em frames. Cada frame o
espao usado para armazenar 1 byte, alm de um bit extra, o bit de paridade
(horizontal). O espao entre um registro e outro
chamado de gap. Quando so usados registros pequenos, parte da capacidade da fita
gasta nos gaps. Portanto, devem ser usados registros maiores possveis, para reduzir ao
mximo esta perda.
A vantagem do uso de fitas que elas so compactas, portteis, possuem alta
capacidade de armazenamento e so baratas.
A grande desvantagem da fita seu acesso seqencial. Por exemplo, para ler um
registro que est no final da fita, deve-se passar por todos os outros registros. Em mdia,
para se ler um registro de uma fita com n registros, passa-se por n/2 registros.
2. Fitas dat
So a segunda gerao das fitas magnticas. Menores, mais fceis de armazenar e
mais seguras, permitem um armazenamento maior de dados. Sua grande capacidade (2 a
4GB) a torna tima para backup de grandes volumes de dados. Sua aparncia
assemelha-se de uma fita de vdeo, mas com um tamanho bem menor. Uma fita de 2
GB custa 15 dlares, enquanto que seu acionador (drive) custa em torno de 1000
dlares.
3. Discos Flexveis ou disquetes
So o meio de armazenamento mais popular. Seu "inventor" foi a IBM, para guardar
informaes sobre a manuteno dos Mainframes. Logo depois, comeou a ser usado
pelos fabricantes de software para distribuio de programas. Consistem de um disco
plstico recoberto por uma camada de material magntico. Eles so logicamente
divididos em setores e trilhas. Trilhas so grupos de bytes que esto a uma mesma
distncia do centro do disco.
Setores so divises de 512 bytes de uma trilha. A menor unidade de armazenamento
neste tipo de disco (e nos winchesters) a unidade de alocao. Cada unidade de
alocao pode ter um ou mais setores, mas nos disquetes esta unidade de alocao
eqivale apenas a um setor (512 bytes). Quando compramos um disquete s vezes
precisamos formata-lo, isto , prepara-lo para uso. O processo de formao consiste na
diviso lgica do disco em setores e trilhas, e na construo de uma tabela chamada FAT

(Files Allocation Table), que a responsvel pela guarda de informaes sobre os


arquivos (tamanho, setor inicial, nome, data de ltima alterao, etc.) e sobre o disco
(nmero de unidades de alocao, tamanho do disco, setores defeituosos, setores livres,
etc.).
Os primeiros disquetes com grande uso foram os de 8 polegadas. Possuam
capacidade de gravao de 180kbytes. Depois, apareceram os de 5,25 polegadas, que
tinham dupla face e capacidade de gravao de 360 kbytes (baixa densidade), e 1.2 Mb
(alta densidade). Por ltimo, surgiram os de 3,5 polegadas, que, alm de mais seguros,
possuem capacidade de armazenamento maior.
Vale ressaltar ainda que as cabeas de leitura-gravao tocam a superfcie do disco, o
que torna sua vida menor se comparada aos discos rgidos.
Tamanho (polegadas)
5,25 (DD)
5,25 (HD)
3,5 (DD)
3,5 (HD)
Capacidade (bytes)
360k
1,2M
720K
1.44M
Trilhas
40
80
80
80
Setores/Trilha
9
15
9
18
Lados ou faces
2
2
2
2
Rotaes por minuto do acionador
300

360
300
300
Taxa de transferncia (kbps)
250
500
350
500
4. Discos rgidos (winchesters)
Consistem de um conjunto de discos magnticos empilhados, dentro de uma caixa de
metal blindada a vcuo. Cada disco possui duas faces, cada face tendo sua cabea de
leitura/gravao exclusiva. A diviso lgica de cada disco a mesma dos disquetes,
mas, devido ao empilhamento dos discos, surgiu um novo conceito: cilindro. Um
cilindro nada mais do que o conjunto de trilhas que esto na mesma posio em cada
disco. Por exemplo: o cilindro 0 o conjunto de todas as trilhas 0 dos sub-discos que
compem o disco rgido. Cilindro 1 o conjunto de todas as trilhas 1... e assim por
diante.
Atualmente h dois padres de discos rgidos mais usados: o padro IDE e o padro
SCSI. O padro IDE, mais antigo, vai aos poucos sendo substitudo pelo SCSI, que
mais veloz, e velocidade de acesso aos dados, como todo mundo sabe, um dos
"gargalos" que fazem com que os computadores no sejam mais rpidos ainda.
Os primeiros winchesters que chegaram aqui tinham 5 a 10 Mb. Eles foram
evoluindo rapidamente, e hoje j h discos rgidos de at 4 Gb (em PCs) ou mais (em
grandes computadores), isto , quase 1000 vezes a quantidade inicial citada!
Mas, como no podia deixar de ser, h um problema que merece
ser citado. Quanto maior os discos, maior o tamanho de sua unidade de alocao, isto ,
mais setores ter esta unidade de alocao. Como cada arquivo obrigatoriamente ocupa
uma unidade de alocao, quanto maior for esta mais espao ocupar o arquivo. Para
solucionar este problema, aconselhvel dividir o seu disco rgido em unidades lgicas
ou parties. Por exemplo, um disco de 2 Gb, que poder ser apenas uma unidade lgica
(C:) poder ser dividido em duas unidades (C: e D:). Com isto, estaremos ganhando
mais espao de armazenamento, pois estaremos diminuindo o tamanho de nossa unidade
de alocao.
Alguns conceitos importantes:
Tempo de seek (procura): o tempo gasto para a cabea de leitura/gravao se
posicionar na trilha correta. Varia de 3 ms (para trilhas adjacentes) e at 100 ms (para
trilhas que esto nos extremos do disco).
Latncia rotacional: o tempo gasto para localizar o setor ao qual se quer ter acesso.

O tempo total de acesso a soma destes dois tempos (seek + latncia rotacional). A
latncia rotacional varia de 0 ao tempo de uma rotao completa (a 3600 rpm, a LR
16,67 ms).
Tempo de transferncia: o tempo gasto para a migrao dos dados da memria
secundria para a memria principal.
Tempo de acesso: a soma dos tempos: seek + latncia + transferncia.
Taxa de transferncia: a velocidade com a qual os dados migram da memria
secundria para a memria principal. Ex.: 1.200 kbps.
5. Cd-rom
Desenvolvido inicialmente pela Philips, e em seguida com a colaborao da Sony, os
cd-roms tm se tornado muito populares. Seguros, durveis, fceis de armazenar e com
alta capacidade de armazenamento, eles tm se tornado um grande meio de distribuio
de programas.
O nome cd-rom vem de compact disk read only memory. Como o prprio nome diz,
ele uma memria rom, isto , memria somente leitura que no pode ser alterada.
Discos gravveis (cd-r) sero estudados na prxima seco.
Um cd gravado utilizando um laser de alta potncia. Com este laser so feitos furos
(pits) em um disco matriz. As reas no furadas entre os pits so chamadas lands. Com
os pits tm uma refletividade diferente dos lands, pode-se, assim, representar uma
informao digital (dois estados). Desta matriz feito um molde, que usado para
estampar as cpias. Depois, cada cpia recebe uma fina camada de alumnio, que
recoberta por outra fina camada de plstico.
A diviso lgica dos Cds totalmente diferente de um disquete ou disco rgido. Os
dados no so gravados em trilhas e setores, mas numa espiral contnua, em blocos de
dados. Um cd de 553 Mb, por exemplo, tem 270.000 blocos de dados.
Os cds so muito usados na distribuio de programas, clipes multimdia,
enciclopdias multimdia, etc. Algumas capacidades: 600Mb, 650Mb, 700Mb.
Sua velocidade de acesso depende da velocidade do drive de cd (8x, 16x, 20x, 22x).
6. Cd-r (worm)
A sigla
Cd-r significa cd recordable. Um cd deste tipo pode ser gravado somente uma vez.
Representam uma evoluo dos Cd-rom comuns justamente pela capacidade de serem
gravveis pelo usurio comum. Gravao, no regravao, pois cada pit, quando feito
(queimado), no tem condies de ser apagado. Por isso, este tipo de cd permite que
seja gravado somente uma vez. Um exemplo de gravador deste tipo o Blaster Cd-r
4210, da Creative Labs, capaz de gravar 650 Mb de dados ou 75 minutos de udio.
Custa 940 reais e gasta cerca de duas horas para terminar a gravao do cd.
A terceira fase da evoluo dos discos ticos o cd tico apagvel. Com este tipo de
mdia, podem ser realizadas vrias gravaes. Como? Utilizando-se ligas metlicas
exticas, que mudam suas propriedades de acordo com a temperatura. Na temperatura

ambiente, suas propriedades no so alteradas, mas, a altas temperaturas, estas ligas


(trbio, gadolnio), ficam sensveis a campos magnticos. Ento, para gravar nestes cds,
basta que se eleve a temperatura a um nvel que sensibilize estas ligas (utilizando laser),
e a, s aplicar o campo magntico (atravs da cabea magntica) devidamente,
gravando os dados.
Mas, ser que estes ltimos iro substituir os discos rgidos? Por enquanto, no.
Primeiro: seu tempo de seek de uma ordem de grandeza muito maior que dos discos
rgidos. Segundo: sua taxa de transferncia bem menor que tais discos. Enquanto os
discos ticos iro melhorar com o tempo, o discos rgidos iro melhorar talvez na
mesma proporo, fazendo com que eles estejam sempre melhores.
7. Novas solues em dispositivos de armazenamento.
Zip disks - Zip disks so como "disquetes" de alta capacidade. Surgiram da
necessidade de transporte e backup de grande quantidade de dados que no cabiam em
um nico disquete. Seu uso est em expanso, com os preos j ficando mais acessveis
aos usurios no corporativos. A empresa pioneira neste tipo de mdia foi a Iomega, com
o seu Zip drive (5,25 polegadas de tamanho). Cada zip drive custa hoje em torno de
US$ 150 e um cartucho (de 10 Mbytes) est em torno de US$ 14, isto , 14 centavos por
megabyte! Os zip drives podem ser instalados no computador a partir da porta paralela,
mas torna-se inaconselhvel pela perda de desempenho. Para melhor desempenho, deve
ser instalado juntamente com uma placa SCSI interna. Este tipo de memria
considerada a "nova gerao" de discos flexveis.
Super discos flexveis (discos magneto-opticos). Sua capacidade est em torno de 200
a 250 MB. Nesta categoria enquadram-se o MO 3,5 polegadas (Fujitsu, Olympus e
Pinnacle) e o MO de 5,25 polegadas (HP, Sony). Este tipo de mdia, apesar do alto
desempenho, segurana e capacidade de armazenamento, muito cara, tornando-se
relegada a mercados especficos. O preo das unidades varia de 250 a 500 dlares. Vale
observar que, a partir de unidades MO, pode-se reproduzir clipes multimdia
satisfatoriamente.
Memria virtual uma tcnica sofisticada e poderosa de gerncia de memria, onde as
memrias principal e secundria so combinadas, dando ao usurio a iluso de existir
uma memria muito maior que a capacidade real da memria principal. O conceito de
memria virtual fundamenta-se em no vincular o endereamento feito pelo programa
aos endereos fsicos da memria principal. Desta forma, programas e suas estruturas de
dados deixam de estar limitados ao tamanho da memria fsica disponvel, pois
podem possuir endereos associados memria secundria. Ou seja, uma forma de
contornar a falta de memria RAM, de forma que o computador utiliza a memria do
HD para que possa criar virtualmente uma memria, que funcione que nem a RAM, mas
muito mais lenta.
O dispositivo de hardware responsvel pela traduo de endereos virtuais a unidade
de gerncia de memria (Memory Management Unit MMU). Esta acionada sempre
que se faz referncia a um endereo virtual.

Tcnicas utilizadas em sistemas com memria virtual:


Paginao: espao virtual o espao de memria que pode ser referenciado por um
programa qualquer em dado processador. Em um computador sem memria virtual, o
endereo virtual corresponde ao endereo efetivamente colocado no duto de
endereamento da memria. Quando o computador possui memria virtual, esse
endereo virtual enviado para uma unidade de gerenciamento de memria (MMU),
que corresponde a um chip ou um conjunto de chips que translada esse endereo virtual
em um endereo fsico, de acordo com uma tabela.
O espao de endereos virtuais dividido em unidades chamadas pginas e o espao de
memria fsica dividido em unidades chamadas quadros de pgina, de mesmo
tamanho das pginas. A MMU tem uma tabela que indica para cada pgina, qual o
quadro de pgina
que corresponde mesma.
Como nem todas as pginas do espao virtual podem estar residentes na memria
simultaneamente pode ocorrer o caso de que um acesso seja realizado para um pgina
que no est na memria. Para saber isso a MMU mantm na tabela de translao um
bit para cada pgina que indica se a mesma est presente ou no na memria. Se um
acesso for realizado a uma pgina ausente, gerada uma falta de pgina, que chama
uma rotina de tratamento de interrupo especfica para o SO, que ento se encarrega do
carregamento da pgina faltante e o ajuste correspondente na tabela de translao.
A paginao fornece uma forma de se conseguir grandes espaos de endereamento
lineares em uma quantidade finita de memria fsica.
Segmentao: Na segmentao temos um espao bidimensional no sentido de que
dividido em certo nmero de segmentos, cada um com dado nmero de bytes. Dessa
forma, um endereamento sempre expresso da forma (segmento, deslocamento). Os
diferentes segmentos so associados a diversos programas ou mesmo arquivos, de forma
que neste caso, os arquivos podem ser acessados como se fossem posies de memria.
Na segmentao os programadores tentam colocar entidades diferentes em segmentos
diferentes para facilitar o compartilhamento de objetos entre processos diferentes.

Tabela1.Indicadoresdacapacidadeeequivalncias
1K

equivale a

210

1M

equivale a

220

1G

equivale a

230

1T

equivale a

240