Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10
description
Transcript of Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/1
Arquitetura de Sistemas Arquitetura de Sistemas OperacionaisOperacionais
Francis Berenger MachadoFrancis Berenger MachadoLuiz Paulo MaiaLuiz Paulo Maia
Capítulo 10Capítulo 10Gerência de Memória VirtualGerência de Memória Virtual
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/2
Espaço de Endereçamento Virtual
En dereço Físico
50 0
50 1
50 2
50 3
50 4
.
.
.
59 9
V ET [1]
V ET [2]
V ET [3]
V ET [4]
V ET [5]
.
.
.
.
.
.
V ET [10 0]
• Vetor de 100 posições
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/3Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Espaço de Endereçamento Virtual
• Espaço de endereçamento virtual e real
Esp
aço
de
en
der
eça
me
nto
vir
tua
l
Esp
aço
de
end
ereç
am
ento
rea
l
En dereço vir tu a l 0
En dereço vir tu a l 1
En dereço vir tu a l 2
En dereço vir tu a l 3
En dereço vir tu a l 4
En dereço vir tu a l 5
.
.
.
En dereço vir tu a l V
En dereço rea l 0
En dereço rea l 1
En dereço rea l 2
En dereço rea l 3
.
.
.
En dereço rea l R
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/4Arq
uite
tura
de
Sis
tem
as O
pera
cion
ais
– M
acha
do/M
aia
Espaço de Endereçamento Virtual
• Espaço de endereçamento virtual
M em ória V irtua l
.
.
.
.
M em ória Pr in cipa l
M em ór ia Secu nd á r ia
.
.
.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/5
Mapeamento
• Mapeamento
M em ória V irtua l
M em ór ia Pr in cip a l
M ap eam en to
.
.
.
.
.
.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/6
Mapeamento
• Tabela de mapeamento
Processo A
Esp aço d een dereça m en to
virtua l d e A
En dereço vir tu a l 1
.
.
.
Tab ela dem a pea m en to
d e A
Esp aço d een dereça m en to
virtua l d e B
En dereço vir tu a l 1
.
.
.
Tab ela dem a pea m en to
d e B
Processo B
M em ó ria Pr in cip a l
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/7
Memória Virtual por Paginação
• Tabela de páginas
M em ória V ir tua l
.
.
.
.
Págin a virtua l 0
Pág in a virtua l 1
Pág in a virtua l 2
Pág in a virtua l V
Tab ela dep ágin as
ETP
M em ória Pr in cipa l
M em ór ia Secu nd á r ia
.
.
.
Págin a rea l 0
Pág in a rea l 1
Pág in a rea l R
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/8
Memória Virtual por Paginação
• Tradução do endereço virtual Págin a virtua l
D eslocam en to
En dereço virtu a l
D esloc.N PV
En d. do fra m e
ETP
Tab ela de pá g ina s
En d. do fra m e D esloc.
Fram e
D eslocam en to
En dereço físico
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/9
Memória Virtual por Paginação
• Mecanismo de tradução
En dereço virtu a l
Ta b ela de pá g ina s
Bit d e va l id ad e
0
M em ór ia Pr in cipa l
M em ór ia secun d á ria
Page fau lt
Ta b ela de pá g ina s
Bit d e va l id ad e
1
M em ór ia Pr in cipa l
M em ór ia secun d á ria
Pa ge in
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/10
Políticas de Substituição de Páginas
• Substituição de páginas
M em ória Pr in cip a l
A rq u ivo dep ag in açã o
Pag e o ut
Pag e in
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/11
Working Set
• Conceito de localidade
Página 0
Página 1
Página 2
Página 3
Página 4
In icia lizaçã o
W H ILE () D O BEG IN
EN D ;
Im pr im e resu lta do s
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/12
Working Set
• Modelo de working set
tem po
P2 P3 P2 P8
t1 t2
J an ela d o w o rk ing set ( t)
W (t , t)2
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/13
Working Set
• Tamanho do working set
tem po
P2 P3 P4 P5 P2 P5 P5 P5 P5 P6
t1 t2 t3
ta tb
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/14
Working Set
• Taxa de page fault x limite de páginas reais
Lim ite d e p ág in as rea is
Taxa
de
pa
ge
fa
ult
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/15
Algoritmos de Substituição de Páginas
• FIFO
Pág in am a is an tig a
Pág in am a is recente
sa íd a en trad a
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/16
Algoritmos de Substituição de Páginas
• FIFO com Buffer de Páginas
in ício fi m
in íciofi m
(a ) (c)(b )
Lista d e p ág in as l ivres
Lista d e p ág in as a lo cad as
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/17
Algoritmos de Substituição de Páginas
• FIFO Circular (Clock)
P1
P2
P3
P4P5
Pn
BR= 1
BR= 1
BR= 0
p ágin am a is
an tiga
(a )
P1
P2
P3
P4P5
Pn
BR= 0
BR= 0
BR= 0
p ágin aselecio n ad a
(b )
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/18
Tamanho de Página
• Fragmentação interna
Págin a 0
Pág in a 1
Pág in a 2
Pág in a 3
Pág in a 4
PRO G RA M Frag ;V A R
PRO C ED U RE A ;
EN D ;
BEG IN
EN D.
Frag m en tação
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/19
Paginação em Múltiplos Níveis
• Paginação em um nível
0
1
2
(2 - 1)20
Tab ela de pá g ina s
D esloc.N PV
12 b its20 b its
En dereço V irtua l
32 b its
4 M b
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/20
Paginação em Múltiplos Níveis
• Endereço virtual em dois níveis
Tab ela d iretó r io
D esloc.12 b its
N PV 110 b its
En dereço V irtua l
N PV 210 b its
Tab ela de pá g ina s
fram e
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/21
Paginação em Múltiplos Níveis
• Paginação em dois níveis
M em ória Pr in cip a l
10 23
Ta b ela d ire tó r io
0
1
2
3
0
1
2
10 23
Ta b ela de pá g ina s 1
3
0
1
2
10 23
Ta b ela de pá g ina s 0
3
0
1
2
10 23
Ta b ela de pá g ina s 1 023
3
fram e 10 0
fram e 20 00
fram e 40 00
fram e 30 0 10 0
40 00
20 00
30 0
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/22
Translation Lookaside Buffer
• Translation lookaside buffer (TLB)
M em ó ria p rincip a l
D esloc.N PV
En dereço V irtua l
Tran sla tio n Lo o kasid e Buff er (TLB)
BV Tag En d. F ísico
0
1
0
1
0
1
Tab ela de m ap eam en to
BV En d. F ísico
1
1
1
0
1
0
1
M em ó ria secun dá ria
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/23
Proteção de Memória
• Proteção para páginas
L GEn dereço da
p ág in a / seg m en to
Bits d e p ro teçã o
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/24
Proteção de Memória
• Mecanismo de proteção
D escrição
Sem a cessoA cesso d e le itu ra
A cesso p a ra le itura / g ravação
LG
001011
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/25
Compartilhamento de Memória
• Compartilhamento de memória
Processo A
Esp aço deen dereça m en to
virtua l d e A
En dereço vir tu a l 1
.
.
.
Tab ela dem a pea m en to
d e A
Esp aço deen dereça m en to
virtua l d e B
En dereço vir tu a l 1
.
.
.
Tab ela dem a pea m en to
d e B
Processo B
M em ória Pr in cip a l
Pág in a
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/26
Memória Virtual por Segmentação
• Segmentação
PRO G RA M Segm ento ;
V A R A : A RRA Y... C : . ..
PRO C ED U RE X;
EN D ;
FU N C TIO N Y;
EN D ;
BEG IN
EN D.
Proced im ento X
Program a Pr in cipa l
Fu nçã o Y
A rray A
Va riáve l C
.
.
.
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/27
Memória Virtual por Segmentação
• Tradução do endereço virtual D eslocam en to
En dereço virtu a l
D esloc.
En d. do seg m en to
ETS
Tab ela de seg m en tos
D esloc.
Segm ento n am em ória pr in cipa l
D eslocam en to
En dereço físico
Segm ento vir tua l
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/28
Memória Virtual por Segmentação com Paginação
• Segmentação com paginação
En dereço do fram e D eslocam en to
D eslocam en toN um .
seg m en toN um .
p ágin a
En dereço vir tu a l
Segm ento virtua l
En d. da ta bela d e p ág in as
ETS
Tab ela de seg m en tos
En dereço do fram e
ETP
Tab ela de pá g ina s
En dereço físico
Arq
uit
etu
ra d
e S
iste
mas
Opera
cionais
– M
ach
ado/M
aia
10/29
Swapping em Memória Virtual
• Swapping em memória virtual M em ória Pr in cipa l
Processo A
Processo B
Processo E
Processo D
Processo CProcesso F
M em ória Pr in cipa l
Processo A
Processo F
Processo B
Processo D
Processo CA rq u ivo desw a pp in g
Processo B
Sw ap ou t
Sw ap in