Você está na página 1de 25

Gerência

de memória

Bruno Leal Barreto


Lívia Costa Ramos
Lucas Padrão
Raphael da Silva Santos
Introdução

O processador processa o conteúdo da
memória principal.[1]

Memória principal → Mais rápida e cara

Memória secundária → Mais lenta e barata
Gerência de memória

Função - Controlar o uso e alocação da
memória e gerenciar troca entre a memória
principal e memória secundária.[1]
Alocação Contígua Simples

Subdivide a memória em duas partes: uma
para o Sistema Operacional e outra para o
programa do usuário.[3]
Alocação Contígua Simples

M
e mória Principal Me mória Principal
R
e gistrador
S iste ma S iste ma
Ope racional Ope racional

Program a
Áre a para do usuário
programa

Áre a livre
Overlay

Segmenta o programa em módulos e
carrega-os na mesma área da memória
principal, chamada de overlay.[3]
Overlay

Me mó ria Principal

2 K
b Siste ma Ope racio nal
Cadastrame nto

3 K
b Módulo principal
4K
b

4K
b Áre a de o ve rlay Impre ssão

2 K
b
1 K
b Áre a livre
Áre a não 2 K
b
utilizada
Alocação Particionada Estática

A memória é dividida em partições fixas,
assim que o sistema é inicializado.[2]
Alocação Particionada Estática

Múltiplas Filas 
Fila Única
Alocação Particionada
Dinâmica
• Não há partições de tamanho fixo[3]
Alocação Particionada
Dinâmica

Compactação→Remontar os espaços vazios [1]
Estratégias para Alocação

First-fit: Pesquisa-se toda a lista de
segmentos e escolhe aquela que
primeiramente tiver tamanho suficiente.[1]


Next-fit: Guarda o endereço do local tido
como adequado e inicia a próxima pesquisa
a partir deste endereço.[1]
Estratégias para Alocação

Best-fit: deixa o menor espaço livre.[2]

M
e mória Principal

Siste ma Ope racional Siste ma Ope racional

4K
b

fit
-
st
Programa C Program a C
e
)B
F
5K
b
(a
1 K
b

Programa A Program a A
Program a F
3K
b Áre a livre 2 K
b
Estratégias para alocação

Worst-fit: deixa o maior espaço livre[2]
Me mó ria Principal

Siste ma Ope racio nal Siste ma Ope racional

4K
b

Program a C (b) Worst-fit Programa C


Programa F
F
5K
b
1 K
b Área livre 4K
b

Pro gram a A
Programa A

3 K
b
Estratégias para alocação

Mapa de Bits: Utiliza uma unidade de
alocação de tamanho pré-determinado e um
mapa que associará a cada unidade um
valor binário.
Estratégias para alocação

Listas encadeadas: Designa se é lacuna ou
processo, o bit de início, o tamanho e um
ponteiro para a próxima entrada.
Swapping

Carrega o programa residente da memória
principal para a memória secundária.[3]
M
emória P
rincipal

Sistema
Operacional

Programa A

H P
rograma B
S
wap out
Programa E

Programa G

M
emória P
rincipal

Sistema
Operacional

Programa A

Programa H

Programa E
Swap in
B Área L
ivre

A rquivo
de Swap
Swapping

Utiliza ou listas encadeadas ou mapa de bits.
Memória Virtual

Utiliza o disco para armazenar o excedente
do programa.
Memória Virtual
Me mória Virtual Me mó ria Principal

.
.
.

.
. Me mó ria Se cundária

.
.
Memória Virtual x Swapping

No Swapping, o programa inteiro é
transferido para o disco.

Na técnica de Memória Virtual, apenas o
excedente do programa é transferido.
Solaris O.S.

Prioridade → referente ao tempo em
execução.

Swapping

Memória Virtual com paginação por
demanda
Unix
Feliz Natal!
Bibliografia

[1]Tanenbaum

[2]Silberschatz

[3]Machado