Brunftzeit
Cadet 3rd Year
- Registriert
- Juli 2008
- Beiträge
- 46
Also ich hatte mal für ein anderes Forum was zusammengeschrieben als es um 4 GB und Windows ging. Ohne Garantie das alles stimmt, vielleicht kennt sich ja jemand aus und korrigiert mich da wo es hakt.
Vielleicht wird ja doch hier und da was klarer. Ich quote mein Zeug mal hier rein, hoffe es ist verständlich.
Vielleicht wird ja doch hier und da was klarer. Ich quote mein Zeug mal hier rein, hoffe es ist verständlich.
Brunftzeit als Erklärbär schrieb:Wer des englischen mächtig ist:
http://www.codinghorror.com/blog/archives/000811.html
XP und Vista 32 sind aus Kompatibilitätsgründen auf 4 GB Adressraum beschränkt.
Als Möglichkeit das zu umgehen kommt PAE (Physical Address Extensions) ins Spiel. Ab dem Pentium Pro wurd das so langsam eingeführt das die CPUs 36 Bit zum adressieren des Speichers haben. Soweit so gut. Natürlich muss auch das Mainboard das Spielchen mitmachen.
Beim virtuellen Speicherlimit von XP und Vista hilt auch PAE nicht weiter. Die Zeiger auf den Speicher damit man die Adressen auch findet sind weiterhin 32 Bit. Dank PAE können zwei oder mehr Prozesse verschiedene 4 GB Speicherbereiche ansprechen. Mit entsprechendem Support durch Windows (AWE) erlaubt PAE einem Prozess sich zusätzlichen Speicher ausserhalb des normalen Adressraums zu greifen und dann teile des zusätzlichen Speichers in den eigenen Adressraum zu schaufeln.
Ist halt noch das Problemchen das der Chipsatz entsprechend das remapen von RAM unterstützen. Gibt da einen entsprechenden Punkt im BIOS.
Weiter im Text. Man hat also 4 GB. Davon sind um die 600 MB als IO-Bereich reserviert (alte Hasen erinnern sich vielleicht an das Spielchen früher mit den 640K -> 1MB und dem reservierten Bereich dazwischen. Ist das gleiche wie damals, ist halt hardwareseitig reserviert da kann Windows nix für. Ist ein x86-Problem). Damit man diesen Bereich nutzen kann muss man also Remaping aktivieren damit diese reservierten Bereiche in den Adressraum oberhalb der 4 GB verschoben werden. Allerdings unterstützt das nicht jeder Chipsatz und es kann auch schon mal zu problemen kommen.
Nun haben die ganz schlauen Leute immer mehr auf dieses PAE gesetzt und ihre 4GB zu nutzen und MS bemerkte eine steigende Zahl von Problemen und blue screens. Diese waren auf Treiberprobleme zurückzuführen da diese oft 64-bit physikalische Adressen nicht korrekt handhaben konnten. Mit XP Service Pack 2 und eben bei Vista wurde daher eingeführt das nur die unteren Bereich des Adressraums genutzt werden. Da hilft auch PAE nicht weiter. Daher diese Grenze bei 3,2 GB rum.
Will man seine vollen 4 Gigabyte nutzen kommt man um ein 64Bit-Betriebssystem nicht herum. Ausserdem muss das Bios bzw. das Mainboard Memory-remapping unterstützen denn auch bei 64 Bit sind die Reservierungen erstmal da und müssen verschoben werden.
Nächster Punkt:
Natürlich muss jeder Speicher der im System ist mit dem 32Bit die verfügbar sind adressiert werden. Also z.B. auch der auf der Grafikkarte, der Cache auf der Festplatte, das bissl Speicher der Soundkarte, etc. Das alles wird reserviert. Bei einer Grafikkarte mit 512 MB werden diese natürlich reserviert, ergo bleibt nur der restliche Adressraum für den System-RAM übrig.
Daneben gibts noch eine vielzahl an anderen Reservierungen. Von den ganz alten im 640k-1MB-Bereich (jaja, der ist auch heut noch reserviert. z.B. für CGA und EGA Grafik deiner Grafikkarte, fällt blos nicht mehr ins Gewicht die paar KB...). Kann jeder auch nachsehen.
siehe: http://www.dansdata.com/images/askdan00015/memmap_full.png
Das sind die ganzen reservierten Bereiche. Was danach noch übrig bleibt, das kann dann der System-RAM haben. 256 für Grafikkarte weg, 256 für Platine weg (in diesem Fall vermutlich die AGP Aperture Size) und noch unzählige kleinere Happen welche die Platine für Datentransfer benötigt.
Der Bereich zwischen 3 und 4 GB ist voll mit Reservierungen. Daher geht da viel davon weg und daher machen normalerweise mehr als 3 GB RAM in einem 32Bit Windows keinen großen Sinn.
Zuletzt bearbeitet: