Hallo,
eigentlich stell ich mich sonst nicht so an, aber ich habe jetzt mal ein
PC wo der RAM nicht zur Verfüng steht.
Ich weiß das XP32Bit maximal 3,5GB ram Ansprechen kann! Aber ich habe
jetzt ein M2N68-AM Mainboard mit 2x2GB Ram drin. Bios und Windows in der
Systeminformation Zeigen auch 4GB an. Aber in den Systemeigenschaften
bzw. Taskmanager sind es nur 2,5GB.
Das Mainboard hat eine onBoard Grafik, diese ist aber nicht aktiv
(richtig abschalten geht nicht) weil eine GeForce 9500GT mit 1GB ram im
PEG Slot steckt.
Wenn ich die 9500 ausbaue dann habe ich 2,75GB ram.
Wenn ich ein Speicher modul ausbaue habe ich 2GB bzw. 1,75GB (ohne
9500).
Die 9500 hat 1GB ram. Steht auf der Karte drauf und es sind auch
speicher module auf der Karte vorhanden. (also kein shared mem)
Irgendwie habe ich den Verdacht das wegen dem 1GB Grafikspeicher mit der
1GB ram fehlt. Ich hatte bis jetzt fast nur mit ATI Karten zu tun, dabei
viel mir sotwas noch nie auf.
Hat jemand soetwas gehabt oder kann mir eine Lösung oder wenigstens eine
Erklärung liefern?
Die 4Gb beziehen sich auf jeglichen flüchtigen Speicher, wie du richtig
erkannt hast auch auf den Videospeicher. Da durch ausbau der Grafikkarte
(habe ich das richtig verstanden?) der adressierbare Speicher deines
Rams nicht wächst, gehe ich mal davon aus, dass dein Mainboard keine 4Gb
unterstützt. Dies ist meist ein Designfehler, da Mainboard hersteller
nicht mit dieser rasant wachsenden Ram grössen gerechnet haben. Evtl.
hilft ein Firmwareupdate?
Ist nur ein (gewollter) Designfehler, weil billiger. Der Verkaufspreis
und die Onboardgrafik weisen auf Büroanwendung hin. Dort braucht man
keine 4 GB.
Deshalb hat man damit auch keine Nachteile für diese Verwendung.
das Mainboard unterstützt 4GB ram. Steht auf der Webseite und im Bios
wird es auch angezeigt.
> Die 4Gb beziehen sich auf jeglichen flüchtigen Speicher, wie du richtig> erkannt hast auch auf den Videospeicher.
das kann so nicht stimmem, ich habe schon mehere System mit einer 512MB
Grafkkarte und 4GB ram gehabt. Windows hat immer schön sein 3,5GB
angezeigt. Der Grafikspeicher wird ja auch nicht komplett in den Ram
eingeblendet. Windows verwaltet ja auch nicht den Grafikspeicher das
mach der Treiber der Karte. Das Betriebssystem weiß eigentlich nicht von
diesem Speicher.
http://www.asus.de/product.aspx?P_ID=qbrcECibOYaRS9IO
Also wenn BIOS und Windows 4GB anzeigen dann sind auch 4GB hochgezählt
worden. Hast du neu installiert oder einfach nur erweitert? Evtl. wäre
das Problem mit einer Windows Neuinstallation behoben da ein anderer HAL
Kernel installiert wird der den oberen Speicherbereich erkennt. Schonmal
mit einer Linux Live CD probiert und dort mal mit top / htop geschaut
wie viel Speicher erkannt wird ?
Grüße
Peter schrieb:> das Mainboard unterstützt 4GB ram. Steht auf der Webseite und im Bios> wird es auch angezeigt.
Dann musst Du halt ein 64Bit System installieren. Gelogen ist das vom
Hersteller nicht. Es wurden eben ein paar Vereinfachungen im Layout
gemacht, unter denen Du nun mit 32Bit zu leiden scheinst. Du wolltest ja
beim Kauf auch sparen, sonst hättest Du Dir ein Mobo für 75€ gekauft und
bräuchtest hier keine Anfragen zu posten. Ev. verstehst Du ja nun die
Preisunterschiede.
mhh schrieb:> Es wurden eben ein paar Vereinfachungen im Layout> gemacht, unter denen Du nun mit 32Bit zu leiden scheinst.
das must du mir mal genauer erklären, wenn ich ein 64bit system
installiere dann entstehen wohl von selber die neuen Leitungen? Und das
ist besitmmt kein Merkmal von billigen Boards. Dabei geht es um die
anzahl der Steckplätze bzw Anschlüsse. Das Boad hat "nur" 2 SATA
anschlüsse und auch nur 2 Plätze für RAM aber das reicht für den Zweck.
Auserdem steck die Speichercontroller ja mittlerweile in der CPU das
Mainboard hat damit recht wenig zu tun.
Auserdem erkärt es nicht warum mit der onboard Karte 2,75GB und mit eine
extra Karte die selber 1GB hat nur noch 2,5GB zur verfügung stehen.
@Thomas Hempe
ja system ist komplett neu installiert, gleich mit SP3. Mit linux (ein
altes Knoppix mit 2.6.24er Kernel) zeigt auch nur 2,5GB ram an.
Ein 32-Bit Betriebssystem kann nur 4GB Adressbereich verwalten.
1GB braucht die Grafikkarte, diverse andere Geräte brauchen auch
Adressbereich.
Also, die schlechte Ausnutzung deine RAMs ist völlig normal.
Einzige Lösung : steig um auf 64-Bit Betriebssystem.
Alternative : ignorier den Schönheisfehler und leb damit.
Die onboard-Grafik sollte sich aber wirklich im BIOS abschalten
lassen...
Bei mir funktionierts perfekt : onboard Grafik aus, 1GB Grafikkarte, 4GB
RAM, Win7/64Bit - und volle 4GB sind nutzbar (ist allerdings Core 2 Duo,
kein AMD System).
Vielleicht gibts irgendwo ein Linux-Live-System für CD/DVD/USB-Stick in
64-Bit ? wäre gut zum testen :)
Peter schrieb:> das must du mir mal genauer erklären, wenn ich ein 64bit system> installiere dann entstehen wohl von selber die neuen Leitungen?
Rein hardwareseitig sind die PCs seit langem in der Lage, mehr als 4GB
physikalischen Adressraums zu verdauen. Egal ob mit 32-Bit oder 64-Bit
Betriebssystem. Wie die jeweiligen Chipsätze das halten ist eine andere
Frage. Wenn der Chipsatz nicht mitmacht, nützt auch Win64 nichts.
Wenn das Board jedoch den gesamten Speicher unterstützt, aber einen Teil
davon jenseits der 4GB-Grenze platziert, dann besteht dein Problem in
der Weigerung mancher 32-Bit Versionen von Windows, Speicher jenseits
dieser physikalischen 4GB Grenze zur Kenntnis zu nehmen. Das ist eine
von Microsoft gewollte Lizenzeinschränkung der 32-Bit Version von
Windows XP und hat in aktuellen Service-Packs keinen technischen
Hintergrund mehr.
> Mit linux (ein> altes Knoppix mit 2.6.24er Kernel) zeigt auch nur 2,5GB ram an.
Das wiederum spricht dafür, dass das Board/BIOS den aus seiner Sicht
nicht unterhalb 4GB einblendbaren Speicher effektiv verwirft. Dann
sollte auch mit Win64 nichts zu gewinnen sein.
Im Linux könnte /proc/iomem eine Vorstellung der physikalischen
Adressbelegung vermitteln.
Peter schrieb:> Auserdem erkärt es nicht warum mit der onboard Karte 2,75GB und mit eine> extra Karte die selber 1GB hat nur noch 2,5GB zur verfügung stehen.
Kann sein, dass das BIOS einfach zu dämlich ist, den 4GB-Adressraum
effizient aufzuteilen. Mit viel Glück hat das BIOS eine Option, die die
zweite Hälfte des RAMs jenseits der 4GB-Grenze platziert. Dann wäre das
gesamte RAM immerhin erreichbar, wenn auch nicht für Win32-XP.
In Linux, egal ob 32- oder 64-Bit, kriegt man die Memory Map auch im
Boot-Log angezeigt. Was je nach Version in /var/log/boot* oder dmesg zu
finden ist, hier (1GB Netbook) in Ubuntu 32-Bit 2.6.24 beispielsweise
per dmesg:
Die meisten Boards bieten im BIOS eine Möglichkeit, die Größe des für
die onboard-Grafik verwendeten RAMs einzustellen. Schau mal nach, ob du
was entsprechendes findest. Nicht daß dort 1 GB eingestellt ist (eher
unwahrscheinlich, aber möglich).
Ansonsten kommen eigentlich nur Hardwaredefekte in Frage oder
Inkompatibilitäten der Speicherriegel mit dem Board. Es kommt z.B. bei
Double-Sided Speichermodulen vor, daß nur eine Seite funktioniert. Dann
arbeitet der Riegel nur mit halber Kapazität. Dagegen spricht
allerdings, daß Memtest 4 GB erkennt. Mysteriös...
Icke schrieb:> Dagegen spricht allerdings, daß Memtest 4 GB erkennt. Mysteriös...
Überhaupt nicht Mysteriös, oben schon harklein erklärt. Hier die
Kurzform nochmal:
Der Mainboard-Hersteller hat bei dem Memory-Mapping für 32-Bit-Betrieb
geschlampt, vermutlich weil heute sowieso jeder ein 64Bit-Windows
installiert.
Lösungsmöglichkeiten:
- Bios-Update versuchen
- Anderes Mainboard kaufen
- 64-Bit Betrübssystem installieren
- sich mit 2GB Zufriedengeben.
Ein Auge ins zugehörige Asus M2N68-AM Manual könnte evtl. neue
Erkenntnisse bringen, ob der verschwundene RAM nicht doch von/für die
Onboardgrafik reserviert ist oder wie diese richtig abgeschaltet werden
kann?
>Der Mainboard-Hersteller hat bei dem Memory-Mapping für 32-Bit-Betrieb>geschlampt
Und er scheint das auch zu wissen. Ich hab mal das Manual gezogen, darin
steht:
"When you install total memory of 4GB or more, Windows 32-Bit operating
system may only recognize less then 3GB."
Früher hätte es bei Asus sowas nicht gegeben, schade schade...
Soweit schön und schlecht, aber womit erklärt sich, dass Linux auch nur
2,5GB erkennt? Nicht mit 32/64-Bit, denn auch ein 32-Bit Linux verwendet
Speicher, der oberhalb 4GB gemappt wird. Ausserdem ist für Remapping
eine 2,5GB/1,5GB Aufteilung ausgesprochen untypisch, da wäre 2GB/2GB zu
erwarten.
Ich habe noch ein wenig im google befragt. Es könte an der Einstellung
"AGP-GART-Size" die es bei einigen Bios gibt liegen. Wenn ich das
richtig verstanden haben gibt sie die größe des Speicherfensterns für
die Grafikkarte an. Aber ist ist es eine PEG karte und das Bios hat
keine solche Einstellung mehr. Es gibt nur eine Einstellung für das
Speichermapping und diese hat weder unter linux noch Windows eine
sichtbare Auswirkung.
Bios ist das aktuellste drauf.
Mal sehen ob ich heute mir mal schnell eine 64bit linux brenne.
A. K. schrieb:> Soweit schön und schlecht, aber womit erklärt sich, dass Linux auch nur> 2,5GB erkennt?
Liegt nicht an Linux, sondern an Knoppix. Der Knoppix-Kernel hat keinen
PAE-Support einkompiliert, damit er auch auf älteren System läuft
(offiziell unterstützt wird ab 486), deshalb gelten für ihn die gleichen
Grenzen wie bei 32bit-Windows.
Andreas
Ok, das ergibt Sinn. Wobei er mit diesem Knoppix trotzdem die oben
gezeigte Bootmeldung über die Speicherbereiche korrekt kriegen müsste um
zu erfahren, ob ihm 64bit Windows was nützt.
Ohforf Sake schrieb:> Ein 32-Bit Betriebssystem kann nur 4GB Adressbereich verwalten.
Nur, wenn das 32-Bit-Betriebssystem künstlich kastriert ist und kein PAE
beherrscht.
> Einzige Lösung : steig um auf 64-Bit Betriebssystem.
Oder eines, das PAE beherrscht.
Rufus t. Firefly schrieb:> Ohforf Sake schrieb:>> Ein 32-Bit Betriebssystem kann nur 4GB Adressbereich verwalten.> Nur, wenn das 32-Bit-Betriebssystem künstlich kastriert ist und kein PAE> beherrscht.
das sollte aber nicht das Problem sein, weil XP ja 3,5GB kann.
Ich denke ist liegt am Bios mit seiner Mapping tabelle.
So nebenbei: Da die Data Execution Prevention nur mit PAE zu haben ist
verwendet auch Microsofts Crippleware seit Einbau dieser Feature
routinemässig PAE. Die Beschränkung auf physikalische 4GB ist also rein
künstlich.
In den XP Versionen vor DEP konnte man PAE als Boot-Option einschalten.
Was nichts an der Einschränkung änderte.
Peter schrieb:> das sollte aber nicht das Problem sein, weil XP ja 3,5GB kann.> Ich denke ist liegt am Bios mit seiner Mapping tabelle.
Am Zusammenwirken von beidem. Früher lieferten Systeme tatsächlich bis
3,5GB Speicher. Das wird allerdings immer weniger, was wohl den immer
grösser werdenen Grafikkarten zu verdanken ist, und BIOSen, die auch
ohne solche Karte vorsorglich entsprechend Platz einplanen.
> Ich denke ist liegt am Bios mit seiner Mapping tabelle.
Ich habe hier die gleiche Situation. Mit einem 32-Bit Linux habe ich
2,5GB freies RAM und mit einem 64-Bit Linux habe ich 4GB freies RAM.
Deine Hardware Soundkarte, USB, Grafik,... wird in den normalen
Adressraum eingeblendet (Memory Mapping). Im 32-Bit Modus heißt das in
den Bereich unterhalb von 4GB. Im 64-Bit Modus wird die Hardware
natürlich auch eingeblendet allerdings überlagert sie dort kein RAM
(jedenfalls nicht bei 4GB).
A. K. schrieb:> So nebenbei: Da die Data Execution Prevention nur mit PAE zu haben ist> verwendet auch Microsofts Crippleware seit Einbau dieser Feature> routinemässig PAE. Die Beschränkung auf physikalische 4GB ist also rein> künstlich.
Auch wenn es mir normalerweise fern liegt, Microsoft zu verteidigen,
aber das PAE-Flag in der CPU zu setzen und die Pagetables geringfügig
anders zu generieren ist nur ein kleiner Teil des Aufwandes, der ggf.
nötig ist um die komplette Speicherverwaltung für mehr als 4GB tauglich
zu machen. Natürlich ist das abhängig davon wie der Code konkret
aussieht und aufgebaut ist, vom Ändern eines "physaddr_t"-Typedefs bis
zum Rewrite von zigtausenden Codezeilen kann das alles sein.
Von daher kann man aus dem blossen Umstand, dass PAE in der CPU
aktiviert wird, nicht wirklich schliessen, dass die Beschränkung auf 4GB
wirklich "künstlich" gemacht wird.
Andreas
Die Fähigkeit, PAE mit mehr als 4GB nutzen zu können, steckt im
Server-Code schon seit langem drin. Wobei sich die verschiedenen
Server-Varianten schon anno Win2000 u.A. an genau der gleichen
4GB-Grenze unterschieden und auch heute noch in der 32-Bit Version tun.
Da die PAE-Option des ursprünglichen XPs ausserdem "unsupported" war und
wohl nur zwecks Hilfestellung bei Programmentwicklung für Server
überhaupt existierte, ist kaum anzunehmen, dass Microsoft da zwei
verschiedene Codelinien pflegt.
Nope, das ist eine vorsätzliche Beschränkung, keine technische.
A. K. schrieb:> Glaubst du wirklich, dass der Kernel sich in mehr als der> Parametrisierung vom einem Server-Kernel ohne diese Beschränkung> unterscheidet? Die Fähigkeit, PAE mit mehr als 4GB nutzen zu können,> steckt im Server-Code schon seit langem drin. Wobei sich die> verschiedenen Server-Varianten schon anno Win2000 u.A. an genau der> gleichen 4GB-Grenze unterschieden.
OK, das ist eine Information die ich so nicht hatte, mit Windows-Servern
habe ich mich das letzte mal irgendwann zu NT4-Zeiten beschäftigt, und
da auch eher unter dem Aspekt "Wie bekomme ich den durch ein Linux
ersetzt?" ;-)
Bei den paar Windows-Servern in der Firma bin ich froh, wenn ich die
ggf. unfallfrei neugestartet bekomme, wenn sie sich mal aufhängen (was
zugegebenermassen aber nicht häufig vorkommt) ;-)
Andreas
Hallo,
ich habe Debian auf einem nforce8200 Chipssatz (AM2+) mit 8 GB RAM. ich
musste ein linux-image.....-bigmem installieren, danach erkennt es die 8
GB und kann sie auch nutzen. Also möglich, daß das standardmäßig bei
Knoppix und Co out of the box nicht funktioniert.
Gruß
Werner
Ja, hab grad mal ein bischen durchgesehen. Da man bei den Linux-Distros
meist zwischen diversen Kernels wählen kann, und die Unterstützung von
physikalischen Adressen >4GB ein bischen mehr Platz/Aufwand kostet, ist
diese Feature bei nur in manchen der 32-Bit Kernels aktiviert.
Wobei das bei jeder Distro anders zu heissen scheint. Bei debian
-bigmem, bei Ubuntu -pae, ...
Siehe Configfile unter HIGHMEM64G.
A. K. schrieb:> Da man bei den Linux-Distros> meist zwischen diversen Kernels wählen kann, und die Unterstützung von> physikalischen Adressen >4GB ein bischen mehr Platz/Aufwand kostet, ist> diese Feature nur in manchen der Kernels aktiviert.
Viel wichtiger: PAE kann bei Linux nur zur Compilezeit
aktiviert/deaktiviert werden, deshalb funktioniert ein mit PAE
kompilierter Kernel auf CPUs ohne PAE-Support nicht mehr. Wer jetzt nur
an uralte 486 und P1 denkt, bei denen man drüber streiten könnte, ob man
die noch unbedingt unterstützen muss: es gibt auch einige PAE-lose
x86-CPUs jüngeren Datums, z.B. waren die ersten Pentium M bis Anfang
2005 ohne PAE.
Andreas
Bei Linux ist es eine Sache der Kernelkonfiguration wieviel Speicher der
anfasst - Da gibt es verschiedene Highmem-Optionen bei der
Konfiguration, und noch die inzwischen in Vergessenheit geratene, eher
riskante PAGE_OFFSET-Schraube... bei einer modernen(!) Distribution
sollte das aber alles sinnvoll eingestellt sein....