Você está na página 1de 16

Sistemas Operativos

Felimone Amone Jr.


Gesto de memria (Cont.)
Alocacao contigua simples
Alocao Contigua Particionada Estatica
Alocao Contigua Particionada Dinamica
Estratgias de alocao de particao
Alocao Contigua Simples
Usada nos primeiros sistemas, e ainda e usada em alguns monoprogramaveis ate hoje.
Ela consiste em dividir a memoria principal em 2 partes, sendo uma destinada ao
Sistema Operativo e outra ao programa de usurio
O usurio no pode usar uma rea maior do que a destinada para ele, isto e memoria
total menos a memoria ocupada pelo sistema.
Existe um registrador que se para as duas areas. Em sistemas com proteo o usurio
no pode acessar a area contendo o Sistema, mas em sistemas sem proteo isto no
acontece.
Esta apesar de ser de simples implementao, no usa eficientemente os recursos do
computador
Alocao Contigua Simples
Memoria Principal

Sistema
Operativo
Programa de
usuario
Reg
Overlay
Como os programas eram limitados pelo tamanho da memoria disponvel, surgiu a
necessidade de criar mecanismos para resolver este problema, o overlay ou
sobreposio, consiste em dividir o programa em mdulos, de forma que seja
possvel a execuo independente de cada mdulo, utilizando uma mesma rea
de memria.
A tcnica de overlay utiliza uma rea de memria comum, os os mdulos
no-carregados podero compartilhar esta rea de memria.
Sempre que um mdulo no-carregado for referenciado pelo mdulo
principal, o mdulo ser carregado da memria secundria para a rea de
overlay.
No caso de uma referncia a um mdulo j carregado, a carga no ser
realizada
Overlay
Memria principal
Sistema
Operacional
rea de
Overlay
rea do
Mdulo
Principal
A
B C
Overlay
a definio da rea de overlay fica a cargo do
programador, e o tamanho dela, e estabelecido a partir
do tamanho do maior modulo, porem esta tcnica deve
ser usada com cuidado, para evitar transferncia de
grandes volumes de dados fazendo com que o
desempenho reduza.
Alocao Contigua Particionada Estatica
com o advento da multi-programacao, diversos programas deveriam ser
carregados na memoria principal, para tal o Sistema Operacional dividia a
memoria em pedaos chamados parties.
O tamanho destas particoes era definido no inicio de Sistema.
Para se alterar, o Sistema deveria ser reiniciado com as novas
configuraes
Para manter o controle sobre as parties alocadas, a gerncia de
memria mantm uma tabela com o endereo inicial de cada partio,
seu tamanho, e se est em uso ou no
Dois registradores indicam o inicio e o fim de cada particao,
Alocao Contigua Particionada Esttica
Memoria Princiapal
Sistema Operativo
Particao A
Particao B
Particao C
Particao D
Alocao Contigua Particionada Esttica
Numa partio so pode estar um e somente 1 programa, isto causava
um desperdcio de espao, visto que os programas geralmente no
ocupavam totalmente as parties, a isto se chama fragmentao
interna
Alocao Contigua Particionada Dinamica
cada programa utiliza o espao necessrio, tornando essa
rea sua partio
Este tipo de alocao elimina a fragmentao interna,
porem cause a fragmentacao externa, que ocorre quando
um espao alocado a um determinado programa que foi
encerrado e alocado a outro programa menor, deixando
assim um espaco livre entre eles.

Alocao Contigua Particionada Dinamica
Alocao Contigua Particionada Dinamica
De modo a eliminar o problema de fragmentao externa, existem 2
solues:
a) conforme os programas terminem, apenas os espaos livres adjacentes
sejam reunidos, produzindo reas livres de tamanho maior.
b) relocao de todas as parties ocupadas, eliminando todos os espaos
entre elas e criando uma nica rea livre contgua, a desvantagem desta
e de consumir mais recursos computacionais e ser relativamente complexa
de se implementar
Alocao Contigua Particionada Dinamica
a) b)
Estratgias de alocao de particao
Quando novos processos so iniciados o Sistema deve decider qual partio
alocar ao processo, dependendo das suas necessidades, estes metodos so:
FIRST-FIT: a primeira partio livre onde caibam X (onde X e o tamanho do
processo) bytes escolhida. A procura pode comear sempre no incio da
lista, ou a partir do ltimo bloco alocado (next-fit).
BEST-FIT: a partio livre de tamanho mais parecido com X bytes
escolhida (sendo igual ou maior do que X). Pode aumentar o problema de
fragmentao.
WORST-FIT: a maior a partio livre escolhida;
Obrigado..

Você também pode gostar