Archiv RAM - Module, Marken, Murks 4.582 Themen, 22.751 Beiträge

Andreas42 gelöscht_323114 „Hallo da habe ich ja einen netten Zauber bewirkt. Nochmal zum Lesen: Wenn im BIOS 1. Bild 4 GB 4096 gefunden und angezeigt ...“
Optionen

Hi!

Ich weiß, dass hier gezofft wurde, aber da ich gerade aus dem Urlaub komme, fange ich einfach gut gelaunt neu an:

Die Grundlagen sind in etwa so: jede CPU (der Prozessor) hat eine Adressraum. Das ist salopp gesagt, die maximale Größe an Speicher, die er adressieren kann. Dann gibt es diese "Bit-Sache" der CPU. 64Bit ist das aktuelle Dingens. Aber davor gab es 32Bit und davor 16Bit und davor 8Bit. Das sind verschiedene Betriebmodes. Im Prinzip geht es dabei darum, dass sich die CPU wie eine alte CPU verhält, damit die alte Software läuft.

Eine moderne 64Bit-CPU kann auch im 32Bit-Mode arbeiten. Eine 32Bit-CPU konnte im 16Bit-Mode arbeiten. 16Bit war damals zu DOS-Zeiten. Bekanntlich konnten man damals nur 1MByte Speicher nutzen - zumindest ohne weitere Tricks und Verrenkungen. Mit 32Bit-CPUs war diese Grenze dann Geschichte, es ging bis 4GByte. Und heute mit 64Bit-CPUs (und 64Bit-Betriebssystemen) geht es auch mit deutlich mehr Speicher.

Oben hab ich 8Bit erwähnt: was ist damit? Das waren die Homecomputer. Einer davon war der Commodore 64, der hatte damals sagenhafte 64kByte RAM eingebaut. Das erwähne ich hier, weil der ohne Verrenkungen davon nur 38kByte nutzen konnte.

Warum?

Seite CPU musste neben dem RAM Speicher noch mehr in ihrem Adressraum von 64k unterbringen: ROM-Speicher, spezielles Video-RAM (der Speicher des Grafikchips) und dann noch einen Speicherbereich,d er alles mögliche im Rechner steuerte (man nennt das Ports und Register).

OK, schöne Geschichte, warum erzähle ich das?

Kurze Gegenfrage: glaubt jemand, dass sich die Sache irgendwie großartig weiterentwickelt hat? Zwinkernd

Die Rechner von heute haben moderne CPUs, die enorm viel Speicher verwalten können, aber sie müssen immer noch die Elemente in diesem Bereich unterbringen, die schon der Commodore 64 verwendet hat: RAM, Videospeicher, Ports&Register und ROM.

OK, im 32Bit-Modus kann der Rechner 4Gbyte Speicher Adressieren. Bei dir stecken 4GByte RAM im Rechner. Warum wird nicht mehr verwendet?
Nunja: in diesen 4GByte muss die CPU auch den Grafikspeicher adressieren (ansteuern können). Zusätzlich sind Ports&Register da eingeblendet. das sind die Grundlagen. Über die Details kann man sich sich jetzt wieder gegenseitig die Köpfe einschlagen - wenn man das denn tun muss.

Wie die Rechner und Betriebssysteme nun darauf regieren, ist eine etwas andere Sache. Offenbar können sie feststellen, dass 4GByte RAM eingebaut sind. Dann können sie feststellen, dass davon nur 3,25 GByte genutzt werden. Das BIOS kann das offenbar auch. Egal wie das im Detail läuft, dass ist letztendlich nur etwas blöde Herumrechenrrei, die BIOS und Betriebssysteme da machen: Gesamt-RAM minus nicht verwendbares Speicher, ergibt nutzbares RAM.

In der Regel folgt jetzt die Frage, ob man das irgendwie optimieren kann oder ob man im 64Bit-Mode irgendwie die ganzen 4GByte RAM nutzen kann.

Ehrliche Antwort: ich hab es nicht geschafft.

Theoretisch sollte das ja irgendwie gehen: im 64Bit-Mode kann die CPU ja mehr als 4GByte Adressraum nutzen. Wenn da also 0,75 irgendwo ungenutzt herumliegen, dann sollte man sie "reallokieren" und an anderer Stelle einblenden können. Auf der anderen Seite hat sich noch kein Rechner in solchen Fragen danach gerichtet, was ich theoretisch für machbar halte...

Bei meinem Rechner ist das nun so, dass dies nicht geht. Von den 0,75Gbyte "Restram" gehört aber ein Großteil dem Grafikchip meines Mainboards. Das nutzt einen Teil der 4Gbyte zur Anzeige der Grafik. Ohne dieses RAM-Abzwacken für die Grafik geht es bei dieser Lösung nicht.
Im BIOS kann ich den "Grafikpuffer" begrenzen. Die Kiste läuft auch sauber, wenn ich da nur 128MByte einstelle. So habe ich meinen Rechner unter einem 64Bit-Linux dazu bekommen, von 4GByte RAM, rund 3,5 GByte RAM nutzen zu lassen. Inzwischen habe ich 6Gbyte in der Kiste und eine zusätzliche Grafikkarte. Ergo braucht der Rechner kein Grafikram mehr abzweigen. Trotzdem hab ich "nur" was um 5,9 GByte RAM unter Linux zur Verfügung. Es reicht und mich interessiert auch nicht wirklich, warum nicht ein paar MByte mehr oder wie ich das optimieren kann.

Mehr weiß ich dazu auch nicht. Hilft dir das irgendwie weiter?

Bis dann
Andreas

Dieser Beitrag wurde für Antworten geschlossen
... gelöscht_84526