Verschieben von Programmen in den hohen Speicherbereich Verfasst am: 01.11.2009, 13:22
Damit ein Programm im hohen Speicherbereich ausgeführt werden kann, muss es in den größten verfügbaren hohen Speicherblock (UMB) passen.
Um Gerätetreiber oder ein anderes Programm in den hohen Speicherbereich zu verschieben:
Geben Sie an der MS-DOS-Eingabeaufforderung folgenden Befehl ein:
mem /c | more
Notieren Sie die in der Zeile "Größter verfügbarer hoher Speicherblock" (fast am Ende der Anzeige) angegebene Größe.
Suchen Sie im Abschnitt "Konventioneller Speicher" den größten Gerätetreiber oder das größte Programm, der/das in diesen hohen Speicherblock paßt.
Vergewissern Sie sich, dass die Größe des Gerätetreibers oder Programms kleiner oder gleich der Größe des größten verfügbaren hohen Speicherblocks ist.
Beachten Sie, dass bestimmte Einträge im konventionellen Arbeitsspeicher, wie beispielsweise die MS-DOS.SYStemdaten, nicht in den hohen Speicherbereich verschoben werden können. Beachten Sie außerdem, dass die Speicher-Manager HIMEM und EMM386 im hohen Speicherbereich nicht ausgeführt werden können.
Nachdem Sie bestimmt haben, welcher Gerätetreiber oder welches Programm im hohen Speicherbereich ausgeführt werden soll, ändern Sie den Startbefehl dieses Programms, so dass es beim nächsten Neustart Ihres Systems in den hohen Speicherbereich geladen wird.
Bei einem Gerätetreiber bearbeiten Sie die Datei CONFIG.SYS, und ändern Sie den Befehl device für den Treiber in den Befehl devicehigh um. Einzelheiten über das Laden von Gerätetreibern in den hohen Speicherbereich finden Sie im Abschnitt "Ausführen von Gerätetreibern im hohen Speicherbereich" weiter unten in diesem Abschnitt.
Bei einem speicherresidenten Programm fügen Sie am Anfang des Startbefehls für das Programm den Befehl loadhigh hinzu. (Die meisten speicherresidenten Programme werden durch einen Befehl in der Datei AUTOEXEC.BAT gestartet-) Einzelheiten über die Verwendung von loadhigh bei speicherresidenten Programmen finden Sie im Abschnitt "Ausführen von speicherresidenten Programmen im hohen Speicherbereich" weiter unten in diesem Abschnitt.
Speichern Sie die Datei CONFIG.SYS beziehungsweise AUTOEXEC.BAT.
Starten Sie Ihr System neu, indem Sie STRG+ALT+ENIF drücken.
7. Geben Sie an der Eingabeaufforderung folgenden Befehl ein:
mem /c | more
Überzeugen Sie sich davon, dass der Treiber oder das andere Programm im hohen Speicherbereich ausgeführt wird. Wenn das Programm im Abschnitt "Konventioneller Arbeitsspeicher" aufgeführt ist, wird es immer noch im konventionellen Arbeitsspeicher ausgeführt. Der Grund hierfür ist wahrscheinlich, dass das Programm nicht in den größten verfügbaren hohen Speicherblock paßte. (Einige Gerätetreiber und Programme benötigen mehr Arbeitsspeicher, wenn sie geladen sind, als wenn sie ausgeführt werden. Solche Programme passen vielleicht selbst dann nicht in einen hohen Speicherblock, wenn die Programmdatei für dieses Programm kleiner als der größte hohe Speicherblock ist-)
8. Testen Sie das Programm und Ihr System allgemein, um sicherzustellen, dass alles einwandfrei funktioniert. Wenn Ihr System während des Starts oder während der Arbeit mit diesem Programm abstürzt, kann es im hohen Speicherbereich wahrscheinlich nicht erfolgreich ausgeführt werden. (Sollte dies bei einem Gerätetreiber geschehen, lesen Sie "Ausführen von Gerätetreibern im hohen Speicherbereich" weiter unten in diesem Abschnitt. Dort werden mögliche Verfahren zur Behebung dieses Problems genannt.)
Wenn das Programm im hohen Speicherbereich erfolgreich ausgeführt wird, wiederholen Sie das vorstehend beschriebene Verfahren für das nächste Programm oder den nächsten Gerätetreiber, das/der im hohen Speicherbereich ausgeführt werden soll. _________________