PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Adressierbarer Speicher unter XP32 - 3,25 + 1 = 4GB?


Sonyfreak
2009-02-24, 18:41:56
Ich hab mal eine Frage bezüglich dem adressierbaren Speicher unter XP32. Und zwar hatte ich bis vor kurzem eine 8800GTS mit 640MB Ram. Daher hatte ich nur 3,25 von meinen 4GB Arbeitsspeicher zur Verfügung. Seit etwa einem Monat hat nun eine 280GTX mit 1GB Speicher ihren Platz übernommen, Windows kann aber laut Anzeige immer noch auf 3,25GB Ram zugreifen. :confused:

Da aber 1GB + 3,25GB Speicher insgesamt mehr als 4GB sind, verstehe ich nicht so ganz wie das funktionieren kann. Gibts dafür eine logische Erklärung? Für eine solche wäre ich sehr dankbar. :)

mfg.

Sonyfreak

Gast
2009-02-24, 18:48:11
Die erklärung ist, daß CPU/OS nicht den kompletten RAM der Grafikkarte adressieren müssen, sondern in der Regel wird das auf 256MB begrenzt, egal wieviel RAM die Grafikkarte hat.

Andi_669
2009-02-24, 18:49:49
Ich hab mal eine Frage bezüglich dem adressierbaren Speicher unter XP32. Und zwar hatte ich bis vor kurzem eine 8800GTS mit 640MB Ram. Daher hatte ich nur 3,25 von meinen 4GB Arbeitsspeicher zur Verfügung. Seit etwa einem Monat hat nun eine 280GTX mit 1GB Speicher ihren Platz übernommen, Windows kann aber laut Anzeige immer noch auf 3,25GB Ram zugreifen. :confused:

Da aber 1GB + 3,25GB Speicher insgesamt mehr als 4GB sind, verstehe ich nicht so ganz wie das funktionieren kann. Gibts dafür eine logische Erklärung? Für eine solche wäre ich sehr dankbar. :)

mfg.

Sonyfreak
Das würde mich auch noch interessieren, habe gerade meine GTX285 eingebaut,
das hat an den verfügbaren 3,25GB auch nichts geändert:|
vorher war eine 8800GT mit 512MB drin :confused:

anddill
2009-02-24, 18:59:21
Du hast ja auch nicht weniger RAM zur Verfügung wenn Du eine größere Festplatte einbaust. ;)

Der Grafikspeicher wird mit einem (bis zu) 256MB großen Adressfenster in den Adressbereich eingeblendet. Pro GPU.

Sonyfreak
2009-02-24, 19:56:39
Das heißt auch eine Grafikkarte mit 2GB VRam würde die Menge des verfügbaren Arbeitsspeichers nicht vermindern, eine zweite Grafikkarte hingegen schon?

mfg.

Sonyfreak

Spasstiger
2009-02-24, 20:20:50
Das heißt auch eine Grafikkarte mit 2GB VRam würde die Menge des verfügbaren Arbeitsspeichers nicht vermindern, eine zweite Grafikkarte hingegen schon?
Ja:

http://www.abload.de/img/image_26v4ro.png

Quelle: http://blogs.technet.com/markrussinovich/archive/2008/07/21/3092070.aspx

Das Adressierungs-Prinzip dahinter nennt man Isolated I/O (http://de.wikipedia.org/wiki/Isolated_I/O)

Sonyfreak
2009-02-24, 21:26:41
Ok, danke jetzt kenne ich mich aus. :)

mfg.

Sonyfreak

Gast
2009-02-25, 01:33:30
Weshalb setzt ihr überhaupt noch die 32-Bit-Version von WinXP ein? Gibt es für eure Hardware keine 64-Bit-Treiber? Gerade wo sogar mehr Speicher verfügbar ist, als unter einem 32-Bit-OS adressiert werden kann, sehe ich kaum einen Grund ein solches noch einzusetzen.

