• Nenhum resultado encontrado

Cap. 10 Gerência de Memória Virtual 1

N/A
N/A
Protected

Academic year: 2021

Share "Cap. 10 Gerência de Memória Virtual 1"

Copied!
42
0
0

Texto

(1)

Arquitetura de Sistemas Arquitetura de Sistemas

Operacionais Operacionais

Francis Berenger Machado Francis Berenger Machado 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

(2)

Sumário

• Introdução

• Espaço de Endereçamento Virtual

• Mapeamento

• Memória Virtual por Paginação

– Política de Busca de Páginas – Política de Busca de Páginas

– Política de Alocação de Páginas

– Política de Substituição de Páginas – Working Set

– Algoritmo de Substituição de Páginas – Tamanho de Página

– Paginação em Múltiplos Níveis

(3)

Sumário

• Memória Virtual por Paginação (cont.)

– Translation Lookaside Buffer – Proteção de Memória

– Compartilhamento de Memória

• Memória Virtual por Segmentação

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

• Swapping em Memória Virtual

• Thrashing

(4)

Introdução

• Memória virtual é uma técnica que combina memória principal e

secundária

• Maximizar o número de processos na memória

memória

• Reduzir a fragmentação

• Permitir estruturas e dados maiores

que a memória

(5)

Espaço de Endereçamento Virtual

Endereço Físico 500

501 502

VET [1]

VET [2]

VET [3]

• Vetor de 100 posições

502 503 504

. . . 599

VET [3]

VET [4]

VET [5]

. . . .

. .

VET [100]

(6)

Espaço de Endereçamento Virtual

• Espaço de endereçamento virtual e real

ento virtual reçamento real

Endereço virtual 0 Endereço virtual 1 Endereço virtual 2 Endereço virtual 3

Endereço real 0 Endereço real 1 Endereço real 2 Endereço real 3

Espaço de endereçame Espaço de endereEndereço virtual 3 Endereço virtual 4

Endereço virtual 5

. . .

Endereço virtual V

Endereço real 3

. . .

Endereço real R

(7)

Espaço de Endereçamento Virtual

• Espaço de endereçamento virtual

Memória Virtual Memória Principal

. . .

. . . .

Memória Secundária

.

(8)

Mapeamento

Memória Virtual

Memória Principal

. .

• Mapeamento

Mapeamento

. .

. .

.

(9)

Mapeamento

• Tabela de

mapeamento

Espaço de endereçamento

virtual de A

Endereço virtual 1

. . .

Tabela de mapeamento

de A

Memória Principal

Processo A

Espaço de endereçamento

virtual de B

Endereço virtual 1

. . .

Tabela de mapeamento

de B

(10)

Mapeamento

• Espaço virtual x tamanho do bloco

(11)

Memória Virtual por Paginação

• Tabela de páginas

Memória Virtual

Página virtual 0

Página virtual 1

Tabela de

Memória Principal

. .

Página real 0

Página real 1

. . . .

Página virtual 2

Página virtual V

Tabela de páginas

ETP

Memória Secundária

. .

Página real R

(12)

Memória Virtual por Paginação

• Tradução do

endereço virtual

Página virtual Deslocamento

Endereço virtual

Desloc.

NPV

Tabela de páginas

End. do frame ETP

End. do frame Desloc.

Frame

Deslocamento Endereço físico

(13)

Memória Virtual por Paginação

• Mecanismo de tradução

Endereço virtual

Tabela de páginas

Bit de validade 0

Memória Principal

Page fault

Page in

Memória secundária

Tabela de páginas

Bit de validade 1

Memória Principal

Memória secundária

(14)

Política de Busca de Páginas

• Determina quando uma página deve ser carregada para a memória

• Paginação por demanda

• Paginação antecipada

• Paginação antecipada

(15)

Política de Alocação de Páginas

• Determina quantos frames um processo pode ter na memória

• Alocação fixa

• Alocação variável

(16)

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

• Substituição de páginas

Memória Principal

Arquivo de paginação

Page o Page out

Page in

(17)

Working Set

• Conceito de localidade

Página 0

Página 1

Inicialização

WHILE () DO BEGIN

Página 2

Página 3

Página 4

BEGIN

END;

Imprime resultados

(18)

Working Set

• Modelo de working set

Janela do working set ( t)

tempo

P2 P3 P2 P8

t 1 t 2

W(t , t)

2

(19)

Working Set

• Tamanho do working set

tempo

P2 P3 P4 P5 P2 P5 P5 P5 P5 P6

t t t tempo

t 1 t 2 t 3

t a t b

(20)

Working Set

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

g e f a u lt

Limite de páginas reais

Ta x a d e p a g e

(21)

Algoritmos de Substituição de Páginas

• FIFO

saída entrada

Página mais antiga

Página mais recente

(22)

Algoritmos de Substituição de Páginas

• Ótimo

• Aleatório

• FIFO

• LFU

• LRU

• LRU

• NRU

• FIFO com buffer de páginas

• FIFO circular

(23)

Algoritmos de Substituição de Páginas

• Bits de referência e modificação

(24)

Algoritmos de Substituição de Páginas

• FIFO com Buffer de Páginas

início Lista de páginas livres fim

início fim

(a) (c) (b)

Lista de páginas alocadas

(25)

Algoritmos de Substituição de Páginas

