"We are back" « oc.at

Was verbirgt sich hinter dem künstlichen 4GB Limit bei Win32?

mr.nice. 26.08.2009 - 14:32 3022 26 Thread rating
Posts

mr.nice.

differential image maker
Avatar
Registered: Jun 2004
Location: Wien
Posts: 6552
Für alle die Interesse an Mysterien, Windows und seiner Speicherverwaltung haben, bzw. an einem 8GB RAM 32Bit Vista basteln wollen, ist das ein absoluter must read: http://www.geoffchappell.com/viewer....htm&tw=416

Wie dem ein oder anderen bereits aufgefallen sein könnte, habe ich schon paarmal darauf aufmerksam gemacht, dass Windows Server 2008 in der 32Bit Version weitaus mehr RAM unterstützt als Windows Vista 32Bit, obwohl die überwiegende Mehrheit an ausführbaren Dateien und DLL's ident ist.

Der Grund dafür ist nicht, wie oft behauptet, eine physikalische Limitierung auf 4GB durch den 32-Bit Adressraum, denn bereits seit dem Pentium Pro unterstützt Intel sogenannte PAE (Physical Adress Extension) Technologie die ihren Einzug in die Softwarewelt bereits mit Windows NT feierte. Auch Windows 3.x konnte trotz 16-Bit Kernel mehr RAM adressieren als es eigentlich möglich gewesen wäre, es wäre also nicht das erste Mal gewesen, dass man sich eines Hacks bedient hätte.

Vielmehr handelt es sich um eine von Microsoft dem Kunden gegenüber verschwiegene Limitierung an mehreren Stellen im Betriebssystem, um ihn angeblich vor nicht mit PAE kompatiblen Treibern zu schützen. Das aber paradoxerweise für die Data Execution Prevention sowieso aktiviert sein muss.

Sie streuten mit dem Service Pack 1 von Windows Vista zusätzlich Salz in diese Wunde, indem unter Systemeigenschaften die Gesamtmenge des installierten Arbeitsspeichers zwar angezeigt wird, aber nicht tatsächlich von einer Applikation verwendet werden kann. Ein Blick in den Task Manager auf den verfügbaren physikalischen Speicher bestätigt dies.

Ich bin jetzt kein Feind von 64-Bit, wahrlich nicht, denn sobald mehrere Applikationen parallel laufen, von denen jede für sich viel Speicher beansprucht ist das the way to go. Aber dort sind wir noch nicht und es ist fraglich ob der normale Endverbraucher je dort ankommen wird.

Mit der Physical Adress Extension und einem nonlinearen Speichermodell könnten einzelne Applikationen sehr einfach mehr als 2GB RAM für sich beanspruchen und das seit den 90er Jahren, fast ohne Programmieraufwand und mit bestehender Soft- und Hardware. Das wollte ich einfach mal gesagt haben.

Korrektur: Laut Artikel können einzelne Prozesse in 32Bit Windows bis zu 3GB RAM zugewiesen bekommen, daher mehr als 2GB RAM und nicht mehr als 4GB.

userohnenamen

leider kein name
Avatar
Registered: Feb 2004
Location: -
Posts: 15864
und was bringts?
nix, stillstand statt fortschritt (is jetzt vielleicht n bissl hart ausgedrückt aber ich sehs eigentlich so)

master_burn

Legend
Loading . . 40% . . . 50%
Avatar
Registered: Jul 2001
Location: near Quasi
Posts: 2479
das war mir nicht bewusst.. aber spätestens seit xp 64 wär klar gewesen warum sie es tun - mehr verkaufzahlen bei der x64 variante .. wenn damals bis 8GB Ram auf 32 bit möglich gewesen wären, hätte wol bis auf ein paar enthusiasten und ein paar grfiker - die meist sowieso macs benützen - niemand gekauft

t3mp

I Love Gasoline
Avatar
Registered: Mar 2003
Location: upstairs
Posts: 6287
tztz, man kann doch nicht ein Betriebssystem auf den Markt bringen für das es auf Jahrzehnte keinen Aufrüstbedarf gibt. Es liegt natürlich in MS' Interesse, sich Asse im Ärmel zu behalten, genauso wie das auch Apple macht (künstliche Limitierung des MBP SATA-Controllers auf 1.5 Gbps), um sich bei der nächsten Iteration eines Produkts nicht in Argumentationsnotstand zu bringen...

