Buscar

Lista de Exercícios 3 - Gerenciamento de Memória

Prévia do material em texto

Sistemas Operacionais Gerenciamento de Memoria
Problema 1). Para cada um dos enderec¸os virtuais decimais seguintes, calcule o nu´mero
da pa´gina virtual e o deslocamento para uma pa´gina de 4KB e uma de 8KB:
a) 20.000;
b) 32.768;
c) 60.000;
d) 12.050;
e) 0;
Soluc¸a˜o: a)
4KB: 4 ∗ 1.024 = 4.096
20.000/4.096 = 4
4 ∗ 4096 = 16.384
20.000 − 16.384 = 3.616
8KB: 8 ∗ 1.024 = 8.192
20.000/8.192 = 2
2 ∗ 8.192 = 16.384
20.000 − 16.384 = 3.616
Soluc¸a˜o: b)
4KB: 4 ∗ 1.024 = 4.096
32.768/4.096 = 8
8 ∗ 4096 = 32.768
32.768 − 32.768 = 0
8KB: 8 ∗ 1.024 = 8.192
32.768/8.192 = 2
2 ∗ 8.192 = 16.384
20.000 − 16.384 = 3.616
1
Sistemas Operacionais Gerenciamento de Memoria
Soluc¸a˜o: c)
4KB: 4 ∗ 1.024 = 4.096
60.000/4.096 = 14
14 ∗ 4.096 = 57.344
60.000 − 57.344 = 2.656
8KB: 8 ∗ 1.024 = 8.192
60.000/8.192 = 7
7 ∗ 8.192 = 57.344
60.000 − 57.344 = 2656
Soluc¸a˜o: d)
4KB: 4 ∗ 1.024 = 4.096
12.050/4.096 = 2
2 ∗ 4.096 = 8.192
12.050 − 8.192 = 3.858
8KB: 8 ∗ 1.024 = 8.192
12.050/8.192 = 1
1 ∗ 8.192 = 8.192
12.050 − 8.192 = 3.858
Soluc¸a˜o: e)
4KB: 0
8KB: 0
2
Sistemas Operacionais Gerenciamento de Memoria
Problema 2). Que tipo de suporte de hardware e´ necessa´rio para uma me´moria virtual
paginada funcionar ?
Soluc¸a˜o: Uma me´moria virtual paginada necessita de uma unidade de gerenciamento
de me´moria (MMU), para que seja realizado o mapeamento dos enderec¸os virtuais em
enderec¸os de memo´ria f´ısica.
Problema 3). O processador 8086 da Intel na˜o tinha uma MMU ou suporte para memo´ria
virtual. Mesmo assim, algumas empresas venderam sistemas que continham uma CPU 8086
inalterada e que realizava paginac¸a˜o. Deˆ um palpite informal sobre como eles conseguiram
isso. (Dica: pense sobre a localizac¸a˜o lo´gica da MMU.)
Soluc¸a˜o: Por na˜o ter um mediador como a MMU, na˜o havia traduc¸a˜o de enderec¸os
virtuais para fisicos, logo a memo´ria principal era diretamente acessada com o suso de regis-
tradores, ou matriz privada de me´moria que mantinha um conjunto de pa´ginas.
Problema 4). A partir da figura abaixo, deˆ o enderec¸o f´ısico correspondendo a cada um
dos enderec¸os virtuais a seguir:
a) 20;
b) 4.100;
c) 8.300;
d) 33.000;
e) 45.689
Figura 1: tabela de pa´ginac¸a˜o.
Soluc¸a˜o:
a) Localizado nos enderec¸os fisicos de 8.192 a 12.287.
b) Localizado nos enderec¸os fisicos de 4.096 a 8.191.
3
Sistemas Operacionais Gerenciamento de Memoria
c) Localizado nos denrec¸os fisicos de 24.576 a 28.671.
d) page fault.
e) Localizado nos enderec¸os fisicos de 28.671 a 32.779.
Problema 5). Considere um sistema de troca no qual a me´moria consiste nos seguintes
tamanhos de lacunas na ordem de memo´ria: 10MB, 4MB, 20MB, 18MB, 7MB, 12MB,
15MB. Qual lacuna e´ pega para sucessivas solitiac¸o˜es de segmentos de
a) 12MB;
b) 10MB;
c) 9MB;
Para o algoritmo de primeiro encaixe ? Agora repita a questa˜o para melhor encaixe, pior
encaixe e pro´ximo encaixe.
Soluc¸a˜o: Primeiro encaixe 20MB, 10MB e 18MB.
Soluc¸a˜o: Melhor encaixe 12MB, 10MB e 15MB
Soluc¸a˜o: Pior encaixe 20MB, 18MB e 15MB
Soluc¸a˜o: pro´ximo encaixe 20MB, 18MB e 12MB
Problema 6). Suponha que uma ma´quina tenha enderec¸os virtuais de 48 bits e enderec¸os
f´ısicos de 32 bits:
a) Se as pa´ginas teˆm 3KB, quantas entradas ha´ na tabela de pa´ginas se ela tem apenas
um u´nico n´ıvel ? Explique
b) Suponha que esse mesmo sistema tenha uma TLB com 32 entradas. Ale´m disso,
suponha que um programa contenha instruc¸o˜es que se encaixam em uma pa´gina e leia
sequencialmente elementos inteiros, longs, de um conjunto que compreende de milhares
de pa´ginas. Qua˜o efetivo sera´ o TLB para esse caso ?
Soluc¸a˜o:
4
Sistemas Operacionais Gerenciamento de Memoria
a) Havera˜o aproximadamente 64G entradas, pois, considerando que o sistema na˜o e´ multi
n´ıvel e possui um u´nico n´ıvel e que a quantidade de bits e´ de 48 bits o calculo a se
fazer sera´:
3KB ∗ 1.024 = 3.072
3 ∗ 210 = 212
48 − 12 = 36
236 = 26 ∗ 230 = 64G
b) Long = 4B
3KB/4B = 3 ∗ 1024/4 = 768
A cada 768 longs mudara os enderec¸os de me´moria.
Problema 7). Suponha uma se´rie de refereˆncias de pa´ginas virtuais conte´m repetic¸o˜es de
longas sequeˆncias de refereˆncias de pa´ginas seguidas ocasionalmente por uma refereˆncia de
pa´gina aleato´ria. Por exemplo, a sequeˆncia 0,1, . . . , 511, 431, 0, 1, . . . , 511, 332, 0, 1, . . .
consiste em repetic¸o˜es da sequeˆncia 0, 1, . . . , 511 seguidas por uma referencia aleato´ria a`s
pa´ginas 431 e 332.
a) Por que os algoritmos de substituic¸a˜o padra˜o (LRU, FIFO, relo´gio) na˜o sa˜o efetivos
ao lidar com essa carga de trabalho para uma alocac¸a˜o de pa´ginas que e´ menor que o
comprimento da sequeˆncia?
b) Se fossem alocados 500 quadros de pa´ginas para esse programa, descreva uma abor-
dagem de substituic¸a˜o de pa´gina que teria um desempenho muito melhor do que os
algoritmos LRU, FIFO ou de relo´gio.
Soluc¸a˜o:
a)
b)
Problema 8). Um computador tem seis quadros de pa´ginas. O tempo de carregamento, o
tempo de u´ltimo acesso e os bits R e M para cada pa´gina sa˜o como mostrados a seguir (os
tempos esta˜o em tiques de relo´gio):
5
Sistemas Operacionais Gerenciamento de Memoria
a) Qual pa´gina NRU substituira´?
b) Qual pa´gina FIFO substituira´?
c) Qual pa´gina LRU substituira´?
d) Qual pa´gina Segunda Chance substituira´?
Soluc¸a˜o:
a) Pa´gina 2.
b) Pa´gina 4.
c) Pa´gina 4.
d) Pa´gina 2.
Problema 9. Um pequeno computador em um carta˜o inteligente tem quatro quadros de
pa´ginas. Na primeira interrupc¸a˜o de relo´gio, os bits R sa˜o 0111 (pa´gina zero e´ 0, o restante
e´ 1). Nas interrupc¸o˜es de relo´gio subsequentes, os valores sa˜o 1011, 1010, 1101, 0010, 1010,
1100 e 0001. Se o algoritmo de envelhecimento for usado com um contador de 8 bits, deˆ os
valores dos quatro contadores apo´s a u´ltima interrupc¸a˜o.
Soluc¸a˜o:
6

Continue navegando