Primeiro, você provavelmente não deveria estar executando um processo que ocupa toda a memória.
A razão pela qual isso acontece é devido a swap space
.
Tempo de Analogia
Você tem um ônibus. Este ônibus tem assentos "preferidos" dentro do ônibus e assentos de "estouro" no telhado. As pessoas só se sentam no telhado se todos os assentos preferidos forem ocupados e eles ainda precisam andar no ônibus.
Esse barramento tem as seguintes propriedades exclusivas :
- Os assentos são extremamente pequenos; uma pessoa média ocuparia um grande número de assentos, talvez 2 ou 4 para uma criança, 8 ou 10 para um adulto, alguns até 40.
- O tempo necessário para embarcar ou desembarcar do ônibus é 20 vezes mais rápido para pessoas em assentos preferenciais do que em assentos excedentes.
Existem também três regras culturais sobre este barramento:
- Uma regra é que as pessoas que estão apenas embarcando no ônibus podem "bater" nas pessoas que estiveram no ônibus mais cedo, o que força a pessoa a se levantar de um assento preferido e a subir para um assento no telhado. Todo mundo está acostumado a esse comportamento, por isso não causa brigas ou mal-entendidos; é apenas parte da cultura.
- A segunda regra é que, se o ônibus estiver cheio, a pessoa ocupando a maioria dos assentos no ônibus deve partir imediatamente quando alguém tentar embarcar no ônibus completamente cheio.
- A terceira regra é que, sempre que um assento preferido estiver disponível, alguém que possa estar em um assento de transbordo se levantará imediatamente do telhado e descerá para sentar-se no assento preferido.
Agora, imagine que você preenche todos os lugares preferidos. Então mais pessoas querem entrar no ônibus. Então, alguém entra no ônibus, e todos os assentos preferidos são ocupados, então, por costume cultural, eles forçam alguém sentado em um assento preferido a subir ao telhado. Este processo pode se repetir até que os assentos do overflow no teto estejam cheios.
Quando todos os lugares preferidos e de estouro estiverem cheios, o que acontece? A maior pessoa tem que sair do ônibus. Se eles estão em um lugar preferido quando saem, eles podem sair rapidamente; mas alguém que é menor (ou várias pessoas) pode descer do teto, pelas regras, para sentar nos assentos preferidos disponíveis.
Agora, para aplicar essa analogia à realidade: os "assentos de estouro" são o espaço de troca na unidade de disco rígido e os "assentos preferenciais" são a RAM. As regras do ônibus se aplicam de maneira muito clara.
O que acontece é que quando sua "pessoa grande" (o processo ocupando muita RAM) é eliminada, o sistema começa a mover os processos que estavam no espaço de swap (os assentos de overflow) de volta para a RAM. Isso ocorre porque é muito mais rápido embarcar e desembarcar do ônibus dos assentos preferidos, e as pessoas estão sempre entrando e saindo, então você não quer ter que esperar na parada por um longo tempo enquanto as pessoas entram e saem do telhado.
Sistemas operacionais de memória virtual usam o máximo de RAM possível em todos os momentos. O uso de prioridade mais alta é para dados realmente mapeados de programas que estão executando ativamente e acessando esses segmentos de RAM. O uso de prioridade média é para páginas mapeadas para programas que não estão executando ativamente. O uso de prioridade mais baixa é para "cache de páginas", que é basicamente um cache dos arquivos acessados com mais freqüência da unidade de disco rígido, para que eles não precisem ser lidos do disco toda vez que forem acessados.
A maioria dos programas em seu sistema, além do que ocupa toda a RAM, são empurrados para o espaço de troca (os assentos de overflow) quando o seu grande programa ocupa toda a RAM, então quando você finaliza o grande programa, tudo começa a ser movido de volta para a RAM para que sua área de trabalho permaneça responsiva. Enquanto esta transferência está ocorrendo, uma vez que é muito lenta, o seu sistema fica inativo, porque ela precisa balancear a carga das solicitações de E / S do gerenciador de memória virtual e das solicitações de E / S dos aplicativos. Essa é a definição mais técnica de por que isso acontece.
A "cura" é tripla:
- Prioridade 1: compre mais RAM. Isso pode nunca te machucar e pode apenas ajudá-lo . Se você tem o dinheiro e sua placa-mãe tem capacidade para armazenar mais RAM, faça isso.
- Prioridade dois: não execute o programa que ocupa toda a sua memória RAM.
- Prioridade Três: reduza o tamanho da sua partição virtual ou a elimine por completo ou compre um disco rígido mais rápido (como um SSD).