Buscar

Sist Op Ab - 03 - Gerência de memória

Prévia do material em texto

S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Gerência de MemGerência de Memóóriaria
Prof. Prof. FlFlááviovio LouzadaLouzada de de AraAraúújojo
1
ROTEIRO
1. Introdução
2. Funções básicas
3. Alocação contígua simples
4. Técnica de overlay
5. Alocação Particionada
• Alocação Particionada Estática 
• Alocação Particionada Dinâmica 
• Estratégias de Alocação de Partição 
6. Swapping
7. Exercícios
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
3
Introdução
• Memória Principal sempre foi vista como 
recurso escasso e caro
• SO procuram ocupar pouco espaço de 
memória e, simultaneamente, otimizar a 
utilização de recursos computacionais
• Apesar da redução de preços e aumento da 
capacidade, gerência de memória é muito 
importante para o SO 
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
4
Introdução
• Sistemas monoprogramáveis
– Gerência de memória não é complexa
• Multiprogramação implica em manter-se vários 
processos em memória
• Memória necessita ser alocada de forma 
eficiente para permitir o máximo possível de 
processos e usuáriosS i s
t e
m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Gerência de Memória - Funções Básicas
• Manter o maior número de processos na 
memória
• Maximizar o compartilhamento da UCP e 
demais recursos 
• Swapping
• Execução de programas maiores que 
memória disponível
• Proteção
• Compartilhamento
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
6
Funções Básicas
• Um sistema de memória possui pelo menos 
dois níveis:
– Memória principal: acessada pela CPU
– Memória secundária: discos
• Programas são armazenados em disco
– Meio não volátil, abundante e de baixo custo
– Executar um programa se traduz em transferi-lo da 
memória secundária à memória primária
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Rel. dispositivos de armazenamento
maior
capacidade de
armazenamento
maior custo e
velocidade
de acesso
Memória Secundária
Memória Cache
Memória Principal
Registradores
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
8
Funções Básicas
• Tempo de acesso à memória secundária é
muito maior que o tempo de acesso à
memória principal
– SO deve reduzir o número de operações de E/S à
memória secundária
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
9
Funções Básicas
• Em um ambiente multiprogramado, é
necessário:
– subdividir a memória para acomodar múltiplos 
processos
– mas se poucos processos estão na memória, em 
boa parte do tempo estarão esperando por E/S 
=> UCP sub-utilizada
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
10
Funções Básicas
• Gerência de memória deve manter na memória 
o maior número de processos
– Maximizar o compartilhamento do processador e 
demais recursos
• Mesmo sem espaço na memória principal, o 
sistema deve permitir que novos processos 
sejam aceitos e executadosS i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
11
Funções Básicas
• SO faz a transferência de processos residentes 
na memória principal para a memória 
secundária
– Mecanismos conhecido como swapping
• Gerência de memória também deve permitir a 
execução de programas maiores que a memória 
física disponível
– Técnicas de overlay e memória virtual
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
12
Funções Básicas
• SO deve proteger as áreas de memória 
ocupadas por cada processo
– Além da área ocupada pelo sistema
– Se um processo tentar realizar um acesso indevido à
memória, o sistema deve impedi-lo
• Mecanismos de compartilhamento devem ser 
oferecidos para que os processos possam trocar 
dadosS
i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Funções Básicas
• Manter o maior número de processos na 
memória
• Maximizar o compartilhamento da UCP e 
demais recursos 
• Swapping
• Execução de programas maiores que 
memória disponível
• Proteção
• Compartilhamento
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Mecanismos básicos de gerência de memória
• Um programa para ser executado deve estar na 
memória (processo); 
– Onde deve ser carregado? (Problema de alocação de 
memória)
• A alocação de memória depende de:
– Código absoluto versus código relocável
– Necessidade de espaço contínuo ou não
• Necessidade de gerenciamento da memória
– Determinação de áreas livres e ocupadas
– Racionalizar a ocupação da memória
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
15
Processamento de um programa
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
16
Transformação de programa em processo
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Loader
• Carregar na memória principal um 
programa para ser executado
• Loader absoluto
• Loader relocável
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Mecanismos básicos de gerência de memória
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Até estudarmos memória virtual, vamos supor que 
para um programa ser executado ele necessita estar 
carregado completamente em memória
19
Alocação Contígua Simples
• Foi implementada nos primeiros SO
– Ainda está presente em alguns sistemas 
monoprogramáveis
• Memória principal é dividida em duas áreas:
– Sistema Operacional
– Programas do usuário
• Preocupação do programador é não ultrapassar 
o espaço disponível
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Contígua Simples
Memória Principal
Sistema
Operacional
Área para
programaS
i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
21
Alocação Contígua Simples
• Usuário tem controle sobre toda a memória 
principal
– Acessa qualquer posição de memória, inclusive do 
SO
• Alguns sistemas implementam proteção a área 
do SO através de um registrador
– Quando um programa faz referência à memória, o 
SO verifica se está dentro do limite permitidoS
i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Contígua Simples
• Proteção
Memória Principal
RegistradorSistema
Operacional
Área para
programa
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
23
Alocação Contígua Simples
• Fácil implementação e de código reduzido
• Não permite a utilização eficiente dos recursos 
computacionais
– Apenas um usuário pode dispor desses recursos
• Caso o programa do usuário não a preencha 
totalmente, existirá um espaço livre sem 
utilização
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Contígua Simples
• Subutilização da memória
Memória Principal
Sistema
Operacional
Programa
do usuário
Área livre
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
25
Técnica de Overlay
• Na alocação contígua simples todos os 
programas estão limitados ao tamanho de 
memória disponível para o usuário
• Solução: técnica de Overlay
– Dividir o programa em módulos
– Executar os módulos de maneira independente 
utilizando a mesma área de memória
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
26
Técnica de Overlay
• Um programa possui 3 módulos
– Principal
– Cadastramento (independente)
– Impressão (independente)
• Independência - quando um módulo estiver em memória 
o outro não necessita estar presente
• Módulo principal é comum aos 2 módulos -
deve sempreestar em memória
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
27
Técnica de Overlay
• A definição das áreas de overlay é função do 
programador
• O tamanho da área de overlay é estabelecido a 
partir do módulo que tiver o maior tamanho
• Permite ao programador expandir os limites da 
memória principal
– Pode trazer implicações na manutenção e 
desempenho
• Transferência excessiva dos módulos
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
A
r q
u
i t e
t u
r a
 
