Aula 12 - Gerência de Memória
Aula 12 - Gerência de Memória
Aula 12 - Gerência de Memória
Sistemas Operacionais
3
Introdução
• Programas só executam se estiverem na memória principal.
• Quanto mais processos estiverem na memória principal,
melhor será o compartilhamento do processador.
• Necessidade de uso otimizado.
• O sistema operacional não deve ocupar muita memória.
5
Swapping
Mesmo, muitas vezes, sem ter espaço livre em memória
principal, o sistema
operacional deve prover que novos processos sejam aceitos e
executados normalmente.
7
Técnicas para Gerenciamento de Memória
8
Alocação Contígua Simples
Este tipo de alocação era implementada nos primeiros
sistemas operacionais e ainda é encontrada em sistemas
monoprogramáveis. Esta técnica consiste em dividir a
memória principal em duas áreas:
9
Alocação Contígua Simples
Nesta técnica, um usuário não pode usar uma área maior do
que a disponível (para execução de seus programas).
10
Alocação Contígua Simples
Para evitar tal problema, alguns sistemas implementam
proteção através de registradores que limitam as áreas do
sistema operacional e do usuário.
11
Técnica de Overlay
A técnica de overlay visa resolver (em partes) o problema
ocasionado pelo desperdício de espaço em memória da técnica
anterior (alocação contígua de memória).
12
Técnica de Overlay
imagine um programa
composto por três
módulos principal,
cadastro de clientes e
impressão).
13
Alocação Particionada
Com a evolução dos sistemas operacionais (dos
monoprogramáveis para os multiprogramáveis) tornou-se
necessário um melhor aproveitamento dos recursos disponíveis.
14
Alocação Particionada ESTÁTICA
A alocação particionada estática ou fixa, tinha como objetivo
dividir a memória em pedaços de tamanho fixo, chamados de
partições.
Problema de
fragmentação interna.
Observe o processo C
que será executado na
partição 3.
(Desperdício)
desperdício
16
Alocação Particionada DINÂMICA
Pensando em sanar tal problema, a alocação particionada
dinâmica surgiu com a ideia de eliminar o conceito de
partições de tamanho fixo.
18
Alocação Particionada DINÂMICA
Entretanto, existe um problema neste tipo de alocação que
talvez não seja tão visível, porém preocupante, estamos
falando da fragmentação externa.
20
Alocação Particionada DINÂMICA
Para resolver o problema da fragmentação externa existem
duas situações principais.
25
É escolhido o maior espaço
disponível em memória principal.
26
First-fit
Como o próprio nome sugere, o primeiro espaço de memória
com espaço suficiente para alocar o programa é
selecionado.
27
o primeiro espaço de memória
com espaço suficiente para
alocar o programa é selecionado..
28
Outros tipos de alocação
29
Resumo
Nessa aula, vimos como o gerenciamento de memória é
fundamental para que o sistema operacional possa executar
suas tarefas de maneira eficiente.
Foi possível conhecer também as principais técnicas utilizadas
para a alocação e gerenciamento de memória pelo sistema
operacional.
▫ a. First-fit
▫ b. Best-fit
▫ c. Worst-fit 32
FIRST-FIT
AFIRST-FIT
5K
B 10K
C 15K
D 8K
E 3K
F 7K
G 6K
33
FIRST-FIT A – 5K
E – 3K
AFIRST-FIT
5K
B – 10K
B 10K
D – 8K
C 15K
D 8K C – 15K
E 3K F – 7K
F 7K G – 6K
G 6K
34
WORST-FIT
AFIRST-FIT
5K
B 10K
C 15K
D 8K
E 3K
F 7K
G 6K
35
WORST-FIT F – 7K
WORST-FIT
A 5K A – 5K
B 10K C – 15K
C 15K
B – 10K
D 8K
E 3K
F 7K G – 6K
E – 3K
G 6K
D – 8K
36
BEST-FIT
AFIRST-FIT
5K
B 10K
C 15K
D 8K
E 3K
F 7K
G 6K
37
BEST-FIT B – 10K
ABEST-FIT
5K
B 10K
C 15K
D 8K C – 15K
E – 3K
E 3K A – 5K
F 7K D – 8K
G 6K F – 7K
G – 6K
38
FIM
Alguma questão?
39
5.3.2.1 – Alocacao particionada estática – frag. interna
5.3.2.2 – Alocacao particionada dinâmica - frag. Externa.
40