Physical Address Extension: Warum 32-Bit-Windows auf 4 GByte RAM begrenzt war
Die Annahme, dass 32-Bit-Windows wegen einer 32-Bit-Adresse auf 4 GByte RAM beschränkt ist, trifft laut Raymond Chen für den physikalischen Speicher nicht zu. Chen ist seit mehr als 30 Jahren bei Microsoft an der Windows-Entwicklung beteiligt und beschreibt technische Hintergründe des Betriebssystems seit 2003 in seinem Blog The Old New Thing(öffnet im neuen Fenster). Microsoft besaß einen Mechanismus, mit dem 32-Bit-x86-Systeme physikalischen Arbeitsspeicher oberhalb von 4 GByte adressierten. Während Server-Editionen diesen Speicher nutzten, limitierten Entwickler Client-Editionen bewusst auf 4 GByte, um Abstürze durch fehlerhafte Treiber zu verhindern.
Mit dem Pentium Pro führte Intel die Physical Address Extension (PAE)(öffnet im neuen Fenster) ein. Dadurch konnten 32-Bit-x86-Prozessoren 36-Bit-Adressen nutzen. Für 32-Bit-Programme stellte Windows weiterhin einen virtuellen Adressraum von 4 GByte bereit, von dem Anwendungen meist 2 GByte nutzen konnten. Im Hintergrund verwaltete das Betriebssystem jedoch mehr physischen Speicher. Windows Server 2003 SP1 Enterprise unterstützte bis zu 64 GByte RAM, die Datacenter-Edition bis zu 128 GByte.
Treiberprobleme als Ursache der Limitierung
Die Begrenzung der Client-Systeme entstand durch Kompatibilitätsprobleme. Stellt ein System Speicher oberhalb von 4 GByte über PAE bereit, dürfen Treiber physikalische Adressen nicht mehr als 32-Bit-Werte behandeln. Unangepasste Treiber verwarfen obere Bits einer Adresse oder trennten bei DMA-Übertragungen nicht zwischen virtuellen und physikalischen Adressen.
Schneidet aber ein Treiber Adressen ab, steuert die Hardware falsche Speicherbereiche an, was zu Datenbeschädigungen oder Abstürzen führt. Um Fehler bei Verbraucher-PCs zu vermeiden, passte Microsoft daher in Windows XP SP2 sowie Windows Server 2003 SP1 Standard Edition den Hardware Abstraction Layer an und deckelte den physikalischen Adressraum auf 4 GByte.
Unterschiede zwischen Server- und Client-Systemen
In Serverumgebungen nutzen Administratoren in der Regel von Microsoft getestete Treiber und verzichten auf ungetestete Dritthersteller-Software. Die günstigste Windows-Server-2003-Edition mit Unterstützung für mehr als 4 GByte RAM war die Enterprise-Version für 3.999 US-Dollar.
Im Jahr 2020 stellte Microsoft die Auslieferung von 32-Bit-Systemen an PC-Hersteller ein. Mit Windows 11 endete die Veröffentlichung von 32-Bit-Editionen vollständig.
- Anzeige Hier geht es zu Windows 11 Home bei Alternate Wenn Sie auf diesen Link klicken und darüber einkaufen, erhält Golem eine kleine Provision. Dies ändert nichts am Preis der Artikel.