Beruflich Dokumente
Kultur Dokumente
GESTO DE MEMRIA
INTRODUO
A organizao e gesto de memria primria tem sido um dos factores mais importantes que
influemciam o desenho dos Sistemas Operativos.
Programas mais dados devem estar na memria primria de modo a corer ou serem directamente
referenciados pelo CPU.
A memria secundria (discos, tambores e fitas magnticas, ) providenciam uma grande
capacidade e mais barata para guardar programas e dados que devem estar disponiveis para
processamento.
ORGANIZAO DE MEMRIA
Historicamente, a organizao e gesto da memria principal do computador tem grandemente
afectado a evoluo dos sistemas operativos. A organizao da memria a maneira como a
memria deve ser vista.
A memria tem sido vista como um recurso muito carro e por conseguinte requereu sempre a
ateno dos desenhadores dos sistemas que tm tentado sempre optimizar a sua utilizao.
Embora o seu preo tem vindo a reduzir-se , continua contudo cara em releo a memria
secundria. Assim, existem vrios esquemas de organizao e gesto de memria:
1.
2.
3.
4.
5.
Sistemas Operativos
Gesto de Memria
Pagina 1
GESTO DE MEMRIA
Independetemente do esquema de organizao adoptado para um sistema em particular,
necessrio decidir que estratgias devem ser empregues para se obter uma ptima
performance. As estratgias de gesto de memria determinam como uma dada organizao
de memria funciona sob vrias polticas:
1.
2.
3.
4.
5.
Os sistemas operativos tem sido implementados usando cada uma destas estratgias de gesto de
memria.
HIERARQUIA DE MEMRIA
Os sistemas de memria de computadores tornaram-se hierrquicos consistindo de vrias
camadas de memria:
i.
ii.
iii.
Memria Cache
Memria Primria
Memria Secundria
Tempo de acesso
Diminui
Memria Cache
Velocidade de
acesso aumenta
Custo de memria
por bit aumenta
Capacidade de
armazenamento
diminui
Fig. 1.1
Memria Primria
Memria Secundria
Programas
mais dados
podem ser
referenciados
directamente
pelo CPU.
Sistemas Operativos
Gesto de Memria
Pagina 2
ii.
iii.
Estratgias de busca
a pedido
- por antecipao
Estratgias de colocao
Estratgias de substituio
As estratgias de busca visam determinar quando que a prxima parte do programa ou dados
deve ser carregada na memria. Nas estratgias de busca por pedido, o programa e dados sero
trazidos para a memria quando especificamente forem requeridos. Nas estratgias de busca por
antecipao, o sistema antev as necessidades do programa e tenta carregar na memria os
mdulos do programa e dados necessrios antes de efectivamente serem necessrios. Quando
forem necessrios estaro disponveis na memria e o programa pode continuar em execuo
sem demora.
As estratgias de colocao visam determinar aonde na memria principal dever ser colocado
um novo programa. H trs tipos a saber:
i.
ii.
iii.
Onde primeiro se ajusta o programa colocado no primeiro bloco de memria principal capaz
de o albergar.
Onde melhor se ajusta o programa colocado no bloco de memria principal onde melhor se
ajusta, isto , o menor bloco livre mas capaz de albergar o programa de modo a deixar
(disperdiado) o menor espao possvel.
Sistemas Operativos
Gesto de Memria
Pagina 3
Onde pior se ajusta o programa colocado no maior bloco livre de memria principal de modo
a deixar (livre) o maior bloco possvel.
As estratgias de Substituio visam determinar qual dos programas existentes na memria
dever ser removido para dar lugar ao novo programa.
Sistema Operativo
Programa do Utilizador
b
No usada
c
Fig 1.2
Sistema Operativo
Registo de delimitao
a
Programa do Utilizador
b
No usada
Fig 1.3 Proteco de memria num sistema de alocao contigua para um programa do utlizador
Sistemas Operativos
Gesto de Memria
Pagina 4
Gesto de Memria
Pagina 5
CPU
0
Sistema Operativo
baixa delimitao
a
c
b
Partio 1
alta delimitao
Partio 2
c
Partio 3
d
No usada
e
Fig 1.4
Proteco de memria em alocao de memria contigua em sistemas de
multiprogramao. Todos os registos gerados por um programa em execuo so verificados
para se apurar se se encontram dentro dos limites permitidos b e c.
Coalescing Holes
Em multiprogramao de partio varivel quando os trabalhos terminam deixam livres os
blocos de memria que ocupavam. Estes blocos podem ser registados e comporem uma lista de
blocos livres de memria de modo que os blocos adjacentes podem ser juntados para formar um
bloco maior. O processo de anexar blocos adjacentes livres de memria para formar o maior
possvel bloco de memria chamado coalescing holes.
Compactao de Memria
Mesmo com a compactao dos blocos livres de memria, possivel que uma considervel
quantidade de memria livre se encontre espalhada ao longo da mesma atravs de pequenos
blocos separados. Neste caso pode ser que o sistema no tenha bloco de memria contguo
suficiente para correr um programa. A tcnica de compactao de memria permite mover todos
Sistemas Operativos
Gesto de Memria
Pagina 6
os blocos ocupados de memria de modo a estarem num mesmo extremo enquanto noutro
extremo fica a parte de memria livre.
Sistema Operativo
Sistema Operativo
Em uso
Em uso
Livre
Em uso
Em uso
Em uso
Livre
Livre
Em uso
Livre
Figura.1.5
Sistemas Operativos
Gesto de Memria
Pagina 7