Memória virtual
De
Sistemas Operacionais
Memória Virtual
1) Explique o que é uma página de memória.
R: Apenas partes das aplicações carregadas no endereçamento virtual poderá ocupar a memória real num certo instante, e apenas os dados carregados na memória real são processados pelo CPU. Como existem várias aplicações concorrendo pelo uso do processador a solução encontrada foi dividir o espaço total de endereçamento dos programas em pequenos blocos de tamanho fixo.
2) Por que a falta de páginas deve ser evitada na execução dos programas?
R: Porque gera uma interrupção no CPU, pois o programa tenta usar uma página virtual que não está mapeada, fazendo-o buscar está página na memória.
3) Por que os sistemas operacionais usam um esquema chamado paging on demand?
R: As páginas dos processos são transferidas da memória secundária para a principal apenas quando são referenciadas. Este mecanismo é conveniente, na medida em que leva para a memória principal apenas as páginas realmente necessárias à execução do programa. Desse modo, é possível que partes do programa, como rotinas de tratamento de erros, nunca sejam carregadas para a memória.
4) Descreva passo a passo o que acontece após uma falta de página.
R: O sistema operacional escolhe uma moldura de página (memória física dividida em blocos de tamanho fixo) pouco usada e a salva em disco. Em seguida, carrega a página virtual referenciada pela instrução na moldura de página que foi liberada. Feito isso o sistema operacional pode reinicializar a instrução causadora da interrupção.
5) Qual a diferença entre paginação e segmentação?
R: A grande diferença entre a paginação e a segmentação é que, enquanto a primeira divide a memória em partes de tamanhos fixos, sem ligação com a estrutura do processo, a segmentação permite uma relação entre a lógica do processo e sua divisão na memória.
6) Uma máquina tem um endereçamento virtual de 28 bits e um endereçamento físico de 27