Der Prozess kann jedes einzelne Byte des physischen RAMs verwenden. Es gibt keine Begrenzung dafür, wie viel physischer RAM ein Prozess verwenden kann, solange das Betriebssystem auf diesen physischen RAM zugreifen kann.
Der gemeinsam genutzte Adressraum aller Threads im Prozess ist jedoch grundsätzlich auf weniger als 4 GB (und in der Praxis auf 2 GB oder 3 GB) beschränkt, da dies der maximal unterstützte Adressraum für einen 32-Bit-Prozess ist. 32-Bit-Prozesse verwenden 32-Bit-Zeiger und 2 ^ 32 = 4 GB. Alle Threads teilen ihren gesamten Adressraum, ansonsten könnten Sie keinen Zeiger von einem Thread zu einem anderen übergeben.
Diese Einschränkung gilt unabhängig von PAE und unabhängig davon, wie viel physischer Speicher Sie haben. Normalerweise beträgt der Adressraum 2 GB für 32-Bit-Prozesse. Sie können es mit dem /3GB
Switch auf 3 GB einstellen .
Dies hat wiederum nichts mit der Verwendung des physischen Speichers zu tun - jeder Prozess kann immer jedes einzelne Byte des physischen Speichers verwenden. Es ist streng eine Beschränkung des Adressraums. Mit PAE kann das Betriebssystem mehr physischen Speicher verwenden. Die Adressraumbeschränkung beeinflusst, wie Prozesse virtuellen Speicher verwenden.