Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9:...
Transcript of Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9:...
![Page 1: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/1.jpg)
Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition
Capítulo 9: Memória Virtual
![Page 2: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/2.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/3.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/4.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/5.jpg)
9.5 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition
Espaço de Endereçamento Virtual
![Page 6: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/6.jpg)
9.6 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition
Biblioteca Compartilhada Usando Memória Virtual
![Page 7: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/7.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/8.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/9.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/10.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/11.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/12.jpg)
9.12 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition
Passos no Tratamento de uma Página Ausente
![Page 13: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/13.jpg)
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: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/14.jpg)
9.14 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition
Necessidade de Substituição de Página
![Page 15: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/15.jpg)
9.15 Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition
Substituição de Página
![Page 16: Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Capítulo 9: Memória Virtual.](https://reader035.fdocument.pub/reader035/viewer/2022062307/552fc12b497959413d8d11e3/html5/thumbnails/16.jpg)
Silberschatz, Galvin and Gagne ©2009Operating System Concepts – 8th Edition
Fim do Capítulo 9