O que eu entendo sobre o sistema operacional de 32 bits é que o endereço é expresso em 32 bits; portanto, no máximo, o sistema operacional pode usar 2 ^ 32 = 4GB de memória
O máximo que o processo pode resolver é de 4 GB. Você está potencialmente confundindo memória com espaço de endereço . Um processo pode ter mais memória que espaço de endereço. Isso é perfeitamente legal e bastante comum no processamento de vídeo e em outros aplicativos com uso intenso de memória. Um processo pode receber dezenas de GB de memória e trocá-lo para dentro e fora do espaço de endereço à vontade. Apenas 2 GB podem entrar no espaço de endereço do usuário por vez.
Se você tem uma garagem para quatro carros em sua casa, ainda pode possuir cinquenta carros. Você simplesmente não pode mantê-los todos em sua garagem. Você precisa ter armazenamento auxiliar em outro lugar para armazenar pelo menos 46 deles; quais carros você mantém em sua garagem e quais carros você mantém no estacionamento da rua são com você.
Isso significa que qualquer sistema operacional de 32 bits, seja Windows ou unix, se a máquina tiver um arquivo de paginação RAM + no disco rígido com mais de 4 GB, por exemplo, 8 GB de RAM e 20 GB, nunca haverá "memória esgotada"?
Absolutamente, isso não significa isso. Um único processo pode usar mais memória que isso! Novamente, a quantidade de memória que um processo usa é quase completamente independente da quantidade de espaço de endereço virtual que um processo usa. Assim como o número de carros que você mantém em sua garagem não tem nenhuma relação com o número de carros que você possui.
Além disso, dois processos podem compartilhar páginas de memória não privada . Se todos os vinte processos carregarem a mesma DLL, todos os processos compartilharão as páginas de memória para esse código. Eles não compartilham espaço de endereço de memória virtual , eles compartilham memória .
O que quero dizer, caso não esteja claro, é que você deve parar de pensar na memória e no espaço de endereçamento como a mesma coisa, porque eles não são a mesma coisa.
se esta máquina com sistema operacional de 32 bits tiver 2 GB de RAM e 2 GB de arquivo de paginação, aumentar o tamanho do arquivo de paginação não ajudará no desempenho. Isso é verdade?
Você tem cinquenta carros, uma garagem para quatro carros e um estacionamento para 100 carros na mesma rua. Você aumenta o tamanho do estacionamento para 200 vagas. Algum dos seus carros fica mais rápido como resultado de você agora ter 150 vagas extras em vez de 50 vagas extras?