„4-GB-Grenze“ – Versionsunterschied

[gesichtete Version][gesichtete Version]
Inhalt gelöscht Inhalt hinzugefügt
K Format
Vorlage:Datenmengen; umgestellt auf normkonforme Einheiten
Zeile 1: Zeile 1:
Die '''4-GB-Grenze''' (1 GB = 1024 MB) bezeichnet die maximale Größe des [[Arbeitsspeicher]]s, den ein [[Prozess (Informatik)|Prozess]] unter einem [[32-Bit-Architektur|32-Bit]]-[[Betriebssystem]] direkt benutzen kann, ohne auf [[Segmentierung (Speicherverwaltung)|Segmentierungstechniken]] zurückzugreifen.
Die '''4-GiB-Grenze''' (nach veralteter Nomenklatur auch ''4-GB-Grenze'') bezeichnet die maximale Größe des [[Arbeitsspeicher]]s, den ein [[Prozess (Informatik)|Prozess]] unter einem [[32-Bit-Architektur|32-Bit]]-[[Betriebssystem]] direkt benutzen kann, ohne auf [[Segmentierung (Speicherverwaltung)|Segmentierungstechniken]] zurückzugreifen.


== Problembeschreibung ==
== Problembeschreibung ==
Das Problem tritt z.&nbsp;B. bei [[x86-Prozessor]]en auf, die zur Adressierung von Daten im [[Arbeitsspeicher]] 32 Bit lange [[Datenwort|Wörter]] (unsigned [[Integer (Datentyp)|Integer]]) verwenden. Durch diese Beschränkung ist es den betroffenen Prozessoren nicht möglich, mehr als 2<sup>32</sup> [[Byte]], also 4&nbsp;GB, anzusprechen. Diese Einschränkung gilt sowohl für den logischen, [[Virtuelle Speicherverwaltung|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 Mapping|memory-mapped]] Dateien verwenden.
Das Problem tritt z.&nbsp;B. bei [[x86-Prozessor]]en auf, die zur Adressierung von Daten im [[Arbeitsspeicher]] 32 Bit lange [[Datenwort|Wörter]] (unsigned [[Integer (Datentyp)|Integer]]) verwenden. Durch diese Beschränkung ist es den betroffenen Prozessoren nicht möglich, mehr als 2<sup>32</sup> [[Byte]], also 4&nbsp;GiB, anzusprechen. Diese Einschränkung gilt sowohl für den logischen, [[Virtuelle Speicherverwaltung|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-GiB-Grenze betroffen. Selbst wenn der real installierte Arbeitsspeicher eines Computers kleiner als 4 GiB ist, kann die 4-GiB-Grenze auf einige Programme Auswirkungen haben, etwa auf Anwendungen, die große [[Memory Mapping|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.&nbsp;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.
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.&nbsp;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.


== Problembehebung ==
== Problembehebung ==
Heute werden auch im Desktop-Bereich [[64-Bit-Architektur|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 2<sup>64</sup> Byte, also 16 Exabyte. Viele Prozessoren, wie die der [[AMD64]]-Architektur, verfügen aber nicht über die notwendigen 64 [[Adressleitung]]en, 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.
Heute werden auch im Desktop-Bereich [[64-Bit-Architektur|64-Bit]]-Systeme angeboten, die zusammen mit einem 64-Bit-Betriebssystem keine Begrenzung des Hauptspeichers auf 4 GiB aufweisen. Hier liegt die Grenze des Adressraums bei 2<sup>64</sup> Byte, also 16 EiB (Exbibyte). Viele Prozessoren, wie die der [[AMD64]]-Architektur, verfügen aber nicht über die notwendigen 64 [[Adressleitung]]en, 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 GiB verwenden, da die internen Adressen weiterhin 32 Bit lang sind.


Unter 32-Bit-Systemen gibt es mit [[PSE36]] und [[Physical Address Extension|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 [[Address Windowing Extension|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.
Unter 32-Bit-Systemen gibt es mit [[PSE36]] und [[Physical Address Extension|PAE]] Möglichkeiten, die 4-GiB-Grenze zu überschreiten. Diese Prozessorerweiterungen vergrößern allerdings nur den physisch adressierbaren Speicher, jeder Prozess für sich kann weiterhin nur 4 GiB Daten gleichzeitig adressieren. Unter [[Microsoft Windows]] existiert außerdem die Möglichkeit, über eine [[Address Windowing Extension|AWE]] genannte Schnittstelle physische Speicherseiten jenseits der 4-GiB-Grenze in den logischen Adressraum des Prozesses einzublenden, womit ein 32-Bit-Prozess insgesamt mehr als 4 GiB ansprechen kann.
<!-- Siehe Diskussion
<!-- Siehe Diskussion
Unter Unix-Systemen können standardmäßig Swap-Partitionen auf der Festplatte erstellt werden, in die der Kernel Daten aus einem überfüllten RAM auslagern kann, um so die Stabilität leistungsintensiver Prozesse zu gewährleisten, beziehungsweise diese überhaupt zu ermöglichen, sofern der RAM bereits aufgrund laufender Prozesse ausgelastet ist. Dies gilt sowohl für 32-Bit- als auch für 64-Bit-Architekturen. Auch unter Windows gibt es ein ähnlcihes System, das je nach Version [[Swapfile]] oder [[Pagefile]] genannt wird.
Unter Unix-Systemen können standardmäßig Swap-Partitionen auf der Festplatte erstellt werden, in die der Kernel Daten aus einem überfüllten RAM auslagern kann, um so die Stabilität leistungsintensiver Prozesse zu gewährleisten, beziehungsweise diese überhaupt zu ermöglichen, sofern der RAM bereits aufgrund laufender Prozesse ausgelastet ist. Dies gilt sowohl für 32-Bit- als auch für 64-Bit-Architekturen. Auch unter Windows gibt es ein ähnlcihes System, das je nach Version [[Swapfile]] oder [[Pagefile]] genannt wird.
Zeile 16: Zeile 16:
== Weblinks ==
== Weblinks ==
* [http://technet.microsoft.com/en-us/library/cc786709(WS.10).aspx#w2k3tr_4gt_what_zgsx What Is 4GT?; Technologies Related to 4GT] Artikel auf MSDN.com (englisch)
* [http://technet.microsoft.com/en-us/library/cc786709(WS.10).aspx#w2k3tr_4gt_what_zgsx What Is 4GT?; Technologies Related to 4GT] Artikel auf MSDN.com (englisch)
{{Vorlage:Datenmengen}}


[[Kategorie:Rechnerarchitektur]]
[[Kategorie:Rechnerarchitektur]]

Version vom 29. Dezember 2009, 17:25 Uhr

Die 4-GiB-Grenze (nach veralteter Nomenklatur auch 4-GB-Grenze) bezeichnet die maximale Größe des Arbeitsspeichers, den ein Prozess unter einem 32-Bit-Betriebssystem direkt benutzen kann, ohne auf Segmentierungstechniken zurückzugreifen.

 Problembeschreibung

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 GiB, 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-GiB-Grenze betroffen. Selbst wenn der real installierte Arbeitsspeicher eines Computers kleiner als 4 GiB ist, kann die 4-GiB-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.

Problembehebung

Heute werden auch im Desktop-Bereich 64-Bit-Systeme angeboten, die zusammen mit einem 64-Bit-Betriebssystem keine Begrenzung des Hauptspeichers auf 4 GiB aufweisen. Hier liegt die Grenze des Adressraums bei 264 Byte, also 16 EiB (Exbibyte). 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 GiB verwenden, da die internen Adressen weiterhin 32 Bit lang sind.

Unter 32-Bit-Systemen gibt es mit PSE36 und PAE Möglichkeiten, die 4-GiB-Grenze zu überschreiten. Diese Prozessorerweiterungen vergrößern allerdings nur den physisch adressierbaren Speicher, jeder Prozess für sich kann weiterhin nur 4 GiB Daten gleichzeitig adressieren. Unter Microsoft Windows existiert außerdem die Möglichkeit, über eine AWE genannte Schnittstelle physische Speicherseiten jenseits der 4-GiB-Grenze in den logischen Adressraum des Prozesses einzublenden, womit ein 32-Bit-Prozess insgesamt mehr als 4 GiB ansprechen kann.

Vorlage:Datenmengen