Ir ao conteúdo
  • Cadastre-se

desempenho


Capitão Crunch

Posts recomendados

  • Membro VIP

Aumentar eu não diria, mas evitar perda, veja:

A memória virtual é uma forma de permitir aos programas utilizar mais memória que o computador possui fisicamente. Ela consiste de um conjunto de alterações no projeto do hardware combinadas a alterações no projeto do sistema operacional. Tecnicamente falando, ela permite ao programa executar em um espaço de memória cujo tamanho não é necessariamente limitado ao tamanho da memória física do computador.

Quando uma posição de memória é lida ou escrita, o hardware traduz o endereço gerado pelo programa ((o endereço de memória virtual) em um endereço de memória real, normalmente diferente, (o endereço físico de memória). Isto é feito preservando a parte menos significativa do endereço numérico binário, e tratando a parte mais significativa como uma chave para uma ou mais tabelas de tradução. Por esta razão uma faixa de endereços consecutivos no espaço de endereçamento virtual corresponde a uma faixa de endereços físicos. Esta faixa é chamada página. O tamanho das páginas é tipicamente entre 512 e 8192 bytes (com 4K sendo muito comum), entretanto, páginas de 4 MB ou maiores podem ser utilizadas para propósitos especiais.

A tradução é implementada pela MMU, que pode ser um módulo da CPU ou um circuito auxiliar em um chip interligado à CPU. A MMU tem a habilidade de monitorar referências a páginas de acordo com o tipo de referência (para leitura, para escrita ou execução) e o privilégio da CPU quando a referência foi gerada. Além disto, a MMU pode detectar que uma referência é para uma página marcada como indisponível. A MMU responde a tal condição gerando uma exceção de software para a CPU, que será capturada pelo sistema. Isto torna possível ao sistema operacional fazer o swapping (troca). Este processo consiste na cópia de uma página da memória para o disco para restaurar para a memória outra página copiada para o disco anteriormente. Isto pode ser realizado em uma partição de swap, uma seção dedicada do disco, ou em um arquivo de swap.

Para minimizar a perda de desempenho da tradução de endereços, a maioria das CPUs modernas incluem a MMU no próprio chip, e mantêm uma tabela das traduções de endereços mais recentes em um dispositivo, o TLB. Endereços com entradas no TLB são traduzidos instantaneamente.

A principal vantagem da memória virtual é que ela permite ao computador trabalhar com múltiplos programas sem o trabalho de copiar imagens de memória dos programas. Ela ainda permite ao sistema operacional proteger seu próprio código de corrupção por um aplicativo com erros e a proteção de uma aplicação da outra. Se a combinação de memória virtual e sistema operacional permite o swapping, então o computador pode ser capaz de executar simultaneamente um total de programas que supera o total de memória física disponível. Isto é possível porque muitos programas têm um pequeno conjunto de páginas (conjunto ativo) que eles referenciam durante a sua execução. Se muitos programas são executados ao mesmo tempo, então as cópias de e para o disco ficam muito freqüentes e o desempenho final fica inaceitavelmente lento. Isto é frequentemente chamado de thrashing (porque o disco está trabalhando excessivamente -thrashed) e se deve ao fato que o acesso ao meio de swap (disco rígido) ser no mínimo três vezes mais lento que o acesso à memória principal.

Fonte: Wikipedia

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...