Wenn die Anschaffungskosten abschrecken: MS bietet eine Trial-Version von Server 2008 an. Diese ist bis zu 180 (oder warens 240?) Tagen voll nutzbar. Entspricht praktisch Vista SP1. Wenn NT6 nicht gewünscht ist, gibt es auch WinXP in einer 64-Bit-Variante. Anfangs konnte man als Besitzer der alten Version bei MS noch zum Selbstkostenpreis zum 64-Bit-System wechseln. Mittlerweile sehe ich auf der Seite jedoch keine solche Aktion mehr. Könnt mich ärgern, dass ich die olle gammlige XP32-Lizenz hier, die eh noch nie genutzt wurde, nicht umgetauscht habe damals. Ein 64-Bit-WinXP wäre schon eher zu gebrauchen, während ich persönlich mit einem 32-Bit-System gar nichts anfangen kann.

MS aber bringt selbst die zukünftigen Betriebssysteme noch in einer Legacy-IA32-Fassung. Kein Wunder, verkauft doch auch Intel heutzutage noch fleißig 32-Bit-Prozessoren (z.B. Core Duo und Celeron-M in Notebooks). Selbst aktuelle Rechner mit modernen x86-64-CPUs werden im MM noch mit einem 32-Bit-Schimmelvista verkauft. Da wundert es kaum, dass selbst Anwendungen, die vom größeren Adressraum profitieren könnten, oft noch ausschließlich als 32-Bit-Kompilat daherkommen.

Spasstiger
2009-02-25, 02:12:32
Selbst aktuelle Rechner mit modernen x86-64-CPUs werden im MM noch mit einem 32-Bit-Schimmelvista verkauft.
Das stimmt so pauschal nicht. Bei Rechnern mit mehr als 4 GiB RAM ist eigentlich immer Vista 64 Bit drauf. Alles andere würde ja auch zu heftigen Kundenprotesten führen, weil das OS nur 4 GiB physikalischen Speicher meldet obwohl z.B. 6 GiB verbaut sind (typischer Core-i7-Rechner). Es ist nur eine Frage der Zeit bis mehr als 4 GiB RAM der Standard geworden sind. Dann werden auch 64-Bit-Betriebssysteme Standard sein.

Gast
2009-02-25, 07:28:47
Vista 32bit SP1 zeigt auch 4GB Speicher an,obwohl nur 3,25BG nutzbar sind. Eben deshalb damit der Fertigpc-käufer nicht die Panik kriegt und glaubt er wäre betrogen worden.

Sonyfreak
2009-02-25, 11:29:24
Weshalb setzt ihr überhaupt noch die 32-Bit-Version von WinXP ein? Gibt es für eure Hardware keine 64-Bit-Treiber? Gerade wo sogar mehr Speicher verfügbar ist, als unter einem 32-Bit-OS adressiert werden kann, sehe ich kaum einen Grund ein solches noch einzusetzen.Weil ich mit meiner 32bit Version von Windows XP eigentlich noch recht zufrieden bin. Alternativ habe ich auch noch Vista x64 installiert, nur ist dieses OS meiner Meinung nach bestenfalls für Versuchszwecke geeignet.

Ich hoffe mit Windows 7 endlich komplett auf ein 64bit System migrieren zu können.

mfg.

Sonyfreak

Cyphermaster
2009-02-25, 11:55:06
Ich wüßte auch ehrlichgesagt nicht, wozu ein Privatanwender unbedingt ein 64Bit-OS mit dem größeren Adressraum bräuchte. Surfen? Home-Office? Bissl BD/DVD-Gucken über nen HTPC? Da sind eher die ausgereiften und für quasi jede (auch alte bzw. relativ exotische) Hardware verfügbaren Treiber das schlagende Argument. Der XP64-Absatz krankte ja viel daran.

