# [solved] 64 Bit und 4GB RAM

## Maximum

Hallo.

Ich habe die amd64 Distribution von Gentoo Linux auf einem INTEL Core 2 Quad Core Q6600 mit 4GB RAM installiert.

Das System zeigt mir jedoch "nur" ~3273 MB ^= ~3,1 GB RAM an.

Es sind aber nach BIOS und Speicheranalysetool 4GB RAM im Rechner vorhanden, die auch korrekt funktionieren.

```
 cat /proc/meminfo | grep MemTotal

MemTotal:      3351836 kB
```

Das gleiche Problem gibt es auch mit Windows Vista (32 Bit System). Da wundert es mich zwar auch, aber ich hatte von einer 64 Bit Linux Distribution erwartet, dass auch die vollen 4GB RAM genutzt werden.

Kleines Rechenspiel

32 Bit Speicherbreite --> 2^32 Byte addressierbar -(/1024)->  4194304 kByte -(/1024)-> 4096 MByte -(/1024)-> 4 GByte

64 Bit Speicherbreite --> 2^64 Byte addressierbar -(/(1024^4))-> 16777216 TByte

Das heißt es müsste theoretisch mit einem 64 Bit Betriebsystem möglich sein kleine 4GB zu addressieren oder?

Wenn nein warum nicht?

Danke  :Smile: Last edited by Maximum on Fri Mar 28, 2008 10:15 am; edited 1 time in total

----------

## gimpel

http://support.microsoft.com/kb/929605/en-us  :Razz: 

Kurzum, dein BIOS ist falsch eingestellt, oder dein Chipsatz unterstützt es einfach nicht.

----------

## firefly

 *Maximum wrote:*   

> Hallo.
> 
> Ich habe die amd64 Distribution von Gentoo Linux auf einem INTEL Core 2 Quad Core Q6600 mit 4GB RAM installiert.
> 
> Das System zeigt mir jedoch "nur" ~3273 MB ^= ~3,1 GB RAM an.
> ...

 

Bei 32Bit System ist das ganz normal, das nicht alle 4GB verfügbar sind, denn auch andere Geräte wie z.b. Grafikkarten haben einen Addressbereich des RAMs für sich. Das nennt sich Memory-mapped IO. Um bei dem Beispiel Grafikkarte zu beleiben: Wenn du eine Grafikkarte mit 512 MB Video RAM hast, somit hast du bei einem 32 Bit System mit 4GB RAM nur noch 3,5 GB frei, da die 512 MB Video-Ram diese Menge an Arbeitsspeicher überlagern.

Bei 64 Systemen sollte das nicht passieren(zu mindestens nicht bei 4GB RAM), da diese die überlagerten RAM-Segmente wieder oberhalb des Adressbereichs des verfügbaren RAMs wieder einblenden.

Wenn das auch unter Linux passiert, dann ist vermutlich High Memory Support falsch im kernel eingestellt ist. (Da ich selbst kein 64bit System am laufen habe, kann ich das nicht nachschauen ob das so stimmt)

----------

## Klaus Meier

Was hast du denn für ein Mainboard? Da gibt es schon verschiedenes. Da ist der Adressraum der zur Verfügung steht je nach Design zwischen 2,7 und 3,7 GB. Jedenfalls ist es so, dass viele Hardware ihren Adressraum nur im 32-Bit Bereich einblenden kann. Von daher stimmt es auch nicht, dass sowas unter 64 Bit nicht auftreten kann. Es tritt nur dann nicht auf, wenn die Hardware komplett 64-Bittig ist.

----------

## gimpel

Intel 945GM oder 945PM Chipsatz, vermutlich. Der kann nicht mehr adressieren.

Am Kernel liegts nicht, denn 64bit kennt keinen HIGHMEM workaround, wozu auch..

----------

## Maximum

lspci sagt folgendes:

```
00:00.0 Host bridge: Intel Corporation DRAM Controller (rev 02)

00:01.0 PCI bridge: Intel Corporation PCI Express Root Port (rev 02)

00:19.0 Ethernet controller: Intel Corporation 82562V-2 10/100 Network Connection (rev 02)

00:1a.0 USB Controller: Intel Corporation USB UHCI Controller #4 (rev 02)

00:1a.1 USB Controller: Intel Corporation USB UHCI Controller #5 (rev 02)

00:1a.2 USB Controller: Intel Corporation USB UHCI Controller #6 (rev 02)

00:1a.7 USB Controller: Intel Corporation USB2 EHCI Controller #2 (rev 02)

00:1b.0 Audio device: Intel Corporation HD Audio Controller (rev 02)

00:1d.0 USB Controller: Intel Corporation USB UHCI Controller #1 (rev 02)

00:1d.1 USB Controller: Intel Corporation USB UHCI Controller #2 (rev 02)

00:1d.2 USB Controller: Intel Corporation USB UHCI Controller #3 (rev 02)

00:1d.7 USB Controller: Intel Corporation USB2 EHCI Controller #1 (rev 02)

00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 92)

00:1f.0 ISA bridge: Intel Corporation LPC Interface Controller (rev 02)

00:1f.2 IDE interface: Intel Corporation 4 port SATA IDE Controller (rev 02)

00:1f.3 SMBus: Intel Corporation SMBus Controller (rev 02)

00:1f.5 IDE interface: Intel Corporation 2 port SATA IDE Controller (rev 02)

01:00.0 VGA compatible controller: ATI Technologies Inc Unknown device 9588

01:00.1 Audio device: ATI Technologies Inc Unknown device aa08

02:01.0 Network controller: Broadcom Corporation BCM4318 [AirForce One 54g] 802.11g Wireless LAN Controller (rev 02)

```

----------

## gimpel

Ein

```
dmidecode|grep -B1 "Product Name"
```

wäre hilfreicher

----------

## Maximum

 *gimpel wrote:*   

> Ein
> 
> ```
> dmidecode|grep -B1 "Product Name"
> ```
> ...

 

```
dmidecode|grep -B1 "Product Name"

   Manufacturer: Dell Inc.

   Product Name: Inspiron 530

--

   Manufacturer: Dell Inc.

```

Aber ich glaube das hilft nicht so sehr weiter...

Aus dem BIOS konnte ich folgende Informationen ablesen:

```

BIOS Info 1.0.10 12/15/2007

Processor Type Intel (R) Core (TM) 2 Quad CPU Q6600 @ 2,4 GHz

Processor L2 Cache 8192 kb

Memory Installed 4096 MB

Memory Available 4095 MB

Memory Speed 667 MHz

Memory Channel Mode Dual

Memory Technology DDR2 SDRAM

```

Hier noch die Ausgaben für die RAM Bänke

```

Handle 0x0006, DMI type 6, 12 bytes

Memory Module Information

   Socket Designation: DIMM1

   Bank Connections: 0

   Current Speed: Unknown

   Type: DIMM

   Installed Size: 1024 MB (Single-bank Connection)

   Enabled Size: 1024 MB (Single-bank Connection)

   Error Status: OK

Handle 0x0007, DMI type 6, 12 bytes

Memory Module Information

   Socket Designation: DIMM2

   Bank Connections: 2

   Current Speed: Unknown

   Type: DIMM

   Installed Size: 1024 MB (Single-bank Connection)

   Enabled Size: 1024 MB (Single-bank Connection)

   Error Status: OK

Handle 0x0008, DMI type 6, 12 bytes

Memory Module Information

   Socket Designation: DIMM3

   Bank Connections: 4

   Current Speed: Unknown

   Type: DIMM

   Installed Size: 1024 MB (Single-bank Connection)

   Enabled Size: 1024 MB (Single-bank Connection)

   Error Status: OK

Handle 0x0009, DMI type 6, 12 bytes

Memory Module Information

   Socket Designation: DIMM4

   Bank Connections: 6

   Current Speed: Unknown

   Type: DIMM

   Installed Size: 1024 MB (Single-bank Connection)

   Enabled Size: 1024 MB (Single-bank Connection)

   Error Status: OK

```

Last edited by Maximum on Sat Mar 01, 2008 5:40 pm; edited 1 time in total

----------

## Klaus Meier