Zitat von mr.nice.
Ich bin jetzt kein Feind von 64-Bit, wahrlich nicht, denn sobald mehrere Applikationen parallel laufen, von denen jede für sich viel Speicher beansprucht ist das the way to go. Aber dort sind wir noch nicht und es ist fraglich ob der normale Endverbraucher je dort ankommen wird.
Version 4 vom Feuerfuchs kommt bestimmt... soll heißen, das sollte außer Frage stehen wenn man sich vergleichbare Aussagen in der Vergangenheit anschaut mit denen sich gewisse Leute verbrannt haben.

Zitat von userohnenamen
und was bringts?
nix, stillstand statt fortschritt (is jetzt vielleicht n bissl hart ausgedrückt aber ich sehs eigentlich so)
Den Sinn deiner Aussage versteh ich nicht ganz...
Bearbeitet von t3mp am 26.08.2009, 14:59

mr.nice.

differential image maker
Avatar
Registered: Jun 2004
Location: Wien
Posts: 6552
Zitat von userohnenamen
und was bringts?
nix, stillstand statt fortschritt (is jetzt vielleicht n bissl hart ausgedrückt aber ich sehs eigentlich so)

Es hätte, um nur ein paar Beispiele zu bringen, für Gothic III und Stalker viel gebracht. Ich bin einfach verärgert darüber, dass das Betriebsystem selbst in der Ultimate Version sagt "du brauchst das nicht", obwohl es das OS wie auch die Hardware eigentlich out of the box könnten.

userohnenamen

leider kein name
Avatar
Registered: Feb 2004
Location: -
Posts: 15864
Zitat von mr.nice.
Es hätte, um nur ein paar Beispiele zu bringen, für Gothic III und Stalker viel gebracht. Ich bin einfach verärgert darüber, dass das Betriebsystem selbst in der Ultimate Version sagt "du brauchst das nicht", obwohl es das OS wie auch die Hardware eigentlich out of the box könnten.

aber du hast ja selbst geschrieben das microsoft es rausgenommen hat aufgrund möglicher auftretender probleme
das geschrei möcht ich sehen wenns dann reihenweise irgendwie probleme gegeben hätte mit 32bit vistas oder xps in verbindung mit systemen wo 4gb drinnenstecken

edit @temp und skar: ich versteh die aufregung nicht das man sich über das aufregen kann das MS sagt "wir wollen nur was stabiles und 100% überall funktionierendes ausliefer" (ja is jetzt ned ganz so super in verbindung mit ms, aber volle 4gb und mehr als standard bei 32bit systemen hat was experimentelles auf sämtlichen systemen gesehen)
und wenn das ganze doch mit 32bit ermöglicht worden wäre, gäbe es in 3 jahren noch keinen driftigen grund auch auf desktop systemen auf 64bit zu wechseln, der schritt gehört aber irgendwann gemacht.deswegen finde ich das ganze verhalten richtig
Bearbeitet von userohnenamen am 26.08.2009, 15:28

sk/\r

i never asked for this
Avatar
Registered: Dec 2002
Location: oö
Posts: 11026
Zitat von t3mp
Den Sinn deiner Aussage versteh ich nicht ganz...

ich auch nicht. ist das jetzt pro oder contra gemeint gegenüber der limitierung?

Indigo

raub_UrhG_vergewaltiger
Avatar
Registered: Mar 2001
Location: gigritzpotschn
Posts: 6694
damit PAE genutzt werden kann muss das GESAMTE system PAE ready sein, d.h. alle treiber, die anwendungen müssen mit den zugehörigen switches kompiliert sein usw usf - und das funktoniert halt auf homeuser/workstation ebene numal nur unzureichend oder garnicht. ich verstehs deswegen warum sie's abgedreht haben - man muss dafür ja auch support leisten...

btw: das 2GB limit pro anwendung besteht afaik ja trotzdem, von dem her bringts dir auf anwendungsebene ja erstmal nix...

t3mp

I Love Gasoline
Avatar
Registered: Mar 2003
Location: upstairs
Posts: 6287
Zitat von userohnenamen
edit @temp und skar: ich versteh die aufregung nicht das man sich über das aufregen kann das MS sagt "wir wollen nur was stabiles und 100% überall funktionierendes ausliefer" (ja is jetzt ned ganz so super in verbindung mit ms, aber volle 4gb und mehr als standard bei 32bit systemen hat was experimentelles auf sämtlichen systemen gesehen)
und wenn das ganze doch mit 32bit ermöglicht worden wäre, gäbe es in 3 jahren noch keinen driftigen grund auch auf desktop systemen auf 64bit zu wechseln, der schritt gehört aber irgendwann gemacht.deswegen finde ich das ganze verhalten richtig
Moment, wir sprechen hier aber schon immer noch von Vista, oder? :D