EGG-Beater
2009-02-25, 13:36:20
Ich hab zur Zeit auch ein 32-Bit-XP auf einem PC mit 4 GiB RAM installiert. In meinen Systemeigenschaften werden aber nicht nur 3,25 sondern 3,50 GiB angegeben.

Woran liegt das?

Darunter steht noch Physikalische Adresserweiterung. Die Grafikkarte hat 512 MiB RAM, aber das soll ja laut den Infos hier nicht die Rolle spielen.

Leonidas @ Firefox
2009-02-25, 14:50:57
Wieviel übrig bleibt ist immer reine Glückssache. Bei mir sind es sogar minimal weniger als 3 GB, ich hab nur 2,93 GB, wenn ich 4 GB reinmache.

EGG-Beater
2009-02-25, 14:53:50
Na das muss doch irgendwie technisch erklärbar sein. :O

Coda
2009-02-25, 16:13:29
Es kommt auf die verbaute Hardware an. Wenn viele Treiber ihren eigenen physikalischen PCI-Speicherbereich brauchen, dann kann Windows nichts anderes tun als ihn zuzuordnen.

JFZ
2009-02-25, 16:19:08
Es kommt auf die verbaute Hardware an. Wenn viele Treiber ihren eigenen physikalischen PCI-Speicherbereich brauchen, dann kann Windows nichts anderes tun als ihn zuzuordnen.

Gibt es ein Tool, womit ich einfach/übersichtlich sehen kann, welche meiner verbauten HW wieviel Speicher/Adressraum beansprucht?

Rainman2k
2009-02-25, 16:37:07
Das stimmt so pauschal nicht. Bei Rechnern mit mehr als 4 GiB RAM ist eigentlich immer Vista 64 Bit drauf. Alles andere würde ja auch zu heftigen Kundenprotesten führen, weil das OS nur 4 GiB physikalischen Speicher meldet obwohl z.B. 6 GiB verbaut sind (typischer Core-i7-Rechner). Es ist nur eine Frage der Zeit bis mehr als 4 GiB RAM der Standard geworden sind. Dann werden auch 64-Bit-Betriebssysteme Standard sein.


ich pauschalisiere das mal mit.

habe mir ein notebook gesucht, und bei quasi ALLEN anbietern wurde darauf hingewiesen, das bei dem system nur 32 bit vista dabei ist und deshalb nur 3,2 gb ram von 4 gb genuzt werden.

Wenn man dies aendern möchte, solle man doch den aufpreis fürn 64 bit vista bezahlen.

Selbst Firmen wie Dell schreckten davor nicht zurück.
(bei nachfrage per mail)


Gruss

Gast
2009-02-25, 17:29:16
Gibt es ein Tool, womit ich einfach/übersichtlich sehen kann, welche meiner verbauten HW wieviel Speicher/Adressraum beansprucht?

das tool liegt bereits jedem windows bei und nennt sich gerätemanager.

haifisch1896
2009-02-25, 17:30:33
Hängt diese schwankende Größe des reservierten Speichers pro GPU-Kern eigentlich mit der AGP Aperture Size zusammen?
Mein Board hat nämlich keinen AGP-Port, nur PCIe, aber bietet noch diese Option. Da ist auch 256MB das Maximum.

Crop Circle
2009-02-25, 17:35:59
das tool liegt bereits jedem windows bei und nennt sich gerätemanager.
Und wie sieht man das da?

Gast
2009-02-25, 18:26:50
Und wie sieht man das da?

alle belegten adressbereiche.

Spasstiger
2009-02-25, 19:01:46
alle belegten adressbereiche.
Hehe, das wird mir gerade auch erst bewusst.
Da werden die wildesten Gerüchte in die Welt gesetzt, dass der gesamte Grafikspeicher vom nutzbaren Adressbereich des Prozessors abgeht, dabei kann man dieses Gerücht doch ganz leicht mit einem Blick in den Gerätemanager widerlegen.