• FIFO Circular (Clock)

P1

Pn P2

BR= 1

BR= 1

página mais

P1

Pn P2

BR= 0

BR= 0

P3

P5 P4

BR= 0 mais

antiga

(a)

P3

P5 P4

BR= 0 página

selecionada

(b)

(26)

Tamanho de Página

• Fragmentação interna

Página 0

Página 1

PROGRAM Frag;

VAR

PROCEDURE A;

Página 2

Página 3

Página 4

END;

BEGIN

END.

Fragmentação

(27)

Paginação em Múltiplos Níveis

• Paginação em um nível

0 1

Tabela de páginas

Endereço Virtual

2

(2 -1)20 Desloc.

NPV

12 bits 20 bits

Endereço Virtual

32 bits

4 Mb

(28)

Paginação em Múltiplos Níveis

• Endereço virtual em dois níveis

Desloc.

12 bits NPV 1

10 bits

Endereço Virtual NPV 2 10 bits

Tabela diretório

Tabela de páginas

(29)

Paginação em Múltiplos Níveis

• Paginação

em dois níveis

Tabela diretório 0

1

0 1 2

Tabela de páginas 1 0

1 2

1023

Tabela de páginas 0

3

frame 100 frame 2000

frame 4000

frame 300 100

300

Memória Principal 1023

2 3

1023 3

0 1 2

Tabela de páginas 1023

3

4000 2000

(30)

Translation Lookaside Buffer

Memória principal Desloc.

NPV Endereço Virtual

Translation Lookaside Buffer (TLB)

BV Tag End. Físico

0 1 0 1 0 1

• Translation Lookaside Buffer (TLB)

Tabela de mapeamento BV End. Físico

1 1 1

0

1 0 1

(31)

Translation Lookaside Buffer

• Campos da TLB

(32)

Proteção de Memória

• Proteção para páginas

L G Endereço da

L G Endereço da

página/ segmento

Bits de proteção

(33)

Proteção de Memória

• Mecanismo de proteção

Descrição LG

Sem acesso Acesso de leitura

Acesso para leitura/ gravação 00

10

11

(34)

Compartilhamento de Memória

Espaço de endereçamento

virtual de A

Endereço virtual 1

. . .

Tabela de mapeamento

de A

Memória Principal

Processo A

Espaço de endereçamento

virtual de B

Endereço virtual 1

. . .

Tabela de mapeamento

de B

Página

(35)

Memória Virtual por Segmentação

• Segmentação

PROGRAM Segmento;

VAR A: ARRAY...

C: ...

PROCEDURE X;

Procedimento X

Programa Principal Função Y END;

FUNCTION Y;

END;

BEGIN END.

Array A

Variável C

.

.

.

(36)

Memória Virtual por Segmentação

• Tradução do

endereço virtual

Deslocamento Endereço virtual

Desloc.

Tabela de segmentos Segmento virtual

End. do segmento ETS

Desloc.

Segmento na memória principal

Deslocamento Endereço físico

(37)

Memória Virtual por Segmentação

• Campos da ETS

(38)

Memória Virtual por Segmentação

• Paginação x segmentação

(39)

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

Deslocamento Num.

segmento

Num.

página

Endereço virtual Segmento virtual

• Segmentação com paginação

End. da tabela de páginas ETS

Tabela de segmentos

Endereço do frame ETP

Tabela de páginas

(40)

Swapping em Memória Virtual

Memória Principal

Processo A

Processo B

Processo D Processo C

Processo F

Swap o

• Swapping em memória virtual

Processo E

Processo D

Memória Principal

Processo A

Processo F

Processo B Processo C

Arquivo de swapping Processo B ap o

ut

Swap in

(41)

Thrashing

• Excessiva transferência de páginas e/ou segmentos entre a memória principal e memória secundária

• Ocorre em dois níveis:

• Ocorre em dois níveis:

– no próprio processo

– no sistema

(42)

Thrashing

• Se existirem mais processos para serem executados que memória real disponível, a única solução é a expansão da memória principal.

• Este problema não ocorre apenas em

sistemas que implementam memória

virtual, mas também em sistemas com

outros mecanismos de gerência de

memória

Referências

Documentos relacionados

Requisitos: Curso de graduação em Medicina, fornecido por instituição de ensino oficial e reconhecida pelo Ministério de Educação e registro no Órgão da Classe.

Os fanclipes e os inúmeros videoclipes feitos pelos fãs (recombinando imagens, ressignificando sonoridades) parecem ser a premissa para a criação neste período amplamente

Para que essa análise seja feita da maneira mais eficiente possível, é necessário criar um ambiente de estabilidade na empresa, ou seja, um ambiente que favoreça o

[r]

Forminha Torta de Maçã Bandeja Crespa Aço Inox. Forma Confeiteiro

A Solven Solventes e Químicos Ltda, com os fatos dessa ficha, não pretende estabelecer informações absolutas e definitivas sobre o produto e seus riscos, mas subsidiar com

Explica 2 aspetos relativos à importância dos transportes marítimos e aéreos de modo completo, dois para um dos tópicos ou um para cada

Visando garantir a idoneidade da promoção, no caso de apresentação de mais de (i) 02 (duas) notas/cupons fiscais e/ou comprovantes de compras emitidos para a mesma pessoa, pela