Há mais na memória virtual do que apenas "aplicativos que alocam RAM e quando a RAM física acaba, algo é enviado para SWAP".
No Linux (e possivelmente no UNIX), o sistema tenta manter as páginas lidas recentemente na RAM: programas executados, dados carregados, dados recentemente gravados (já em disco também) etc. Assim, se o mesmo programa for executado novamente , ele não precisa ser recarregado do disco. Quando algum programa solicita que mais memória seja alocada para seu espaço de endereço virtual, primeiro os buffers de disco à esquerda são propostos novamente (sem acesso ao disco). Se isso não for suficiente, algumas páginas de aplicativos em execução, que não foram acessadas recentemente, são realmente trocadas.
No Linux, a troca normalmente não acontece. Uma vez que seu sistema começa a trocar, você percebe o aumento da atividade da unidade (e lentidão) e você diz "oh what the f .." porque provavelmente significa que algum aplicativo está vazando memória, ou algo sob o capô começou descontroladamente.
O Windows tradicionalmente tem um hábito adicional estúpido, que substitui aplicativos inteiros do espaço do usuário após algum tempo de inatividade. Estritamente, sem perdão, apenas para ter o máximo de RAM possível, "apenas no caso" você queria começar ainda outro aplicativo faminto. Se você deixar o seu PC rodando, e você for embora por algumas horas, após o seu retorno, você notará que qualquer aplicativo que você trocar, ele será recarregado da troca.
Esse comportamento foi particularmente doloroso no Windows 2000 e está ficando gradualmente menos perceptível nas versões mais modernas do Windows. Em W2k, desligar o swap foi um acéfalo. O Windows 7 ainda pode vazar como o mel às vezes sem nenhum motivo específico, o Windows 8.1 e o 10 ficaram notavelmente melhores ... mas ainda não há um botão para "swappiness", ou outros parâmetros ajustáveis do algoritmo de troca.
Existem outros fatores que podem levar à retificação do sistema ao longo do acesso a disco lento. No Windows 7, você nunca sabe se o sistema acabou de trocar seu aplicativo na boa e velha moda W2k, ou se você deve culpar o Antivírus pelo fato de que seu aplicativo está começando tão devagar, ou se o Windows Update está fazendo alguma coisa no de fundo desta vez (conhecido por ter peculiaridades recíprocas em seus algoritmos que levam a travamentos com 100% de consumo de CPU e / ou sobrecarga de disco), ou se especificamente alguma tarefa de limpeza do .NET Framework foi perdida no banco de dados do WinSXS ou o quê. Em algumas ocasiões / em algumas versões / versões de softwares da Microsoft, parece que algumas "tarefas em segundo plano" nativas do Windows (especificamente o gerenciamento de banco de dados local do Windows Update) são deliberadamente "obscurecidas" no gerenciador de tarefas. mostrar no consumo de memória total. Atividade "legítima", mas muito difícil de distinguir de um rootkit de malware ... Apenas quando a surra parar e um balão dizendo "novas atualizações estão disponíveis" aparecer instantaneamente, você sabe qual foi o motivo.
Bem, pelo menos, as versões recentes do Windows podem informar a atividade de E / S de disco por processo e os serviços individuais agora são relatados separadamente (em vez de um único processo SVCHOST.EXE).