Bei mir sind die Grafikkarte und die Soundkarte die größten Adressraumfresser.
Die Grafikkarte genehmigt sich rund 256 MiB, die Soundkarte rund 66 MiB (SB X-Fi Platinum).

Crop Circle
2009-02-25, 19:41:38
alle belegten adressbereiche.
Wo finde ich das?

A.Wesker
2009-02-25, 19:44:28
Wo finde ich das?
unter Ansicht.

Crop Circle
2009-02-25, 19:48:46
unter Ansicht.
Unter "Spalten Auswählen"? Da steht nicht "alle belegten adressbereiche".

Spasstiger
2009-02-25, 20:01:19
Der Gast meint das:

http://www.abload.de/img/addr4s39.png

Unter Vista siehts möglicherweise etwas anders aus.

PatkIllA
2009-02-25, 20:12:06
Unter "Spalten Auswählen"? Da steht nicht "alle belegten adressbereiche".
Ansicht -> "Resources by type". Keine Ahnung wie das in der deutschen Version heißt.

EGG-Beater
2009-02-25, 20:15:36
Wofür könnten die anderen, kleineren Speicherbereiche bei der Grafikkarte stehen?
Der erste füllt mit 0xFFFFFFF Byte ja bereits die 256 MiB aus.
Aber es gibt (bei mir) auch noch zwei Bereiche mit 0xFFFF Byte (64 MiB) bzw. 0x1FFFF Byte (128 MiB).

Gast
2009-02-25, 20:16:35
Weshalb setzt ihr überhaupt noch die 32-Bit-Version von WinXP ein?
...

Weil µsim und spice nicht unter vista laufen (auch nicht unter xp 64)
Genau so wenig wie der usblib-Treiber für meine SandboxX2
Oder mein USB->RS232 Adapter
Oder mein ExpressCard->RS232 Adapter
Oder die Student-Edition von Quartus

Oder einfach deswegen, weil ich es schlicht nicht brauche. Keine meiner Anwendungen profitiert von 64 bit, meine HW auch nicht -> Never change a running system ;)

zgep

Crop Circle
2009-02-25, 20:20:52
Der Gast meint das:

http://www.abload.de/img/addr4s39.png

Unter Vista siehts möglicherweise etwas anders aus.
Ansicht -> "Resources by type". Keine Ahnung wie das in der deutschen Version heißt.
Aber wo steht da jetzt, wieviel Speicher z.B. die Graka belegt?

PatkIllA
2009-02-25, 20:23:04
Aber wo steht da jetzt, wieviel Speicher z.B. die Graka belegt?
Da stehen doch die Speicherbereiche. Einfach voneinander abziehen und schon hast du die Größe. Einige Geräte belegen mehrere Speicherbereiche.

DFFFFFFF - D0000000 = FFFFFFF. Der Speicherbereich ist 0xFFFFFFF = 268435455 Bytes groß.
http://de.wikipedia.org/wiki/Hexadezimalsystem

Spasstiger
2009-02-25, 20:24:53
Aber wo steht da jetzt, wieviel Speicher z.B. die Graka belegt?
In den Einträgen Speicherbereich.

DFFFFFFF - D0000000 = FFFFFFF.
Du musst noch 1 dazuaddieren, weil der Speicherbereich ja auch die beiden Randwerte enthält. Der Speicherbereich DFFFFFFF bis D0000000 umfasst FFFFFFF + 1 = 10000000 Adressen in hexadezimaler Schreibweise. In dezimaler Schreibweise sind es 268435456 Adressen.

Der Speicherbereich ist 0xFFFFFFF = 268435455 Bytes groß.
Die Einheit Bytes kommt allerdings nur daher, dass byteweise adressiert wird. Das ist nicht bei jeder Prozessorarchitektur so.
268435456 Adressen * 1 Byte/Adresse = 268435456 Byte = 262144 KiByte = 256 MiByte.