Also um es auf den Punkt zu bringen. Mehr Speicher bekommst du aus deiner Hardware nicht raus.Last edited by Klaus Meier on Sat Mar 01, 2008 5:44 pm; edited 1 time in total

----------

## Maximum

 *Klaus Meier wrote:*   

> Also um es auf den Punkt zu bringen. Mehr Soeicher bekommst du aus deiner Hardware nicht raus.

 

Weil ?

----------

## Max Steel

weil du nur 4GB drin hast, und alle 4 bereits verfügbar sind.

Das da nur 3,5 angezeigt werden liegt wahrscheinlich daran das du eine Onboard GraKa hast die sich 512 MB für ihre Dienste schnappt.

Das wäre zumindest eine einleuchtende Erklärung.

----------

## Klaus Meier

 *Maximum wrote:*   

>  *Klaus Meier wrote:*   Also um es auf den Punkt zu bringen. Mehr Soeicher bekommst du aus deiner Hardware nicht raus. 
> 
> Weil ?

 Einfach mal hier blättern, das Thema haben wir hier einmal die Woche.

Also, weil: Der 32-Bit Adressraum sind 4GB. Und in diesem Adressraum muß alles untergebracht werden, nicht nur der Hauptspeicher. Und selbst wenn du ein 64-Bit Betriebssystem fährst, gibt es Hardware, die nur im 32-Bit Bereich adressirbar ist. Und wie das ganze dann zugeordnet und verdratet wrid, hängt dann vom Mainboard und Chipsatz ab. Der Bereich geht von 2,2 bis 3,8 GB. War schon immer so, ist halt nur niemanden aufgefallen, weil es bis vor einem Jahr kaum Rechner über 2GB gab.

Aber das ist nicht die Grenze. Also wenn du jetzt 8GB in deinem Rechner hast, dann hättest 7,5 verfügbar, nur, weil dir im 32-Bit Raum was abgezogen wird, heißt es nicht, dass es nicht mehr gibt.

----------

## Klaus Meier

 *Max Steel wrote:*   

> weil du nur 4GB drin hast, und alle 4 bereits verfügbar sind.
> 
> Das da nur 3,5 angezeigt werden liegt wahrscheinlich daran das du eine Onboard GraKa hast die sich 512 MB für ihre Dienste schnapp.

 Nein, leider falsch. 4GB sind der Adressraum und nicht der Speicher, der zur Verfügung steht. Und in diesem Adressraum müssen die Adressen der Hardware untergebracht werden, nicht dessen Speicher.

----------

## gimpel

 *Maximum wrote:*   

>  *Klaus Meier wrote:*   Also um es auf den Punkt zu bringen. Mehr Soeicher bekommst du aus deiner Hardware nicht raus. 
> 
> Weil ?

 

Das Board hat einen von Dell kastrierten Intel G33 chipsatz, der per specs zwar 8GB addressieren kann und 64bit'tig läuft, aber nicht in der Version wie ihn Dell verbaut hat. Das board läuft mit 32bit Speicher-addressierung, kann daher nicht den Rest vom Speicher jenseits der 4GB remappen, die 800MB gehen also für MMIO drauf, wie ebenfalls bereits erklärt wurde.

http://discussions.hardwarecentral.com/showthread.php?t=179178

Genau wie Klaus Meier bereits sagte  :Wink: 

----------

## Klaus Meier

 *gimpel wrote:*   

>  *Maximum wrote:*    *Klaus Meier wrote:*   Also um es auf den Punkt zu bringen. Mehr Soeicher bekommst du aus deiner Hardware nicht raus. 
> 
> Weil ? 
> 
> Das Board hat einen von Dell kastrierten Intel G33 chipsatz, der per specs zwar 8GB addressieren kann und 64bit'tig läuft, aber nicht in der Version wie ihn Dell verbaut hat. Das board läuft mit 32bit Speicher-addressierung, kann daher nicht den Rest vom Speicher jenseits der 4GB remappen, die 800MB gehen also für MMIO drauf, wie ebenfalls bereits erklärt wurde.
> ...

 Keine Ahnung, ob Dell sowas per Bios verbocken kann. Selbst wenn sie es nicht tun würden, reicht schon das Einstecken irgendeiner Karte, um den Adressraum ad absurdum zu führen.

