i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... ·...

29
Arquitetura de Sistemas Operacionais – Machado/Maia 10/1 Arquitetura de Sistemas Arquitetura de Sistemas Operacionais Operacionais Francis Berenger Machado Francis Berenger Machado Luiz Paulo Maia Luiz Paulo Maia Capítulo 10 Capítulo 10 Gerência de Memória Virtual Gerência de Memória Virtual

Transcript of i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... ·...

Page 1: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/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

Page 2: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/2

Espaço de Endereçamento Virtual

E n d e r e ç o F í s i c o

5 0 0

5 0 1

5 0 2

5 0 3

5 0 4

.

.

.

5 9 9

V E T [ 1 ]

V E T [ 2 ]

V E T [ 3 ]

V E T [ 4 ]

V E T [ 5 ]

.

.

.

.

.

.

V E T [ 1 0 0 ]

• Vetor de 100 posições

Page 3: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/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 Es

pa

ço d

e e

nd

ere

çam

en

to v

irtu

al

Esp

aço

de

en

de

reça

men

to r

eal

E n d e r e ç o v i r t u a l 0

E n d e r e ç o v i r t u a l 1

E n d e r e ç o v i r t u a l 2

E n d e r e ç o v i r t u a l 3

E n d e r e ç o v i r t u a l 4

E n d e r e ç o v i r t u a l 5

.

.

.

E n d e r e ç o v i r t u a l V

E n d e r e ç o r e a l 0

E n d e r e ç o r e a l 1

E n d e r e ç o r e a l 2

E n d e r e ç o r e a l 3

.

.

.

E n d e r e ç o r e a l R

Page 4: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/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 e m ó r i a V i r t u a l

.

.

.

.

M e m ó r i a P r i n c i p a l

M e m ó r i a S e c u n d á r i a

.

.

.

Page 5: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/5

Mapeamento

• Mapeamento

M e m ó r i a V i r t u a l

M e m ó r i a P r i n c i p a l

M a p e a m e n t o

.

.

.

.

.

.

Page 6: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/6

Mapeamento

• Tabela de mapeamento

P r o c e s s o A

E s p a ç o d ee n d e r e ç a m e n t o

v i r t u a l d e A

E n d e r e ç o v i r t u a l 1

.

.

.

T a b e l a d em a p e a m e n t o

d e A

E s p a ç o d ee n d e r e ç a m e n t o

v i r t u a l d e B

E n d e r e ç o v i r t u a l 1

.

.

.

T a b e l a d em a p e a m e n t o

d e B

P r o c e s s o B

M e m ó r i a P r i n c i p a l

Page 7: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/7

Memória Virtual por Paginação

• Tabela de páginas

M e m ó r i a V i r t u a l

.

.

.

.

P á g i n a v i r t u a l 0

P á g i n a v i r t u a l 1

P á g i n a v i r t u a l 2

P á g i n a v i r t u a l V

T a b e l a d ep á g i n a s

E T P

M e m ó r i a P r i n c i p a l

M e m ó r i a S e c u n d á r i a

.

.

.

P á g i n a r e a l 0

P á g i n a r e a l 1

P á g i n a r e a l R

Page 8: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/8

Memória Virtual por Paginação

• Tradução do endereço virtual P á g i n a v i r t u a l

D e s l o c a m e n t o

E n d e r e ç o v i r t u a l

D e s l o c .N P V

E n d . d o f r a m e

E T P

T a b e l a d e p á g i n a s

E n d . d o f r a m e D e s l o c .

F r a m e

D e s l o c a m e n t o

E n d e r e ç o f í s i c o

Page 9: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/9

Memória Virtual por Paginação

• Mecanismo de tradução

E n d e r e ç o v i r t u a l

T a b e l a d e p á g i n a s

B i t d e v a l i d a d e

0

M e m ó r i a P r i n c i p a l

M e m ó r i a s e c u n d á r i a

T a b e l a d e p á g i n a s