Coda
2009-02-25, 20:39:05
das tool liegt bereits jedem windows bei und nennt sich gerätemanager.
So ist es.

Das ist nicht bei jeder Prozessorarchitektur so.
Das ist bei jeder Architektur so.

Spasstiger
2009-02-25, 20:43:25
Das ist bei jeder Architektur so.
Im Fall von x86-Architekturen, also von Windows-kompatiblen Architekturen stimmt das natürlich. Aber an der Uni hab ich schon eine 16-Bit-Modellarchitektur kennengelernt, bei der nur wortweise (16 Bit Wortbreite) adressiert wird.

Crop Circle
2009-02-25, 20:45:53
Da stehen doch die Speicherbereiche. Einfach voneinander abziehen und schon hast du die Größe. Einige Geräte belegen mehrere Speicherbereiche.

DFFFFFFF - D0000000 = FFFFFFF. Der Speicherbereich ist 0xFFFFFFF = 268435455 Bytes groß.
http://de.wikipedia.org/wiki/Hexadezimalsystem
Achso. Mit Hexadezimalzahlen hatte ich noch nie zu tun. Aber jetzt weiß ich, dass sie nicht kommutativ sind. :biggrin:

Wenn man unter Arbeitsspeicher alle Speicherbereiche addiert. Ist die Summe dann gleich dem Arbeitsspeicher oder was vom Arbeitsspeicher fehlt?

EGG-Beater
2009-02-25, 21:12:04
Es ist gleich dem Arbeitsspeicher. Die Adressen fangen z.B. bei 00000000 an und hören bei FFFFFFFF auf. Das entspräche dem Bereich von 0 bis 4 GiB.

Eigentlich sieht man das in der "Arbeitsspeicher"-Liste auch ganz gut, wenn man mal von oben nach unten guckt.

Crop Circle
2009-02-25, 21:16:42
Es ist gleich dem Arbeitsspeicher. Die Adressen fangen z.B. bei 00000000 an und hören bei FFFFFFFF auf. Das entspräche dem Bereich von 0 bis 4 GiB.
Aber das würde ja dann bedeuten, dass der gesamte Arbeitsspeicher belegt ist. Nicht nur z.B. 0.5GB von 4GB.

Gast
2009-02-25, 21:18:01
Im Fall von x86-Architekturen, also von Windows-kompatiblen Architekturen stimmt das natürlich. Aber an der Uni hab ich schon eine 16-Bit-Modellarchitektur kennengelernt, bei der nur wortweise (16 Bit Wortbreite) adressiert wird.

es wird trotzdem immer byteweise adressiert, ganz einfach weil ein byte so definiert ist, als kleinste adressierbare einheit.

richtig ist allerdings, dass ein byte nicht zwangsweise 8bit bedeutet.

Gast
2009-02-25, 21:18:41
Wenn man unter Arbeitsspeicher alle Speicherbereiche addiert. Ist die Summe dann gleich dem Arbeitsspeicher oder was vom Arbeitsspeicher fehlt?

das was fehlt

Coda
2009-02-25, 21:32:01
Im Fall von x86-Architekturen, also von Windows-kompatiblen Architekturen stimmt das natürlich. Aber an der Uni hab ich schon eine 16-Bit-Modellarchitektur kennengelernt, bei der nur wortweise (16 Bit Wortbreite) adressiert wird.
Es gibt keine in der Praxis verwendete Architektur bei der das so wäre. Natürlich kann man sich was zusammenschrauben, aber das ist total irrelevant.

Sehr wahrscheinlich schreibt PCI es sogar vor, dass es 8 bit pro Byte und somit Adresse sein müssen.

EGG-Beater
2009-02-25, 21:34:24
Aber das würde ja dann bedeuten, dass der gesamte Arbeitsspeicher belegt ist. Nicht nur z.B. 0.5GB von 4GB.
Na aber schau doch selbst hin. Er wird lückenlos angezeigt, von der ersten bis zur letzten Adresse. Oder ist das bei dir anders?

