Sunteți pe pagina 1din 6

Centro de Cincias e Tecnologia CCT

Departamento de Computao DC
Curso de Bacharelado em Computao

RESOLUO
4 Lista de Exerccios
1. Descreva o mtodo de alocao contnuo da memria principal. Explique as abordagens first-fit, best-fit e
worst-fit para a alocao de um novo processo.
A memria principal geralmente dividida em duas parties:
Uma parte para Sistema Operacional, geralmente na memria baixa, junto com o vetor de interrupes.
Outra parte para os processos do usurio, geralmente na parte alta da memria.
So utilizados registradores de relocao para proteger os processos dos usurios uns dos outros e tambm para
evitar alteraes em dados e cdigos do sistema operacional.
O registrador base contm o menor endereo de memria permitido.
O registrador de limite define o tamanho do espao de endereamento cada endereo lgico deve ser
menor que o registrador de limite.
A MMU mapeia os endereos lgicos dinamicamente.
A Alocao com mltiplas parties gera Buracos, que so blocos de memria disponvel, ou seja, buracos de
vrios tamanhos so espalhados na memria. E quando um processo criado ele alocado em um buraco grande
o suficiente para suas necessidades de memria. O sistema operacional mantm informaes sobre:
Parties alocadas
Parties livres (conjunto de buracos)
Para escolher qual buraco um novo processo dever ser alocado utilizado um dos algoritmos de alocao:
o First-fit: Aloca o primeiro buraco que for grande o suficiente para alocar o processo.
o Best-fit: Aloca o menor buraco que for grande o suficiente; precisa pesquisar o conjunto inteiro a menos
que esteja ordenada por tamanho.
Produz o menor buraco remanescente.
o Worst-fit: Aloca o maior buraco; tambm precisa percorrer todo o conjunto.
Produz o maior buraco remanescente.
OBS. First-fit e best-fit so melhores que o worst-fit em termos de velocidade e utilizao do espao!

2. O que fragmentao interna e externa?


A fragmentao interna quando ocorre desperdcio de espao da memria e a memria principal subdivida
em espaos iguais, um processo ocupa apenas uma parcela desse espao, assim ele fica parcialmente utilizado
e no mais disponvel para outro processo.
Fragmentao Externa quando se tm espaos livres na memria suficientes para atender uma requisio
(alocao de processo), mas os espaos livres no so contguos.

3.

Dado o esquema de paginao acima, responda as seguintes questes:


1

a) Onde inserir o end. Lgico 0?


No endereo fsico = 20

b) Onde inserir o end. Lgico 3?


No endereo fsico = 23

c) Onde inserir o end. Lgico 4?


No endereo fsico = 24

d) Onde inserir o end. Lgico 6?


No endereo fsico = 26

e) Onde inserir o end. Lgico 11?


No endereo fsico = 7

f) Onde inserir o end. Lgico 13?


No endereo fsico = 9

4. Com a paginao eliminamos o problema de fragmentao interna. Essa afirmao est correta? Explique.
Afirmao est incorreta. Com a paginao conseguimos garantir a eliminao da fragmentao externa,
porm a fragmentao interna ainda pode existir.

5. Explique e mostre visualmente como se d os seguintes esquemas de paginao:


a) Paginao em dois nveis:
Quebra o espao de endereamento lgico em mltiplas tabelas de paginao.

b) Paginao com hash


Comum em espao de endereamento com mais de 32 bits. O nmero da pgina virtual submetido a uma
funo hash e o resultado aponta para uma entrada na tabela de paginao (tabela hash). Cada entrada na
tabela de paginao (tabela hash) contm uma lista encadeada de elementos cujo hash apontou para a mesma
localidade (afim de lidar com colises). O nmero da pgina virtual ento comparado com os valores nessa
lista para localizar o quadro na memria fsica.

c) Paginao invertida
Consiste em manter uma tabela onde cada entrada representa uma tabela de pgina ao invs de um endereo
virtual. Desta forma, a entrada deve monitorar qual pgina virtual est associada quela tabela de pgina.
Apesar de diminuir a quantidade de memria necessria para armazenar a tabela de paginao, aumenta o
tempo necessrio para consultar a tabela.
Usar hash para limitar a busca a uma, ou pelo menos, a umas poucas entradas.

6. Utilizando o conceito de memria associativa na implementao da tabela de paginao, calcule o tempo


efetivo de acesso (EAT) para o seguinte cenrio:
I.
Tempo para busca na memria associativa: 20ns
II.
Tempo de acesso memria: 100ns
III.
Taxa de acerto (porcentagem das vezes em que o nmero de uma pgina encontrado na
memria associativa): 80%
= ( + ) + 1 + 2
= 0,80 (20 + 100) + 1 0,80 20 + 2100
= 0,80 120 + 0,20 220
= 96 + 44 = 140

7. Utilizando o conceito de pginas compartilhadas, suponhamos que um determinado sistema suporta 50


usurios. Onde cada usurio executa um editor de texto. O editor de texto consiste em basicamente duas
partes: (i) 350KB de cdigo (compartilhvel) e (ii) 150KB de espao de dados (no compartilhvel). Na
abordagem de pginas no-compartilhadas quantos KB seriam necessrios para suportar os 50 usurios? E na
abordagem de pginas compartilhadas?
Abordagem de pginas no-compartilhadas para suportar 50 usurios:
50 * (350 + 150) = 25000KB
Abordagem de pginas compartilhadas para suportar 50 usurios:
350 + (50 * 150) = 7850KB

8.

Dado o esquema de segmentao acima, responda as seguintes questes:


a) Uma referncia ao byte 53 do segmento 2 mapeado para qual local?
O segmento 2 tem 400 bytes de comprimento e comea na posio 4300. Assim, uma referncia ao byte 53
do segmento 2 mapeada na posio 4300 + 53 = 4353

