64 bit Prozessor mit 32 bit OS max Arbeitsspeicher

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Antworten
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Hallo

Ein Kumpel hat gemeint das der maximale Arbeitsspeicher nur von Prozessor anhängt und nicht vom OS.
Also demzufolge auch ein 32 Bit OS auf einem 64bit Prozessor mehr als 4 GB Arbeitsspeicher benutzen kann.
Ich dachte dazu braucht man auch ein 64 Bit OS.

Wir Reden hier von Windows und nicht von Linux (wollte ich nur sagen)

Und wenn das so ist (64bit cpu + 32bit os <= 4GB RAM)
Warum habe ich dann unter Ubuntu 10.04(32bit) 5,9GB (was auch stimmt, alles wird erkannt)?
Meine CPU Intel Core I7 920.

Gruß
Andy
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
BlackJack

@Andyh: Das hängt auch vom Betriebssystem ab. "Früher" hätte man mit Linux zum Beispiel nur 1 GiB adressieren können, heute kommen die meisten 32-Bit-Kernel, die standardmässig installiert werden, wohl mit 64 GiB zurecht. Das Betriebssystem muss den Speicher ja verwalten können und da muss das natürlich entsprechend programmiert sein, wenn die Adressen des Arbeitsspeichers die Registerbreite "sprengen".

Womit auch geklärt ist, warum Du auf Deinem Ubuntu den gesamten Speicher benutzen kannst.

Davon unabhängig gibt es aber eine Begrenzung von maximal 4 GiB Speicher pro Prozess, denn der arbeitet bei einem 32-Bit-System ja auch nur mit 32-Bit breiten Pointern und damit ist der adressierbare Speicher begrenzt. Bei Linux stehen in der Regel nur 3 GiB für Daten zur Verfügung. In das restliche GiB "map"t das System sich selbst und Bibliotheken.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Interessant in diesem Zusammenhang auch: PAE.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Hallo

Vielen Dank!
Der Artikel über PAE ist recht interessant
Meinen Dickschädel schon bemerkt?
Ich bin jetzt FACHARBEITER (Zerspanungsmechaniker)!!!
[code]import sys

if sys.platform == "win32":
print "this program only runs on operating systems!!!"
sys.TotalError()[/code]
Antworten