Ich vermute, dass einfach nicht alle diese Bereiche aus dem Adressraum der Prozesse ausgeblendet werden, wie es z.B. bei der Grafikkarte der Fall ist.

Wirklich wissen tu ich das jetzt aber nicht.

das was fehlt
Dann müsste bei mir "alles" fehlen. Ich seh da keine Lücken.

Gast
2009-02-25, 23:33:49
Da sind auch keine Lücken, die Adressen des physikalischen RAM sind ja auch darunter (unter "Systemplatine").

Coda
2009-02-25, 23:54:58
Ich vermute, dass einfach nicht alle diese Bereiche aus dem Adressraum der Prozesse ausgeblendet werden, wie es z.B. bei der Grafikkarte der Fall ist.
Der Adressraum der Prozesse ist virtuell und wird davon überhaupt nicht beinflusst.

EGG-Beater
2009-02-26, 00:00:30
Stimmt, der beschränkte sich ja garnicht auf den Hauptspeicher. Das hätte mir eigentlich klar sein sollen.

Coda
2009-02-26, 00:02:18
Stimmt, der beschränkte sich ja garnicht auf den Hauptspeicher.
Kannst du näher erläutern was du damit meinst? Ich glaube du verstehst es immer noch nicht.

EGG-Beater
2009-02-26, 00:21:12
Ich meine das:
http://upload.wikimedia.org/wikipedia/commons/7/70/VirtualMem01.png
Quelle (http://en.wikipedia.org/wiki/Virtual_memory)

Also dass der virtuelle Adressraum der Prozesse auch Daten beinhalten kann, die nicht im Hauptspeicher gelagert sind.

=Silence=
2009-02-26, 09:03:16
ho!

hab mal bei mir geschaut, ich hab ganz viele einträge:

http://www.abload.de/img/speicherbereich9800gtxl46j.jpg


was muss ich da nehmen? wenn ich das ausrechnen will geht das nicht, ich kann im windows taschenrechner nicht mit der " 0 " anfangen, erst wenn ich mit einem buchstaben anfange kann ich die "0" eingeben.

bitte um aufklärung :)

Crop Circle
2009-02-26, 09:05:28
Die Nullen kannst du weg lassen. Und alle Speicherbereiche addieren.

=Silence=
2009-02-26, 09:11:52
Die Nullen kannst du weg lassen. Und alle Speicherbereiche addieren.

okay, subtrahieren muss ich also nichts?

Coda
2009-02-26, 09:44:55
Also dass der virtuelle Adressraum der Prozesse auch Daten beinhalten kann, die nicht im Hauptspeicher gelagert sind.
Das ist korrekt, aber es muss nichtmal alles vom virtuellen Adressraum überhaupt abgebildet sein.

Genauer gesagt ist das fast nie so.

Crop Circle
2009-02-26, 10:00:09
okay, subtrahieren muss ich also nichts?
Naja, du musst von allen Speicherbereichen die Differenz zw. Ende und Anfang bilden.

DerRob
2009-02-26, 10:13:24
was muss ich da nehmen? wenn ich das ausrechnen will geht das nicht, ich kann im windows taschenrechner nicht mit der " 0 " anfangen, erst wenn ich mit einem buchstaben anfange kann ich die "0" eingeben.

http://s11b.directupload.net/images/090226/68jnfs46.jpg (http://www.directupload.net)

=Silence=
2009-02-26, 10:21:00
wow danke rob :)

habs soweit verstanden.

lg

€: was? GiB?

Krishty
2009-02-26, 10:29:30
@DerRob: Aber du meintest da oben schon „32 MiB“, oder? ;)

Gruß, Ky

Edit: Ups, zu spät.

DerRob
2009-02-26, 10:31:19
€: was? GiB?
ups, kleiner schreibfehler, sind natürlich auch MiB :redface: