Seite 1 von 1

VIRTUALADRESSLIMIT in Config.sys

Verfasst: Di 7. Mär 2017, 11:43
von Martin Vieregg
Ich habe mit pmView ein Speicherproblem bei großen Dateien, es kommt die Fehlermeldung, dass nicht genügend Speicher da wäre und man das VIRTUALADDRESSLIMIT hochsetzen soll. Mein Speicherausbau ist 2 GB, unter VIRTUALADRESSLIMIT ist 1536 eingetragen. Was ist der richtige Wert? Unter Windows 2000 auf derselben Hardware funktioniert es. Ich glaube auch nicht, dass ich wirklich so viel Speicher benötige, ich will nur ein 4000x4000 Pixel Bild in ein 8000x8000 Bild per Zwischenablage hineinkopieren, das müßte eigentlich um mindestens Faktor 10 weniger sein als 1,5 GB.

Re: VIRTUALADRESSLIMIT in Config.sys

Verfasst: Di 7. Mär 2017, 12:57
von Andi B.
... dass nicht genügend Speicher da wäre und man das VIRTUALADDRESSLIMIT hochsetzen soll....
Ist das eine Fehlermeldung und Empfehlung von PMView? Für VIRTUALADDRESSLIMIT gibt es keinen allgemein gültigen besten Wert. 1536 war wohl der beste Kompromiss bei eCS und wurde deshalb oft empfohlen. Für gewisse Dinge (z.B. kompilieren von Mozilla) benötigt man mehr. Oft geht aber z.B. 2048 gar nicht mehr (HPFS386?...).

Mit PMView und in die Zwischenablage kopieren hatte ich auch schon des öfteren Probleme. Ich vermute aber PMView will hier Speicher von der WPS oder dem PM haben welche die nicht liefern können (= Vermutung!). In solchen Fällen hängt bei mir die WPS oder startet neu. Das man hier an VIRTUALADDRESSLIMIT drehen sollte, hab ich noch nie gehört.

Re: VIRTUALADRESSLIMIT in Config.sys

Verfasst: Mi 8. Mär 2017, 08:28
von Wolfie
Ich hatte auch schon das Problem, dass ich bei sehr großen Dateien zum Ändern des Virtualadresslimit aufgefordert wurde. Da dies schon ein Weilchen her ist, entsinne ich mich leider nicht mehr genau, bei welchem Programm es war, könnte aber PMView oder ImpOS2 gewesen sein. Ich hatte dann den empfohlenen Wert in der config.sys eingetragen, und danach funktionierte diese spezielle Operation mit dem Programm.

Da dann aber einige andere Programme nicht mehr richtig funktionierten, drehte ich die Sache wieder zurück. Ich habe aber in meiner config.sys noch die Zeile
rem VIRTUALADDRESSLIMIT=3072
gefunden.

Gruß
Wolfgang

Re: VIRTUALADRESSLIMIT in Config.sys

Verfasst: Mi 8. Mär 2017, 09:10
von Martin Vieregg
Die Fehlermeldung (pmView deutsch 3.76) lautet im O-Ton:

Nicht genügend Arbeitsspeicher.
Überprüfen Sie, ob die Unterstützung für Hohen Speicher (High Memory) eingeschaltet ist,
und/oder erhöhen Sie die Einstellung VIRTUALADDRESSLIMIT in der Datei CONFIG.SYS.

Am einfachsten kann man die Fehlermeldung erzeugen, wenn man File - New Image macht und dann eine große Größe an Pixeln eingibt, etwa 17000x17000. Bei 15000x15000 macht er es noch.

Wenn ich 10000x10000 wähle und dann ein zweites Mal ein Bild mit 5000x5000 hineinkopiere (volle Farbtiefe), kommt dieselbe Fehlermeldung. Ich mußte vier Bitmaps mit knapp 5000x5000 zu einem großen zusammenfügen, das gelang mir dann unter OS/2, indem ich vorher auf 256 Farben zurückstellte (ist eine Flurkarte mit Graustufen). Die Rotate-Funktion mußte ich aber dann wieder unter Windows machen, da setzte er schon wieder aus.

Re: VIRTUALADRESSLIMIT in Config.sys

Verfasst: Mi 8. Mär 2017, 11:34
von Andi B.
Interessant. Das kann ich dann auch mal testen. Und nebenbei das above512 script laufen lassen damit ich sehe, welcher Bereich nun ausgeht. Nach deiner Beschreibung, sollte es der HighMem private (oder shared?) sein. Der wird auch von den Mozillen und AOO genutzt wenn aktiviert. Kann also auch abhängig davon sein, was sonst so noch läuft.

Re: VIRTUALADRESSLIMIT in Config.sys

Verfasst: Mi 8. Mär 2017, 17:05
von ak120
Martin Vieregg hat geschrieben: Am einfachsten kann man die Fehlermeldung erzeugen, wenn man File - New Image macht und dann eine große Größe an Pixeln eingibt, etwa 17000x17000. Bei 15000x15000 macht er es noch.

Wenn ich 10000x10000 wähle und dann ein zweites Mal ein Bild mit 5000x5000 hineinkopiere (volle Farbtiefe), kommt dieselbe Fehlermeldung. Ich mußte vier Bitmaps mit knapp 5000x5000 zu einem großen zusammenfügen, das gelang mir dann unter OS/2, indem ich vorher auf 256 Farben zurückstellte (ist eine Flurkarte mit Graustufen). Die Rotate-Funktion mußte ich aber dann wieder unter Windows machen, da setzte er schon wieder aus.
Schon mal versucht zuvor die WPS zu töten, also den entspr. PMSHELL-Prozeß und den ganzen Vorgang dann nur unter dem PM durchzuführen?

Re: VIRTUALADRESSLIMIT in Config.sys

Verfasst: Mo 13. Mär 2017, 18:11
von erdmann
VIRTUALADDRESSLIMIT hat nicht direkt etwas mit dem physikalisch vorhandenen Speicher zu tun sondern mit dem im Gesamten bei einem 32-bit Betriebssystem zur Verfügung stehenden Addressraum von 4 GB.
Von diesen 4 GB braucht das OS für Memory mapped devices / Bildschirmapertur / etc. einen größeren Anteil der eben KEIN Arbeitsspeicher ist aber trotzdem über den Addressbus angesprochen werden muß. Zudem wird noch Arbeitsspeicher gebraucht, der NUR vom OS direkt addressiert werden kann/darf, also niemals von Applikationen addressiert werden kann/soll. Für diese ganzen Dinge sollte aber 1 GB reichen, vielleicht etwas mehr.

Wenn man VIRTUALADDRESSLIMIT=3072 (3GB) setzt, dann bleibt eben 1 GB für das oben Gesagte über.
Bei 2GB Arbeitsspeicher bringt es aber wiederrum nichts, mehr als 2GB für VIRTUALADDRESSLIMIT anzugeben weil ja auch nur höchstens 2 GB Addressraum für den vorhandenen Arbeitspeicher gebraucht werden.

Also:
VIRTUALADDRESSLIMIT=2048
ausprobieren.

Re: VIRTUALADRESSLIMIT in Config.sys

Verfasst: Mo 27. Mär 2017, 11:26
von Martin Vieregg
Danke für die fachkundigen Kommentare. Entscheidend war der Tipp, dass man das VIRTUALADDRESSLIMIT über den Wert des physisch verfügbaren Speichers setzen kann. Mit

VIRTUALADDRESSLIMIT=3072

funktioniert jetzt alles wie gewünscht, 2048 hat noch nicht ausgereicht.