Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10

Preview:

DESCRIPTION

Arquitetura de Sistemas Operacionais Francis Berenger Machado Luiz Paulo Maia Capítulo 10 Gerência de Memória Virtual. Espaço de Endereçamento Virtual. Vetor de 100 posições. Espaço de Endereçamento Virtual. Espaço de endereçamento virtual e real. - PowerPoint PPT Presentation

Citation preview

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

Recommended