Sistemas Operacionais
Trabalho Universitário: Sistemas Operacionais. Pesquise 861.000+ trabalhos acadêmicosPor: abpereira • 4/11/2013 • 1.446 Palavras (6 Páginas) • 9.143 Visualizações
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?
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.
4. Qual a principal diferença entre os sistemas que implementam paginação e 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 uma 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 a uma 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 sejam traduzidos 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ágina virtual que não se encontra mapeada em uma página real, ou seja, não está, no momento, na memória principal. A ocorrê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 excessivo overhead 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.
Não. A rotina de tratamento de page faults tem que permanecer sempre residente na memória principal, caso contrário nã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 implementa paginação.
A fragmentação interna em um sistema que implementa paginação só é encontrada, realmente, na última página, quando o código não ocupa o frame por completo .
11. Compare as políticas de busca de páginas apresentadas.
Na paginação por demanda, 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 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áginas que 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 da memória secundária, ao contrário de carregar uma de cada vez. Por outro lado, caso o processo não precise das páginas carregadas antecipadamente, o sistema terá perdido tempo e ocupado memória principal desnecessariamente.
12. Quais as vantagens e desvantagens da alocação de páginas variável comparada à alocação fixa?
A alocação fixa é simples de ser implementada pelo sistema operacional mas não é sempre uma boa opção pois os processos possuem necessidades diferentes na alocação de memória. A alocação variável é mais flexível mas exige que o sistema operacional monitore constantemente o comportamento dos processos gerando maior overhead.
13. Um sistema com gerência de memória virtual por paginação possui tamanho de página com 512 posições, espaço de endereçamento virtual com 512 páginas endereçadas de 0 à 511 e memória real com 10 páginas numeradas de 0 à 9. O conteúdo atual da memória real contém apenas informações
...