Mit stabilen Treibern hat das sicherlich nichts zu tun, mehr Probleme als die es eh schon gegeben hat beim Wechsel auf Vista hätte es auch nicht gegeben.

Und wenn ich einmal kurz boshaft sein darf: PAE ist im Linux-Kernel überhaupt nichts Experimentelles und trotzdem gibt's dort wohl das momentan größte native 64 Bit userland auf dem Markt. Hat die Entwicklung scheinbar nicht behindert. :p

Hansmaulwurf

u wot m8?
Avatar
Registered: Apr 2005
Location: VBG
Posts: 5639
Ok, danke für die Aufklärung.
Und jetzt die Frage die ich mir schon ein paar Mal gestellt hab:
Warum können 32Bit Treiber nicht "einfach" auf 64 Bit transferiert werden ?

@UoN:
Nicht nur das Win die Nase vorn hat, sondern auch den Löwenanteil an "unbedarften" Usern ;)
Bearbeitet von Hansmaulwurf am 26.08.2009, 15:42

userohnenamen

leider kein name
Avatar
Registered: Feb 2004
Location: -
Posts: 15864
@t3mp: indigu hats schön gesagt zudem ich ned fähig bin
und auch wenn PAE in Linux nix besonderes ist, kann es genau so zu problemen kommen wie es in windows zu problem kommen kann
und das is dann doch noch ein unterschied obs diese probleme dann in windows oder linux gibt (auf die breite masse eben gesehen, da hat windows einfach die nase vorne, ob dus sehen willst oder nicht ;))

Neo-=IuE=-

Here to stay
Registered: Jun 2002
Location: Berndorf, NÖ
Posts: 3232
auch muss man sagen, dass leute in der linux gemeinde beim umstieg auf 64-bit keine probleme haben, weil sie ja (zumindest größtenteils) wissen was sie tun und in vollem bewusstseni ein 64-bit system einsetzen und auch wissen welche probleme/sachen damit einhergehen

ein 0815 windows-user tut das aber nicht und bleibt deshalb eher bei 32-bit und daher bei dem problem PAE, welches wie schon erwähnt wurde probleme verursachen könnte

t3mp

I Love Gasoline
Avatar
Registered: Mar 2003
Location: upstairs
Posts: 6287
Zitat von userohnenamen
@t3mp: indigu hats schön gesagt zudem ich ned fähig bin
und auch wenn PAE in Linux nix besonderes ist, kann es genau so zu problemen kommen wie es in windows zu problem kommen kann
Eben nicht. Die CPU muss es unterstützen und aus, viele Distributionen haben PAE vom Start weg aktiviert wodurch ein 32 Bit System mit 64 GB Speicher ausgerüstet werden kann und eben auch das NX Bit verfügbar ist. Probleme sind mir keine bekannt.

Ich seh übrigens nicht wirklich wieso Probleme hier oder dort weniger schlimm sein sollten oder nicht...

Probmaker

1.0.0.721
Avatar
Registered: Nov 2003
Location: here
Posts: 5035
ists nicht egal?

server 2003 enterprise konnte/kann auch schon weit mehr als nur diese 3,5gb verwalten. zu der zeit wo 32bit systeme noch wirklich aktuell waren (und das liegt schon ein zeiterl zurück), warn die systeme mit 4gb ram eh nicht weit verbreitet.

seit vista sp1 ists imho nicht mehr wert über anderes als 64bit nachzudenken... gut, man sollte halt keine ewig alten drucker oder so haben. bin damit höchstens zufrieden.

mr.nice.

differential image maker
Avatar
Registered: Jun 2004
Location: Wien
Posts: 6552
Ich sag mal so, wenn's für die Server Versionen stabil und schnell genug ist, kann's so schlecht eigentlich nicht sein. Aber anscheinend hat man auf gewisse Treiberentwickler Rücksicht genommen, die sich nicht am Empfehlungen halten. Ich zitiere aus dem von mir im Eingangspost verlinkten Artikel:

"When working with physical memory addresses, device drivers need to do 64-bit arithmetic. This should be natural to them since Microsoft’s development kit for device driver programming has recommended it for well over a decade, including to define a 64-bit PHYSICAL_ADDRESS type for all functions that receive or return physical memory addresses."
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz