RAM-Verwaltung vom OS, wenn mehr RAM vorhanden ist als unterstützt wird.

Anoubis

Vice Admiral
Registriert
März 2010
Beiträge
7.098
Hallo zusammen,

wie wird in einem System, in dem hardwareseitig mehr Arbeitsspeicher zur Verfügbar steht, als vom Betriebssystem angesprochen werden kann, auf die einzelnen Arbeitsspeicherriegel zugegriffen?

Bsp:

- OS unterstützt 4GB Ram
- Verbaut sind 4x 2GB Riegel = 8GB Ram

Werden dann alle 4 Riegel zur Hälfte angesprochen oder werden 2 Riegel vollständig angesprochen und die anderen beiden Riegel bleiben unbeachtet?

Versteht ihr was ich meine? Die Frage stellt sich rein aus Interesse.

Danke im Voraus
 
Das OS hat nur Zugriff auf 4 GB und greift auch nur auf 4 GB zu. Und nutzt nur 2 Riegel. Die anderen beiden sind unerreichbar für das OS. Und das Board selbst managed das auch nicht. Das ist Sache des OS.
 
Wofür ist das wichtig? - was sagt die Doku zum Speichercontroller des Prozessors/Mainboards? - Ich würde her ein 64 Betiebssystem installieren.
 
Wenn in dem Fall zwei Riegel nicht abgesprochen werden, würde z. B. ein Defekt einer dieser beiden Riegel dennoch auffallen, da alle Riegel kurz beim Bootvorgang vom Bios gecheckt werden oder?

Könnte man einen der nicht angesprochen Riegel im laufenden Betrieb entfernen?

Wie gesagt, rein aus Interesse.
 
Wenn ein RAM Riegel vom Bios erkannt wird, dann sagt das nichts darüber aus, ob er iO ist.

Und natürlich kannst Du einen RAM Riegel nicht im laufenden Betrieb entfernen. Du kannst machen, aber dann wird RAM und vermutlich auch das Board schrott sein.

Was ist der Hintergrund des Interesses?
 
Neugierde und Interesse an Hardware allgemein. Da steckt keine praktische Absicht oder kein Nutzen dahinter.
 
Das OS adressiert in der Reihenfolge wie das UEIF/BIOS den Adressraum bereitstellt.
Sprich das OS hat keinen Einfluss darauf welcher Chip/Rank auf dem Modul benutzt wird. Es bekommt Adressraum von 0 bis 4GB und darf sich darin frei austoben.

Angenommen du hast in Kanal-A 2 Module mit je 1GB und in Kanal-B 1 Modul mit 8GB
Kanal A wird voll benutzt und bei Kanal B die ersten 2GB.

Könnte man einen der nicht angesprochen Riegel im laufenden Betrieb entfernen?
Entfernen geht nicht. Manche Serverlösungen erlaubten mal eine Zeit lang "hot-add" also dazustecken im laufenden Betrieb, aber nicht das entfernen. Hot add ist in Zeiten der Virtualisierung auch nicht mehr gefragt, denn man kann die VM einfach auf eine anderen Server migrieren und dann den Server problemlos herunterfahren zum aufrüsten/umbauen ohne dass der Produktivbetrieb eingeschränkt wird.

würde z. B. ein Defekt einer dieser beiden Riegel dennoch auffallen, da alle Riegel kurz beim Bootvorgang vom Bios gecheckt werden oder?
Serverboards machen natürlich intensivere POST-Checks als Consumer Boards. Und dort wird jeder erkannte Defekt gemeldet, egal ob er im genutzten Adressraum liegt oder nicht.
 
Danke für die Infos :)

Wenn ich in deinem Beispiel in Kanal B zwei 8GB Module hätte, könnte es passieren, dass einer der beiden 8GB Riegel gar nicht genutzt wird und der andere 8GB Riegel deswegen nicht im Dual Channel Betrieb läuft?
 
Ich muss gestehen ich hatte schon seit 7-8 Jahren nichts mehr mit Speichercontroller Design zu tun, aber ich würde darauf tippen dass das zweite 8GB Modul in Kanal B tatsächlich nicht benutzt werden würde, wenn das OS insgesamt nur 4GB adressiert.

Aber ob das zweite 8GB Modul benutzt wird oder nicht hat keinen Einfluss auf Dual Channel oder nicht Dual Channel (bei einem Flex-Memory fähigen Controller oder unganged Mode)
 
Zurück
Oben