B i t d e v a l i d a d e

1

M e m ó r i a P r i n c i p a l

M e m ó r i a s e c u n d á r i a

P a g e i n

Page 10: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/10

Políticas de Substituição de Páginas

• Substituição de páginas

M e m ó r i a P r i n c i p a l

A r q u i v o d ep a g i n a ç ã o

Page 11: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/11

Working Set

• Conceito de localidade

P á g i n a 0

P á g i n a 1

P á g i n a 2

P á g i n a 3

P á g i n a 4

I n i c i a l i z a ç ã o

W H I L E ( ) D O B E G I N

E N D ;

I m p r i m e r e s u l t a d o s

Page 12: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/12

Working Set

• Modelo de working set

t e m p o

P 2 P 3 P 2 P 8

t 1 t 2

J a n e l a d o w o r k i n g s e t ( t )

W ( t , t )2

Page 13: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/13

Working Set

• Tamanho do working set

t e m p o

P 2 P 3 P 4 P 5 P 2 P 5 P 5 P 5 P 5 P 6

t 1 t 2 t 3

t a t b

Page 14: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/14

Working Set

• Taxa de page fault x limite de páginas reais

L i m i t e d e p á g i n a s r e a i s

Taxa

de

pa

ge

fa

ult

Page 15: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/15

Algoritmos de Substituição de Páginas

• FIFO

P á g i n am a i s a n t i g a

P á g i n am a i s r e c e n t e

s a í d a e n t r a d a

Page 16: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/16

Algoritmos de Substituição de Páginas

• FIFO com Buffer de Páginas

i n í c i o fi m

i n í c i ofi m

( a ) ( c )( b )

L i s t a d e p á g i n a s l i v r e s

L i s t a d e p á g i n a s a l o c a d a s

Page 17: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/17

Algoritmos de Substituição de Páginas

• FIFO Circular (Clock)

P 1

P 2

P 3

P 4P 5

P n

B R = 1

B R = 1

B R = 0

p á g i n am a i s

a n t i g a

( a )

P 1

P 2

P 3

P 4P 5

P n

B R = 0

B R = 0

B R = 0

p á g i n as e l e c i o n a d a

( b )

Page 18: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/18

Tamanho de Página

• Fragmentação interna

P á g i n a 0

P á g i n a 1

P á g i n a 2

P á g i n a 3

P á g i n a 4

P R O G R A M F r a g ;V A R

P R O C E D U R E A ;

E N D ;

B E G I N

E N D .

F r a g m e n t a ç ã o

Page 19: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/19

Paginação em Múltiplos Níveis

• Paginação em um nível

0

1

2

( 2 - 1 )2 0

T a b e l a d e p á g i n a s

D e s l o c .N P V

1 2 b i t s2 0 b i t s

E n d e r e ç o V i r t u a l

3 2 b i t s

4 M b

Page 20: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/20

Paginação em Múltiplos Níveis

• Endereço virtual em dois níveis

T a b e l a d i r e t ó r i o

D e s l o c .1 2 b i t s

N P V 11 0 b i t s

E n d e r e ç o V i r t u a l

N P V 21 0 b i t s

T a b e l a d e p á g i n a s

f r a m e

Page 21: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/21

Paginação em Múltiplos Níveis

• Paginação em dois níveis

M e m ó r i a P r i n c i p a l

1 0 2 3

T a b e l a d i r e t ó r i o

0

1

2

3

0

1

2

1 0 2 3

T a b e l a d e p á g i n a s 1

3

0

1

2

1 0 2 3

T a b e l a d e p á g i n a s 0

3

0

1

2

1 0 2 3

T a b e l a d e p á g i n a s 1 0 2 3

3

f r a m e 1 0 0

f r a m e 2 0 0 0

f r a m e 4 0 0 0

f r a m e 3 0 0 1 0 0

4 0 0 0

2 0 0 0

3 0 0

Page 22: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/22

Translation Lookaside Buffer

• Translation lookaside buffer (TLB)

M e m ó r i a p r i n c i p a l

D e s l o c .N P V

E n d e r e ç o V i r t u a l

T r a n s l a t i o n L o o k a s i d e B u ff e r ( T L B )

B V T a g E n d . F í s i c o

0

1

0

1

0

1

T a b e l a d e m a p e a m e n t o

B V E n d . F í s i c o

1

1

1

0

1

0

1

M e m ó r i a s e c u n d á r i a

Page 23: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/23

Proteção de Memória

• Proteção para páginas

L GE n d e r e ç o d a

p á g i n a / s e g m e n t o

B i t s d e p r o t e ç ã o

Page 24: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/24

Proteção de Memória

• Mecanismo de proteção

D e s c r i ç ã o

S e m a c e s s oA c e s s o d e l e i t u r a

A c e s s o p a r a l e i t u r a / g r a v a ç ã o

L G

0 01 01 1

Page 25: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/25

Compartilhamento de Memória

• Compartilhamento de memória

P r o c e s s o A

E s p a ç o d ee n d e r e ç a m e n t o

v i r t u a l d e A

E n d e r e ç o v i r t u a l 1

.

.

.

T a b e l a d em a p e a m e n t o

d e A

E s p a ç o d ee n d e r e ç a m e n t o

v i r t u a l d e B

E n d e r e ç o v i r t u a l 1

.

.

.

T a b e l a d em a p e a m e n t o

d e B

P r o c e s s o B

M e m ó r i a P r i n c i p a l

P á g i n a

Page 26: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/26

Memória Virtual por Segmentação

• Segmentação

P R O G R A M S e g m e n t o ;

V A R A : A R R A Y . . . C : . . .

P R O C E D U R E X ;

E N D ;

F U N C T I O N Y ;

E N D ;

B E G I N

E N D .

P r o c e d i m e n t o X

P r o g r a m a P r i n c i p a l

F u n ç ã o Y

A r r a y A

V a r i á v e l C

.

.

.

Page 27: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/27

Memória Virtual por Segmentação

• Tradução do endereço virtual D e s l o c a m e n t o

E n d e r e ç o v i r t u a l

D e s l o c .

E n d . d o s e g m e n t o

E T S

T a b e l a d e s e g m e n t o s

D e s l o c .

S e g m e n t o n am e m ó r i a p r i n c i p a l

D e s l o c a m e n t o

E n d e r e ç o f í s i c o

S e g m e n t o v i r t u a l

Page 28: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/28

Memória Virtual por Segmentação com Paginação

• Segmentação com paginação

E n d e r e ç o d o f r a m e D e s l o c a m e n t o

D e s l o c a m e n t oN u m .

s e g m e n t oN u m .

p á g i n a

E n d e r e ç o v i r t u a l

S e g m e n t o v i r t u a l

E n d . d a t a b e l a d e p á g i n a s

E T S

T a b e l a d e s e g m e n t o s

E n d e r e ç o d o f r a m e

E T P

T a b e l a d e p á g i n a s

E n d e r e ç o f í s i c o

Page 29: i a Arquitetura de Sistemas OperacionaisOperacionaispopov/aulas/unisul/so/ASO - Cap. 10... · Arquitetura de Sistemas OperacionaisOperacionais Francis Berenger Machado Luiz Paulo

Arq

uitet

ura

de

Sis

tem

as O

per

acio

nais

– M

achad

o/M

aia

10/29

Swapping em Memória Virtual

• Swapping em memória virtual M e m ó r i a P r i n c i p a l

P r o c e s s o A

P r o c e s s o B

P r o c e s s o E

P r o c e s s o D

P r o c e s s o CP r o c e s s o F

M e m ó r i a P r i n c i p a l

P r o c e s s o A

P r o c e s s o F

P r o c e s s o B

P r o c e s s o D

P r o c e s s o CA r q u i v o d e

s w a p p i n g

P r o c e s s o B