4-GB-Grenze
aus Wikipedia, der freien Enzyklopädie
Die 4-GB-Grenze (1 GB = 1024 MB) bezeichnet die maximale Größe des Arbeitsspeichers, den ein Prozess unter einem 32-Bit-Betriebssystem direkt benutzen kann, ohne auf Segmentierungstechniken zurückzugreifen.
[Bearbeiten] Einschränkungen auf x86-Prozessoren
| Dieser Artikel oder Abschnitt ist nicht hinreichend mit Belegen (Literatur, Webseiten oder Einzelnachweisen) ausgestattet. Die fraglichen Angaben werden daher möglicherweise demnächst gelöscht. Hilf Wikipedia, indem du die Angaben recherchierst und gute Belege einfügst. Bitte entferne zuletzt diese Warnmarkierung. |
Das Problem tritt z. B. bei x86-Prozessoren auf, die zur Adressierung von Daten im Arbeitsspeicher 32 Bit lange Wörter (unsigned Integer) verwenden. Durch diese Beschränkung ist es den betroffenen Prozessoren nicht möglich, mehr als 232 Byte, also 4 GB, anzusprechen. Diese Einschränkung gilt sowohl für den logischen, virtuellen, also den von Programmen ansprechbaren, als auch für den physischen Adressraum, den im System installierten Arbeitsspeicher. Die meisten der im Desktopbereich eingesetzten Computer verwenden heute 32 Bit und sind so von der 4-GB-Grenze betroffen. Selbst wenn der real installierte Arbeitsspeicher eines Computers kleiner als 4 GB ist, kann die 4-GB-Grenze auf einige Programme Auswirkungen haben, etwa auf Anwendungen, die große memory-mapped Dateien verwenden.
Der linear adressierbare Speicher kann praktisch nicht lückenlos mit RAM belegt werden, gängige Computerarchitekturen zweigen Adressraum für die Einblendung von System-ROM und IO-Bereichen ab, z. B. Onboard- und Erweiterungshardware wie Grafik- und Soundkarten, Centronics- oder USB-Schnittstellen. Im x86-Umfeld sind 2,0 bis 3,75 GB RAM üblicherweise nutzbar, die genauen Werte hängen vom Mainboard und Ausbau an internen Erweiterungskarten ab.
[Bearbeiten] Problembehebung
Heute werden auch im Desktop-Bereich 64-Bit-Systeme angeboten, die zusammen mit einem 64-Bit-Betriebssystem keine Begrenzung des Hauptspeichers auf 4 GB aufweisen. Hier liegt die Grenze des Adressraums bei 264 Byte, also 16 Exabyte. Viele Prozessoren, wie die der AMD64-Architektur, verfügen aber nicht über die notwendigen 64 Adressleitungen, um so viel Arbeitsspeicher anzusprechen. Der physische Adressraum ist also auch hier wesentlich kleiner. Die Problematik der Verbreiterung der Adressen ist, dass 64-Bit-Betriebssysteme nur 64-Bit-Treiber verwenden können. Proprietäre 64-Bit-Treiber waren nach der Einführung dieser Betriebssysteme selten und sind es heute für alte, spezielle und seltene Hardware immer noch. Außerdem können die Anwendungen, sofern sie nicht speziell für 64-Bit-Umgebungen kompiliert wurden, weiterhin nur 4 GB verwenden, da die internen Adressen weiterhin 32 Bit lang sind.
Unter 32-Bit-Systemen gibt es mit PSE36 und PAE Möglichkeiten, die 4-GB-Grenze zu überschreiten. Diese Prozessorerweiterungen vergrößern allerdings nur den physisch adressierbaren Speicher, jeder Prozess für sich kann weiterhin nur 4 GB Daten gleichzeitig adressieren. Unter Microsoft Windows existiert außerdem die Möglichkeit, über eine AWE genannte Schnittstelle physische Speicherseiten jenseits der 4-GB-Grenze in den logischen Adressraum des Prozesses einzublenden, womit ein 32-Bit-Prozess insgesamt mehr als 4 GB ansprechen kann.
[Bearbeiten] Weblinks
What Is 4GT?; Technologies Related to 4GT Artikel auf MSDN.com (englisch)