b) Uma referncia ao byte 852 do segmento 3 mapeado para qual local?


O segmento 3 que tem 1100 de comprimento e comea na posio 3200. Assim, uma referncia ao byte 852
do segmento 3 mapeada na posio 3200 + 852 = 4052

c) Uma referncia ao byte 1222 do segmento 0 mapeado para qual local?


Uma referncia ao byte 1222 do segmento 0 resultaria em uma exceo de sistema operacional (Trap), pois
esse segmento s tem 1000 bytes de comprimento.

9. Explique o passo a passo do que ocorre quando ocorre uma falta de pgina no sistema. Se preferir pode
explicar visualmente.
1. O Sistema Operacional verifica se houve uma:
o Referncia invlida Aborta o processo
o Apenas uma referncia a uma pgina fora da memria principal
2. Lana uma trap para o S.O.
3. Sabe-se que a pgina est na memria de retaguarda.
4. Busca a pgina e a aloca num quadro livre da memria principal
5. Indica na tabela de paginao que a pgina est alocada (seta o bit de validade para v)
6. Re-executa a instruo que gerou a falta de pgina

10. Calcule o tempo efetivo de acesso (EAT) para o seguinte caso de uma paginao sob demanda:
I.
Tempo de acesso memria: 300ns
II.
Tempo para tratamento da falta de pgina: 8500000ns
III.
Probabilidade de falta de pgina: 0,1%
= (1 ) +
= tempo de acesso memoria
: O tempo para realizar aqueles passos que vimos anteriormente!
= (1 ) +
= (1 0,1) 300 + 0,1 8500000
= 0,9 * 300 + 850.000
= 270 + 850.000
= 850.270ns
OBS.
- 1ms = 1000000ns
- Um acesso a cada 1000 resultam em falta de pgina: p = 1/1000 = 0,001

11. Joozinho pretende comprar um computador, porm ele s comprar um computador que
compromete, no mximo, 5% do seu desempenho com problemas de falta de pgina. Considere os
seguintes valores:
I.
Tempo de acesso memria: 300ns
II.
Tempo para tratamento da falta de pgina: 8500000ns
Se eu busco uma perda menor que 5%, ou seja, no mximo 5%, quero que meu EAT seja menor que:
300 + 5/100 * 300 = 315
= (1 ) +
315 > (1 ) 300 + 8500000
315 > 300 300p + 8500000p
15 > 8.499.700p
p < 15/8.499.700p = 1.764768168X10-6 ou 0,000002

12. Explique o passo a passo do processo bsico de substituio de pgina.


1. Localize a pgina desejada no disco.
2. Localize um quadro livre:
o Se h um quadro livre, utilize-o.
o Se no h tal quadro, utilizar um algoritmo de substituio para escolher um quadro vtima.
3. Carregue a pgina desejada no quadro (recentemente) livre; atualize as tabelas de pginas e de quadros
4. Re-execute a instruo que causou a falta de pgina.

13. Considerando a seguinte String de Entrada: 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5. Identifique a quantidade de


falta de pginas para os algoritmos de substituies de pgina. Considere 3 quadros:
a) FIFO
Esse algoritmo associa a cada pgina o instante em que a pgina foi levada para a memria. Quando preciso substituir uma
pgina, a pgina mais antiga escolhida.

1
1

2
1
2

3
1
2
3

4
4
2
3

1
4
1
3

2
4
1
2

5
5
1
2

3
5
3
2

4
5
3
4

9 faltas de pginas

b) timo
Substitui a pgina que no ser acessada pelo maior perodo de tempo.

1
1

2
1
2

3
1
2
3

4
1
2
4

5
1
2
5

3
3
2
5

4
3
4
5

7 faltas de pginas

c) Menos Recentemente Usada (LRU).


A substituio LRU associa a cada pgina a data que essa pgina foi usada pela ltima vez. Quando uma pgina precisa ser
substituda, o algoritmo LRU seleciona a pgina que no foi usada pelo maior perodo de tempo.

1
1

2
1
2

3
1
2
3

4
4
2
3

1
4
1
3

2
4
1
2

5
5
1
2

3
3
1
2

4
3
4
2

5
5
4
2

10 faltas de pginas

14. Descreva os esquemas de alocao de quadros que podem ser adotados pelo sistema para suprir a
necessidade mnima de cada processo.
Cada processo precisa de um nmero mnimo de quadros.
Existem dois esquemas principais de alocao:
o Alocao fixa:
Alocao igualitria: se h 100 quadros e 5 processos, alocar 20 quadros para cada um.
Alocao proporcional: quadros so alocados de acordo com o tamanho dos processos.
o Alocao por prioridade:
Usa uma alocao proporcional baseada na prioridade ao invs do tamanho
Se o processo Pi causa uma falta de pgina:
Seleciona um de seus quadros para substituio.
Seleciona um quadro de um processo de menor prioridade para substituio.

15. Considerando o esquema de alocao fixa proporcional de quadros, supondo que o sistema possua uma
memria principal com 128 quadros. 3 processos sero inicializados em tal sistema: o processo 1 (P1) tem
um tamanho de 20 quadros, o processo 2 (P2) tem um tamanho de 80 quadros e o processo 3 (P3) tem um
tamanho de 120 quadros. Quantos quadros sero alocados para cada processo?

Sp1 = 20, Sp2 = 80 e Sp3 = 120


S = 20 + 80 + 120 = 220
m = 128
P1
ap1 = 20/220 * 128
ap1 12

P2
ap2 = 80/220 * 128
ap2 46

P3
ap3 = 120/220 * 128
ap3 70

S-ar putea să vă placă și