Im PMode auf einer normalen x86-CPU kann man ja bekanntlich 4GB RAM ansprechen. Aber beispielsweise hier steht, dass die Windows 2003 Enterprise Edition 32GB RAM verwalten kann. Nur wie macht man das?
09. November 2026, 18:26

Ich schätze mal, dass es sich dabei um einen Paging-Trick handeln wird. Also das 32GB virtueller Speicher zwar vom System verwaltet werden, es sich aber immer nur max 4 GB zur gleichen Zeit im Speicher befinden (auch max. 4GB pro Prozess).
Soweit ich das gelsen hab machen PSE und PAE lediglich nen Mapping in den 4GB Adressraum. Wie soll es da möglich sein mit einem Prozess mehr als 4GB zu benutzen, wenn man nur 32Bit Adressen hat? Oder gehst du davon aus, dass man 64Bit Adressen benutzt im Prozess?
MM
Maximal 4GB gleichzeitig stimmt, max. 4 GB pro Prozess nicht. Winken
Gut, wenn du sagst, dass ein Prozess mehr als 4gb Speicher benutzen kann auf einer 32Bit Architektur, dann würde das ja bedeuten, dass dies ganz spezielle Anwendungen sind, die das mapping mit verwalten. Denn dann müste ich mir ja zusätzlich zur 32Bit Adresse noch merken, in welchem der 4GB Segmente sich meine Variable befindet. Deshalb glaub ich nicht, dass mehr als 4GB speicher pro Prozess möglich sind.
MM
Nicht gleichzeitig, arg, das habe ich auch nie behauptet du Witzbold.
Physical Address Extension
PAE ist eine technische Erweiterung von x86-kompatiblen 32-Bit-Architektur-Prozessoren (ab Intel Pentium Pro, AMD Athlon), um mehr als 4 GiB Arbeitsspeicher benutzen zu können. Dies ist möglich, da diese Prozessoren einen 36 Bit breiten Adressbus besitzen. Spezielle Erweiterungen in der Paging-Einheit der CPU sorgen dafür, dass 36-bittige physikalische Adressen generiert werden.
Der in einem Prozess bzw. einer Task nutzbare Speicher ist jedoch weiterhin auf 4 GiB begrenzt, da die verwendeten Adressregister nur 32 Bit breit sind.
Um PAE nutzen zu können, muss es vom Betriebssystem unterstützt werden. Derzeit wird PAE von den Betriebssystemen MS Windows 2000 Advanced Server (via Boot-Option), Linux ab 2.4.4 (via Kernelconfig-Option), FreeBSD und Solaris unterstützt.
Ok, also sind wir uns doch einig, dass nur max 4GB Pro Prozess/Anwendung gehen?ZitatNicht gleichzeitig, arg, das habe ich auch nie behauptet du Witzbold.
Und wie meintest du es dann mit dem "max. 4 GB pro Prozess stimmt nicht"?
MM
