O Windows e o Linux têm duas estratégias de troca / troca de páginas diferentes.
Linux
O Linux quer evitar o uso do espaço de troca e aguarda até o último momento possível. Se você vir uma grande quantidade de swap no linux, seu sistema provavelmente está ou está com problemas. Essa estratégia é boa para minimizar o i / o geral do disco, que é a parte mais lenta do sistema, mas mais fraca para sistemas com períodos alternados de carga leve e pesada (e honestamente, isso é a maioria de nós). Os momentos em que sua carga já está pesada agora serão sobrecarregados pelo disco extra "i / o" ou, em outras palavras, você precisa projetar seu servidor com o objetivo de ter memória suficiente que você não troca mesmo durante os maiores tempos de carga esperados.
Windows
O Windows quer tratar a memória como um mero cache do arquivo de paginação. Sua memória real está sempre no disco, mas irá ler / gravar a partir do "cache" primeiro, se puder. Essa estratégia é boa para equilibrar sua carga ao longo do tempo; quando o sistema fica ocupado e precisa trocar páginas, a página atual já está no disco e metade do trabalho já está concluído. Esta abordagem fez grande sentido quando o Windows era novo, 32MB (esqueça GB) ainda era muito RAM, e a frequente necessidade de usar o espaço de troca era um dado. Ainda hoje isso é bom para cargas de trabalho que alternam entre cargas leves e ocupadas, pois ajuda a distribuir o disco de modo mais uniforme ao longo do tempo.
As versões modernas do Windows têm otimizações adicionais, como SuperFetch, para pré-carregar e preparar páginas de memória no disco e na RAM quando a carga é leve, para ajudar a evitar gravações extras de disco ao carregar um programa pela primeira vez. Tudo isso significa que você pode projetar seu sistema de forma que ele precise de RAM suficiente para lidar com algo menor que a carga esperada mais alta, e você ainda pode ter um desempenho pelo menos aceitável o tempo todo, com custos reduzidos.
Convergência
Este conceito de medir ou prever a carga em um ambiente de teste primeiro e depois alocar recursos de produção quando essa carga é conhecida é um desenvolvimento relativamente recente na construção de sistemas, tornado possível, ou pelo menos prático, em parte com o advento de em seguida, servidores em nuvem. Dependendo da sua carga, você pode até projetar o sistema de tal forma que ele nunca precise trocar nada. Nesses casos, o Windows permite que você desative a paginação e se comporte mais como um sistema linux, mas é preciso ter cuidado: se o design do seu sistema exigir mais memória do que você acha que pode se meter em problemas dessa maneira.
Por outro lado, os kernels Linux modernos estão mais dispostos a trocar para o disco de forma oportunista do que eram antes. Portanto, a diferença nas estratégias de gerenciamento de memória entre os dois sistemas é agora menos distinta do que costumava ser, mas ainda está presente. Ambos os sistemas têm seus méritos e cada um observa o outro para ver quais avanços eles podem copiar.