d e
 
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
–
M
a c
h a
d o
/ M
a i
a
Técnica de Overlay
Memória Principal
Cadastramento
Impressão
Sistema Operacional2 Kb
3 Kb
4 Kb
4 Kb
2 Kb
2 Kb
1 Kb
Módulo principal
Área de overlay
Área livre
Área não
utilizada
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
29
Alocação Particionada Estática
• A memória era dividida em pedaços de 
tamanho fixo - partições
– Utilizada nos primeiros sistemas multiprogramáveis
• Tamanho das partições era definido em função 
dos programas que executavam no ambiente
– Tamanho era estabelecido na fase de inicialização do 
sistema
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
30
Alocação Particionada Estática
• Se fosse necessário a alteração do tamanho de 
uma partição, o sistema deveria ser desativado 
e reinicializado com uma nova configuração
• Tipo de gerência de memória conhecido como 
alocação particionada estática ou fixa
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
A
r q
u
i t e
t u
r a
 
d e
 
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
–
M
a c
h a
d o
/ M
a i
a
Alocação Particionada Estática
Memória Principal
Sistema Operacional
2 Kb
5 Kb
8 Kb
Partição 1Partição
Tabela de partições
Tamanho
1 2 Kb
2 5 Kb
3 8 Kb
Partição 2
Partição 3Programas a serem executados:
AE
3 Kb
D
6 Kb
C
1 Kb
B
4 Kb 2 Kb
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
32
Alocação Particionada Estática
• Programas só podiam ser carregados e 
executados em apenas uma partição específica
– Mesmo que outras estivessem disponíveis
• Limitação se devia aos compiladores e 
montadores
– Geravam apenas código absolutoS i s
t e
m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
33
Alocação Particionada Estática
• Código absoluto - todas as referências a 
endereços do programa são posições físicas na 
memória principal
– O programa só poderia ser carregado a partir do 
endereço de memória especificado no seu próprio 
código
• Também conhecida como alocação 
particionada estática absoluta
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Estática Absoluta
Memória Principal
Sistema Operacional
2 Kb
5 Kb
8 Kb
Partição 1
Partição 2
Partição 3
A
B
D
C
E
3 Kb
6 Kb
1 Kb
4 Kb
2 Kb
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
35
Alocação Particionada Estática
• Evolução dos compiladores, montadores, linkers
e loaders
– Código gerado deixou de ser absoluto e passa a ser 
relocável
• Código relocável - todas as referências a 
endereços do programa são relativas ao início do 
código, e não a endereços físicos de memóriaS i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
36
Alocação Particionada Estática
• Os programas puderam ser executados a partir 
de qualquer partição
• Quando o programa é carregado, o loader
calcula todos os endereços a partir da posição 
inicial onde o programa foi alocado
• Gerência denominada alocação particionada
estática relocávelS i s
t e
m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Estática Relocável
Memória Principal
Sistema Operacional
2 Kb
5 Kb
8 Kb
Programa C
Programa A
Programa B
ED
6 Kb 3 Kb
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
38
Alocação Particionada Estática
• Para manter o controle das partições alocadas, a 
gerência de memória mantém uma tabela com o 
endereço inicial de cada partição, seu tamanho e 
se está em uso
• Para um programa ser carregado o sistema 
percorre a tabela para localizar uma partição 
livre onde o programa possa ser alocadoS
i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Estática
• Tabela de Alocação de Partições
Memória Principal
Sistema Operacional
1
2
3
Programa C
Área livre
Programa B
Partição Tamanho Livre
1 2 Kb Não
2 5 Kb Sim
3 8 Kb Não
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
40
Alocação Particionada Estática
• A proteção baseia-se em 2 registradores que 
indicam os limites superior e inferior da 
partição onde o programa está sendo executado
• Se o programa tentar acessar uma posição fora 
dos limites, é interrompido e uma mensagem de 
violação de acesso é gerada pelo SOS i s
t e
m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Estática
• Proteção Memória Principal
Sistema Operacional Endereço inicial
Endereço final
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
42
Alocação Particionada Estática
• Os programas, normalmente, não preenchem 
totalmente as partições onde são carregados
– Este tipo de problema, decorrente da alocação fixa, 
é conhecido como fragmentação interna
– Exemplo de SO:
• OS/MFT (Multiprogramming with Fixed Number of
Task) da IBMS
i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
43
Desvantagem de partições fixas
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Estática
• Fragmentação Interna
Memória Principal
Sistema Operacional
1 Kb
3 Kb
5 Kb
Programa C
Programa A
Programa E
BD
6 Kb 4 Kb
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
45
Alocação Particionada Dinâmica
• Nova forma de gerenciamento que reduziu a 
fragmentação interna e aumentou o grau de 
compartilhamento da memória
• Alocação Particionada Dinâmica ou Variável -
Cada programa utiliza apenas o espaço 
necessário (torna-se a sua partição)
– Foi eliminado o conceito de partições fixas
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Dinâmica
Memória PrincipalMemória Principal
Sistema OperacionalSistema Operacional
4 Kb
1 Kb
3 Kb
5 Kb
2 Kb
15 Kb
Programa C
Programa B
Programa A
Programa E
BA
2 Kb
E
3 Kb
C
1 Kb 4 KbS
i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
47
Alocação Particionada Dinâmica
• Programa utiliza apenas o espaço necessário
– Não ocorre fragmentação interna
• Os programas que terminam deixam espaços 
cada vez menores
– Novos programas não cabem nos espaços
– Novo problema: fragmentação externa
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Dinâmica
• Fragmentação Externa
Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
D
6 Kb
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
49
Alocação Particionada Dinâmica
• Soluções para o problema da fragmentação 
externa
1.Quando os programas terminam as áreas adjacentes 
são reunidas
2.As partições ocupadas são relocadas
• Espaços entre as partições sãoeliminados e é criada uma 
única área livre contígua
• Sistema deve ser capaz de realizar relocação dinâmica
• Ex: OS/MVT (Multiprogramming with a Variable
Number of Task) da IBM
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Dinâmica
• Solução para a Fragmentação Externa
Memória PrincipalMemória Principal
Sistema OperacionalSistema Operacional
8 Kb
4 Kb
3 Kb
5 Kb5 Kb
Programa C
Programa APrograma A
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Alocação Particionada Dinâmica
• Solução para a Fragmentação Externa - alocação 
particionada dinâmica com relocação
Memória PrincipalMemória Principal
Sistema Operacional
Relocação
Sistema Operacional
4 Kb
3 Kb
12 Kb
5 Kb
Programa C
Programa C
Programa A
Programa A
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
52
Estratégias de Alocação de Partição
• Sistemas operacionais implementam 3 
estratégias que tentam evitar ou diminuir o 
problema da fragmentação externa
• A melhor estratégia a ser adotada depende de 
uma série de fatores
– O mais importante é o tamanho dos programas 
processados
– O SO possui uma lista de áreas livres, com o 
endereço e tamanho de cada uma
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Estratégias de Alocação
• Lista de Áreas Livres Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
Áreas livres
Área livre 1
Área livre 2
Área livre 3
Tamanho
1 4 Kb
2 5 Kb
3 3 Kb
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
54
Estratégias de Alocação de Partição
• Best-fit
– Melhor partição é escolhida - aquela que o 
programa deixa o menor espaço sem utilização
– Lista de áreas livres é ordenada por tamanho -
redução do tempo de busca
– Desvantagem:
• Tendência é que a memória fique com pequenas áreas 
não-contíguas - aumenta o problema da fragmentação 
externa
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Estratégias de Alocação
• Best-fit
Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
F
1 KbS i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Estratégias de Alocação
• Best-fit
Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
F
1 Kb
Sistema Operacional
2 Kb
Programa C
Programa F
Programa A
Área livre
(a) Best
- fitS i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
57
Estratégias de Alocação de Partição
• Worst-fit
– Pior partição é escolhida - aquela que o programa 
deixa o maior espaço sem utilização
– Deixa espaços livres maiores - permite que um 
maior número de programas utilizem a memória
– Reduz o problema da fragmentação externaS i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Estratégias de Alocação
• Worst-fit
Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
F
1 KbS i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Estratégias de Alocação
• Worst-fit
Sistema Operacional
4 Kb
Programa C
Programa A
Área livre
Programa F
Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
F
1 Kb
(b) Worst-fit
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
60
Estratégias de Alocação de Partição
• First-fit
– Primeira partição livre de tamanho suficiente para 
carregar o programa é escolhida 
– Lista de áreas livres é ordenada, crescente, por 
endereços
• Existe uma grande chance de obter uma grande partição 
livre nos endereços mais altos
– É a estratégia mais rápida e que consome menos 
recursos do sistema
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Estratégias de Alocação
• First-fit
Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
F
1 KbS i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Estratégias de Alocação
• First-fit
Memória Principal
Sistema Operacional
4 Kb
3 Kb
5 Kb
Programa C
Programa A
F
1 Kb
( c )
F i r
s t -
f i t
Sistema Operacional
3 Kb
Programa C
Programa A
Área livre
Programa F
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
63
Swapping
• Muitas vezes um programa não podia ser 
executado por falta de uma partição livre 
disponível
• A técnica de swapping foi introduzida para 
contornar o problema da insuficiência de 
memória principalS i s
t e
m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
64
Swapping
• Nos esquemas apresentados um processo 
permanecia na memória até o final de sua 
execução
• Swapping é uma técnica aplicada à
gerência de memória para programas que 
esperam por memória livre para serem 
executados
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
65
Swapping
• O sistema escolhe um processo residente 
para ser transferido da memória principal 
para a memória secundária (swap out)
• Posteriormente, o processo é carregado de 
volta, da memória secundária para a 
memória principal (swap in), e pode 
continuar sua execuçãoS i s
t e
m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
66
Swapping
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
SwappingMemória Principal
Memória Principal
Sistema
Operacional
Sistema
Operacional
Programa A
Programa A
Programa G
Área Livre
Swap in
Swap out
Arquivo
de Swap
Programa E
Programa E
Programa B
Programa H
H
B
B
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
68
Swapping
• Para retirar um processo deve ser priorizado o 
que tiver menor chance de ser executado
• Escolha, geralmente, é feita nos processos em 
estado de espera
– Processo é dito no estado de espera outswapped
• Existe a possibilidade de ser escolhido um 
processo no estado de pronto
– Processo é dito no estado de pronto outswapped
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
69
Swapping
• Para que a técnica de swapping seja 
implementada, é essencial que o 
sistema ofereça um loader que 
implemente a relocação dinâmica
• A relocação dinâmica é realizada 
através do registrador de relocaçãoS
i s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
70
Swapping
• Registrador recebe o endereço inicial da posição 
de memória que o programa irá ocupar no 
momento que for carregado
• Quando ocorre alguma referência a algum 
endereço, o endereço da instrução é somado ao 
conteúdo do registrador, gerando o endereço 
físico
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
Swapping
• Relocação Dinâmica
Endereço de
memória
Endereço incial
da partição
Registrador de Relocação Instrução
EndereçoCódigo deoperação
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
72
Relocação dinâmica usando um registrador de 
relocação
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
73
Swapping
• Swapping permite maior compartilhamento da 
MP
• Maior problema:
– Elevado custo das operações de E/S (swap in/out)
• Pouco memória => sistema dedicado à execução de 
swapping em detrimento de outras tarefas
• Primeiros sistemas (1960)
– CTSS do MIT e OS/360 da IBM
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
74
Exercícios
S i
st
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s 
 
A figura ao lado representa um 
esquema de memória, onde as 
regiões em cinza correspondem a 
blocos alocados e as regiões em 
branco, a áreas livres. O último bloco 
alocado é mostrado na figura. 
O gerenciador de memória recebe 
uma requisição para alocar 12 M. 
Sabendo-se que o gerenciador usa a 
estratégia "Worst Fit", o bloco de 
memória será alocado em qual 
região?
(Petrobrás – Analista de Sistemas Júnior Engenharia de Software – ano 2010) 
S i
s t
e m
a s
 
O
p e
r a
c i
o
n
a i
s

Continue navegando