Natürlich kann ein 32bit OS 4GB adressieren....
--> Schnipp<--
c't 5/2005, S. 96: 64-Bit-PC-Technik
Das Adressloch
Wer einen 32-Bit-PC tatsächlich mit 4 GByte RAM ausrüstet wird feststellen, dass diese Architektur gar nicht für diese Vollausstattung konzipiert ist - ein Teil ist nämlich nicht nutzbar. Die so genannten I/O-Komponenten, also sämtliche PCI- und AGP-Karten, aber auch etwa Soundchips, FireWire- und IDE-Hostadapter, können üblicherweise nur Speicher-Adressen unterhalb der 32-Bit-Grenze ansprechen. Das BIOS reserviert die nötigen Adressbereiche, und zwar unmittelbar unterhalb der 4-GByte-Grenze.
Je nach Hardware-Ausstattung und BIOS(-Bugs) kostet das heute einige hundert MByte Adressraum: Größter Verbraucher ist meistens die von AGP-Karten okkupierte Graphics Address Remapping Table (GART), die auf über 256 MByte anschwellen kann. Alles physisch vorhandene RAM, das tatsächlich in diesen reservierten Bereich hineinreicht, ist dann nicht ansprechbar.
Auch gegen diesen misslichen Umstand hilft ein Trick: Genau der RAM-Bereich, der durch reservierte I/O-Adressen verloren geht, wird oberhalb der 4-GByte-Linie virtuell wieder ?angeklebt? (Memory Remapping). Auf den wenigen Mainboards, die diesen Trick beherrschen, kann man ihn üblicherweise über eine Option im BIOS-Setup aktivieren.
Memory Remapping bringt allerdings nur dann einen wirklichen Nutzen, wenn das Betriebssystem die jenseits der 32-Bit-Grenze liegenden Adressen ansprechen kann. Prinzipiell kann das mit der erwähnten PAE-Technik auch ein 32-Bit-Windows. Doch bei XP hat Microsoft eine Schranke eingebaut: Auch mit eingeschaltetem PAE ist bei 232 Byte Schluss. Erst die 32-Bit-Server-Versionen von Windows kommen per PAE an die hochgelegten Speicherbereiche heran. Windows Server 2003 Standard Edition nutzt allerdings auch dann in der Summe höchstens 4 GByte - die aber wirklich.
Das Adressloch ist auch bei x64-Hardware vorhanden, denn auch dort sind noch bestimmte I/O-Komponenten auf 32-Bit-Adressen angewiesen. Auch bei x64-Computern mit mehr als 4 GByte Speicher funktioniert Memory Remapping - der nicht direkt ansprechbare Speicherbereich liegt dann eben oberhalb der höchsten Adresse des physischen RAM. Mit x64-Windows ist der Zugriff hier kein Problem.
-->Schnapp<--
Original Artikel zu finden: c't 5/2005, S. 96: 64-Bit-PC-Technik