Memória Virtual
Ensaios: Memória Virtual. Pesquise 862.000+ trabalhos acadêmicosPor: Albertogomes02 • 11/6/2014 • 6.311 Palavras (26 Páginas) • 2.402 Visualizações
Exercícios
1. Quais os benefícios oferecidos pela técnica de memória virtual?Como este conceito permite que um programa e seus dados ultrapassem os limites da memória principal?
Memória virtual é uma técnica sofisticada e poderosa de gerencia de memória, onde as memórias principal e secundárias são combinadas dando ao usuário ilusão de existir uma memória muito maior que a capacidade real da memória principal.
Outra vantagem da técnica de memória virtual é permitir um número maior de processos compartilhando a memória principal, já que apenas partes de cada processo estão residentes. Isto leva a uma utilização mais eficiente também do processador.
2. Explique como um endereço virtual de um processo é traduzido para um endereço real na memória principal?
No momento da execução de uma instrução, o endereço virtual referenciado é traduzido para um endereço físico, pois o processador manipula apenas posições da memória principal. O mecanismo de tradução do endereço virtual para endereço físico é denominado mapeamento.
3. Por que o mapeamento deve ser feito em blocos e não sobre células individuais?Apresente um exemplo numérico.
Caso o mapeamento fosse realizado para cada célula na memória principal, o espaço ocupado pelas tabelas seria tão grande quanto o espaço de endereçamento virtual de cada processo, o que inviabilizaria a implementação do mecanismo de memória virtual. Em função disso, as tabelas mapeiam blocos de dados, cujo tamanho determina o número de entradas existentes nas tabelas de mapeamento.
|Espaço de Endereçamento Virtual|Tamanho de Blocos |Número de Blocos |Números de Entradas na Tabela |
| | | |de Mapeamento |
|232|512 endereços | 223 | 223 |
|endereços | | | |
|232 |4 K endereços | 220 | 220 |
|endereços | | | |
|264 |4 K endereços | | |
|endereços | |252 |252 |
|264 |64 K endereços | 248 | 248 |
|endereços | | | |
4. Qual a principal diferença entre os sistemas que implementam paginação e os que implementam segmentação?
Paginação X Segmentação
|Características |Paginação |Segmentação |
|Tamanho dos blocos de memória |Iguais |Diferente |
|Proteção |Complexa |Mais simples |
|Compartilhamento |Complexo |Mais simples |
|Estrutura de dados dinâmicas |Complexo |Mais simples ||Fragmentação interna |Pode existir |Não existe |
|Fragmentação externa |Não existe |Pode existir |
|Programação modular |Dispensável |Indispensável |
|Alteração do programa |Mais trabalhos |Mais simples |
5. Diferencie página virtual de página real.
Página virtual é um conjunto de endereços virtuais que faz parte do espaço de endereçamento virtual de um processo.Página real é um conjunto de endereços reais localizado na memória principal. A página real está sempre associada auma página virtual.
6. O que são tabelas de páginas e tabelas de segmentos?
São tabelas de mapeamento, utilizadas no mecanismo de memória virtual, que possibilitam que endereços virtuais sejamtraduzidos em endereços reais.
7. Para que serve o bit de validade nas tabelas de páginas e segmentos?
Para indicar se a página ou o segmento em questão encontra-se na memória principal.
8. O que é um Page fault, quando ocorre e quem controla a sua ocorrência?Como uma elevada taxa de Page fault pode comprometer o sistema operacional?
O page fault ocorre todas as vezes que um processo faz referência a um endereço virtual pertencente a uma páginavirtual que não se encontra mapeada em uma página real, ou seja, não está, no momento, na memória principal. Aocorrência de um page fault é verificada através do bit de validade presente na ETP da tabela de páginas referente àpágina virtual. Uma elevada taxa de page fault pode comprometer o desempenho do sistema devido ao excessivooverhead de operações de E/S gerados pela paginação.
9. Nos sistemas com paginação, a rotina para tratamento de Page faults está residente na memória principal.Esta rotina pode ser removida da memória principal durante a ocorrência de um Page fault?
Não. A rotina de tratamento de page faults tem que permanecer sempre residente na memória principal, caso contrárionão será possível realizar o page in quando necessário (no caso, até mesmo da própria rotina).
10. Descreva como ocorre a fragmentação interna em um sistema que implementam paginação.
A fragmentação interna em um sistema que implementa paginação só é encontrada, realmente, na última página, quandoo código não ocupa o frame por completo .
11. Compare as políticas de busca de paginação apresentadas.
Na paginação por demanda, as páginas dos processos são transferidas da memória secundária para a principal apenasquando são referenciadas. Este mecanismo é conveniente, na medida em que leva para a memória principal apenas aspáginas realmente necessárias à execução do programa. Desse modo, é possível que partes não executadas do programa,como rotinas de tratamento de erros, nunca sejam carregadas para a memória.Na paginação antecipada, o sistema carrega para a memória principal, além das páginas referenciadas, outras páginasque podem ou não ser necessárias ao processo ao longo do seu processamento. Se imaginarmos que o programa está armazenado seqüencialmente no disco, existe uma grande economia de tempo em levar um conjunto de páginas damemória secundária, ao contrário de carregar uma de cada vez. Por outro lado, caso o processo não precise das páginascarregadas antecipadamente, o sistema terá perdido tempo e ocupado memória principal desnecessariamente.
12.
...