----------

## Maximum

Danke nochmals für eure detaillierten Antworten.

Ich finde es etwas befremdlich, dass man eine 64 Bit fähige CPU auf ein Mainboard setzt, das nur 32 Bit Speicheradressen addressieren kann. 

Sehe ich das richtig, dass damit der ganze Vorteil einer 64 Bit CPU verloren geht?

----------

## Klaus Meier

 *Maximum wrote:*   

> Danke nochmals für eure detaillierten Antworten.
> 
> Ich finde es etwas befremdlich, dass man eine 64 Bit fähige CPU auf ein Mainboard setzt, das nur 32 Bit Speicheradressen addressieren kann. 
> 
> Sehe ich das richtig, dass damit der ganze Vorteil einer 64 Bit CPU verloren geht?

 

Absolut nein. Also wenn du jetzt z.B. 8GB Speicher auf deinem Board hättest, dann hättest halt 7,5GB verfügbar. Ist absolut nicht so, dass das Board nur 32 Bit Adressraum unterstützt, es ist nur so, dass gewisse Dinge ausschließlich im 32 Bit Adressraum stattfinden. War nur so, dass es niemandem aufgefallen ist, der nicht mehr als 2GB auf seinem Board hat. Die Serverchipsätze von Intel können da auch ein Memoryremapping machen, welches diese Fälle in den 64 Bit Bereich verschieben, aber die kosten halt auch einen Euro mehr....

Aber mal eine andere Frage, warum hast du denn überhaupt 4 GB auf deinem Board? Denke mal, bei Gentoo kann man mit einem glücklich werden. Klingt für mich so, als wolltest du ein Vista, was unter 5 Minuten bootet. Wie gesagt, Feinheiten der Hardware sind bei den Marketingheinis noch nicht angekommen.

----------

## firefly

 *Klaus Meier wrote:*   

>  *Maximum wrote:*   Danke nochmals für eure detaillierten Antworten.
> 
> Ich finde es etwas befremdlich, dass man eine 64 Bit fähige CPU auf ein Mainboard setzt, das nur 32 Bit Speicheradressen addressieren kann. 
> 
> Sehe ich das richtig, dass damit der ganze Vorteil einer 64 Bit CPU verloren geht? 
> ...

 

4GB an RAM machen auch sinn wenn man Virtualisierung ala Virtualbox VMWare, XEN und co machen möchte.

----------

## xraver

 *Klaus Meier wrote:*   

> Aber mal eine andere Frage, warum hast du denn überhaupt 4 GB auf deinem Board? Denke mal, bei Gentoo kann man mit einem glücklich werden. Klingt für mich so, als wolltest du ein Vista, was unter 5 Minuten bootet. Wie gesagt, Feinheiten der Hardware sind bei den Marketingheinis noch nicht angekommen.

 

VISTA kann man mit 2 oder sogar 1 GB RAM unter 5min booten.

Es gibt auch genügend andere Gründe sich 4GB einzubauen. Wenn man nun mal Spieler ist wie ich und auch auf DX10 nicht verzichten mag dann kommt man um VISTA eben nicht herum und dann währen 4GB schon angebracht. Bei einem Freund konnte ich VISTA durch deaktivieren von unnützen Diensten dazu bewegen nur um die 500MB RAM zu verwenden. Auch ein Gentoo kann von dem "vielen" Speicher profitieren, z.b tmpfs für emerge. Und was spricht auch bei den niedrigen RAM Preisen dagegen gleich richtig zuzugreifen?

Ich würde auf jeden Fall nicht immer behaupten das ein User der sich 4GB Ram einbaut, auf die Marketing Tricks von M$ reingefallen ist.

Und wer weiss was der User alles so treibt. Vielleicht brauch er den "vielen" RAM auch nur für die Bildbearbeitung oder einer sonstigen Applikation.

Für mich ist der Viele Speicher unter Linux auch praktisch weill ich noch ein "Arbeits Windows" Virtualisiere.

Ich frage mich warum die Leute immer ab 4GB RAM gleich M$-Bashing betreiben müssen.

Purer Neid oder Ahnungslosigkeit?

----------

## AmonAmarth

 *xraver wrote:*   

> Ich frage mich warum die Leute immer ab 4GB RAM gleich M$-Bashing betreiben müssen.
> 
> Purer Neid oder Ahnungslosigkeit?

 

 :Laughing:  sehr sarkastischer beitrag, allerdings muss ich dir vollkommen zustimmen! wer schonmal videobearbeitung, vorallem im HD bereich, gemacht hat weiß wieviel speicher das alles kostet, HDD wie auch RAM! wir wissen ja alle nicht was Maximum damit vor hat...  :Wink: 

----------

## Anarcho

Oder einfach Solitair und Freecell gleichzeitig spielen! Bei hochaufgelösten Texturen pro Karte, sagen wir unkomprimiert 25 MB pro Karte.

Das macht dann schon bei einem Solitairblatt  1325 MB (52 Karten + 1x Rückseite, und wir gehen mal davon aus das die beiden Spiele nicht optimiert wurden).

Das ganze mal 2 (ich glaube Freecell ist auch ein Solitairblatt???) sind schon 2650 MB. Wenn man dann noch den BS Overhead und den Speicher für das restliche Spiel, dann kommt man schon an die Grenzen der 4GB.

----------

## AmonAmarth

 *Anarcho wrote:*   

> Oder einfach Solitair und Freecell gleichzeitig spielen! Bei hochaufgelösten Texturen pro Karte, sagen wir unkomprimiert 25 MB pro Karte.
> 
> Das macht dann schon bei einem Solitairblatt  1325 MB (52 Karten + 1x Rückseite, und wir gehen mal davon aus das die beiden Spiele nicht optimiert wurden).
> 
> Das ganze mal 2 (ich glaube Freecell ist auch ein Solitairblatt???) sind schon 2650 MB. Wenn man dann noch den BS Overhead und den Speicher für das restliche Spiel, dann kommt man schon an die Grenzen der 4GB.

 

ROFL! ab nach #bitte-löschen bitte!!!

eigentlich kann man den thread doch auch auf solved setzen oder gibt es noch fragen über böse hardware verarscher?

----------

## Tranquility

Niemand wird jemals mehr als 640KB RAM benötigen ^^

----------

## Maximum

Mal dazu was ich mit dem Rechner mache:

Ich virtualisiere mit VmWare bis zu 3 Server für Entwicklungszwecke.

Und da ich mit Vista immer fast 2GB Speicher so verbrauche habe ich mir mal die 4GB gegönnt.

----------

## Dragonix

Auf die Gefahr hin eine auf den Deckel zu bekommen:

Ich hab den link in der 1. (oder 2. ...) Antwort gelesen, und da steht, dass mein Chipsatz (P965) "8 GB of address space" hat / unterstützt / was weiss ich. Aber... der Absatz darunter, der leuchtet mir nicht ganz ein

 *Quote:*   

> 
> 
> Note When the physical RAM that is installed on a computer equals the address space that is supported by the chipset, the total system memory that is available to the operating system is always less than the physical RAM that is installed. For example, consider a computer that has an Intel 975X chipset that supports 8 GB of address space. If you install 8 GB of RAM, the system memory that is available to the operating system will be reduced by the PCI configuration requirements. In this scenario, PCI configuration requirements reduce the memory that is available to the operating system by an amount that is between approximately 200 MB and approximately 1 GB. The reduction depends on the configuration.

 

Wie errechnet sich das? Bzw, gibts da ein Programm, dass das rauszufindet? Bevor ich aufrüste (spiel mit dem Gedanken auf 4GB aufzurüsten), möcht ich schon ganz gern wissen wie groß der Verlust ist..

Thx  :Smile: 

Edit: http://62.109.81.232/cgi-bin/sbb/sbb.cgi?&a=show&forum=1&show=2837&start=0#2 << im gb forum hat jemand mein board (sogar die rev 1.0, ich hab rev3.3, und der sagt, dass es bei ihm geht. ich find aber weder im netz noch im handbuch was darüber, dass das board dieses memory remapping unterstützt. Heisst dass, das er nur glück hatte / eine gfx karte mit 1mb vram, ...?)

----------

