Capítulo 9: Memória Virtual

16
Silberschatz, Galvin and Gagne ©2009 perating System Concepts – 8 th Edition Capítulo 9: Memória Virtual

description

Capítulo 9: Memória Virtual. Objetivos. Descrever os benefícios de um sistema de memória virtual Explicar os conceitos de paginação sob demanda, algoritmo de substituição de página e alocação de blocos. Fundamentos. Memória virtual – separação da memória lógica do usuário da memória física. - PowerPoint PPT Presentation

Transcript of Capítulo 9: Memória Virtual

Page 1: Capítulo 9:  Memória Virtual

Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Capítulo 9: Memória Virtual

Page 2: Capítulo 9:  Memória Virtual

9.2 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Objetivos

Descrever os benefícios de um sistema de memória virtual

Explicar os conceitos de paginação sob demanda, algoritmo de substituição de página e alocação de blocos

Page 3: Capítulo 9:  Memória Virtual

9.3 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Fundamentos

Memória virtual – separação da memória lógica do usuário da memória física.

Somente parte do programa precisa estar na memória para execução.

Espaço de endereçamento lógico pode ser bem maior que o espaço de endereçamento físico.

Permite espaços de endereçamento serem compartilhados por vários processos.

Permite a criação de processos mais eficiente.

Memória Virtual pode ser implementada via:

Paginação sob demanda

Segmentação sob demanda

Page 4: Capítulo 9:  Memória Virtual

9.4 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Memória Virtual que é Maior do que a Memória Física

Page 5: Capítulo 9:  Memória Virtual

9.5 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Espaço de Endereçamento Virtual

Page 6: Capítulo 9:  Memória Virtual

9.6 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Biblioteca Compartilhada Usando Memória Virtual

Page 7: Capítulo 9:  Memória Virtual

9.7 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Paginação sob Demanda

Traz uma página para a memória somente quando ela é necessária.

Necessita de menos E/S

Ocupa menos memória

Resposta mais rápida

Aumenta a multiprogramação

Página é necessária a referencia

Referência inválida aborta

Não presente na memória traz para a memória

Mecanismo de permuta preguiçoso – nunca envia a página para a memória a não ser que ela seja necessária

O módulo que lida com o swap de páginas é chamado de paginador

Page 8: Capítulo 9:  Memória Virtual

9.8 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Transferência de uma Memória Paginada para o Espaço Contíguo de Disco

Page 9: Capítulo 9:  Memória Virtual

9.9 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Bit Válido-Inválido

Com cada entrada na tabela de páginas é associado um bit válido-inválido (v na memória, i não está na memória)

Inicialmente bit válido-inválido é i em todas entradas da tabela. Exemplo de uma tabela de páginas.

Durante a tradução de endereços, se bit válido-inválido na entrada da tabela de páginas é i página ausente (page fault).

vvv

v

i

ii

….

No do Bloco bit válido-inválido

tabela de páginas

Page 10: Capítulo 9:  Memória Virtual

9.10 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Tabela de Páginas Quando Algumas Páginas não estão na Memória Principal

Page 11: Capítulo 9:  Memória Virtual

9.11 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Página Ausente (Page Fault)

Se existe uma referência para uma página, a primeira referência para esta página irá causar uma trap no sistema operacional:

página ausente

1. SO verifica uma outra tabela para decidir: Referência inválida aborta. Não está na memória.

2. Obtém bloco livre na memória.

3. Traz página do disco para o bloco alocado.

4. Atualiza tabelas

5. Bit de validação = v.

6. Reinicia execução da Instrução que causou a página ausente.

Page 12: Capítulo 9:  Memória Virtual

9.12 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Passos no Tratamento de uma Página Ausente

Page 13: Capítulo 9:  Memória Virtual

9.13 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Substituição de Páginas

Prevenir super alocação da memória modificando a rotina de serviço da página ausente para incluir um algoritmo de substituição de página.

Usar um bit de modificação (modify / dirty bit) para reduzir a sobrecarga da transferência de página – somente páginas modificadas são gravadas no disco.

Substituição de páginas completa a separação entre a memória lógica e a memória física – grande área de memória virtual pode ser obtida com memória física reduzida.

Page 14: Capítulo 9:  Memória Virtual

9.14 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Necessidade de Substituição de Página

Page 15: Capítulo 9:  Memória Virtual

9.15 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Substituição de Página

Page 16: Capítulo 9:  Memória Virtual

Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition

Fim do Capítulo 9