Hoher Speicher bei MS DOS
Hoher Speicher bei MS DOS
Hallo zusammen!
Wie setzt sich die Größe des hohen Speichers bei MS DOS zusammen?
Bei meinem Siemens PCD-4H habe ich 60.048 bytes zur verfügung
Bei meinem UM8810PAIO habe ich nur 27.280 bytes zur verfügung
Installiert ist jeweils MS DOS 6.22
Schöne Grüße
Christian
Wie setzt sich die Größe des hohen Speichers bei MS DOS zusammen?
Bei meinem Siemens PCD-4H habe ich 60.048 bytes zur verfügung
Bei meinem UM8810PAIO habe ich nur 27.280 bytes zur verfügung
Installiert ist jeweils MS DOS 6.22
Schöne Grüße
Christian
Re: Hoher Speicher bei MS DOS
Hi
kann das sein das, das unterschiedliche Dos Versionen sind ?
kann das sein das, das unterschiedliche Dos Versionen sind ?
Re: Hoher Speicher bei MS DOS
Ich habe nur eine MS DOS Version und das ist 6.22 und die ist auf beiden Rechnern installiert
Re: Hoher Speicher bei MS DOS
Hoher Speicher ist normalerweise* der Speicherbereich zwischen 640kb und 1MB.
In diesem Speicherbereich werden das Bios des Mainboards und der diversen Karten (Grafikbios, evtl. das Bios eines Laufwerkscontrollers, etc), einige Speicherbereiche zum Datenaustausch mit der Hardware (z.b. A0000-AFFFF für VGA-Grafik, B0000-BFFFF für Text) sowie ggf. der EMS-Speicher eingeblendet.
Zwischen diesen reservierten Bereichen bleibt ab und an etwas Speicher übrig: das ist dann der Hohe Speicher.
Wieviel das ist hängt also von der verbauten Hardware und der Konfiguration ab.
Wenn du z.b. einen Festplattencontroller mit eigenem Bios verwendest: hast du weniger hohen Speicher.
Hast du EMS eingerichtet: Hast du weniger hohen Speicher.
Schreib mal in deine config.sys hinter EMM386 noch "Highscan I=B000-B7FF" dann dürfte es noch etwas mehr werden.
Und schau mal hier: http://www.dosforum.de/viewtopic.php?f=2&t=25
*bei Monochomen Grafikkarten (Hercules z.b.) verkleinert sich der Speicherbereich, dafür hat man mehr konventionellen Speicher (bis 768kb - glaube ich)
###################################################################################################
@Dune die HMA ist wieder was anderes
Das sind knapp 64kb über der 1MB Grenze - das Hängt mit der Addressierung des 8086 zusammen:
Der hat nur 20 Adressleitungen (Pins und Leitungen kosteten halt Geld) um aus den 16Bitregistern des 8086 nun eine 20Bitadresse zu generieren wurde ein Adressregister (Segment) um 4 bit nach Links versetzt und mit dem zweiten Adressregister (Offset) Addiert, dabei kann es zu einem Überlauf kommen:
Bleistift:
Segment: FFFFh
Offset: FFFFh
Adresse=(Segment*16)+Offset
=FFFF0h+FFFFh
=10 FFEF
Die türkise 1 wäre Adressleitung 21 - die gibts beim 8086 nicht und darum greift er auf die Adresse 0 FFEF zu, diese Eigenschaft wurde unter DOS für diverse Zwecke genutzt.
Das führte dann zu einem Problem beim 286er: Der hatte eine 21te Adressleitung, deshalb liefen Dos und einige Programme darauf nicht mehr.
Um die kompatibilität wiederherzustellen wurde dann das A20 Gate eingeführt, womit die 21.te Adressleitung einfach abgeschaltet wird - was dann wieder zum gleichen Verhalten wie beim 8086 führt.
Für die HMA wurde einfach das A20Gate abgeschaltet (und die 21te Adressleitung wieder aktiviert), womit Dos selbst etwas über ein MB Adressieren kann (eben auf die oben berechnete Beispieladresse 10 FFEF zugreifen kann), dort speichert es einen Teil von sich selbst um den wertvollen Dosspeicher (eben die üblichen 640kb) zu schonen.
Aktivieren kann man dieses Verhalten in der config.sys mit der Zeile DOS=HMA.
EDIT: bei Aufruf von Mem erscheint dann auch diese Zeile:
"MS-DOS ist resident im oberen Speicherbereich (High Memory Area)."
In diesem Speicherbereich werden das Bios des Mainboards und der diversen Karten (Grafikbios, evtl. das Bios eines Laufwerkscontrollers, etc), einige Speicherbereiche zum Datenaustausch mit der Hardware (z.b. A0000-AFFFF für VGA-Grafik, B0000-BFFFF für Text) sowie ggf. der EMS-Speicher eingeblendet.
Zwischen diesen reservierten Bereichen bleibt ab und an etwas Speicher übrig: das ist dann der Hohe Speicher.
Wieviel das ist hängt also von der verbauten Hardware und der Konfiguration ab.
Wenn du z.b. einen Festplattencontroller mit eigenem Bios verwendest: hast du weniger hohen Speicher.
Hast du EMS eingerichtet: Hast du weniger hohen Speicher.
Schreib mal in deine config.sys hinter EMM386 noch "Highscan I=B000-B7FF" dann dürfte es noch etwas mehr werden.
Und schau mal hier: http://www.dosforum.de/viewtopic.php?f=2&t=25
*bei Monochomen Grafikkarten (Hercules z.b.) verkleinert sich der Speicherbereich, dafür hat man mehr konventionellen Speicher (bis 768kb - glaube ich)
###################################################################################################
@Dune die HMA ist wieder was anderes

Das sind knapp 64kb über der 1MB Grenze - das Hängt mit der Addressierung des 8086 zusammen:
Der hat nur 20 Adressleitungen (Pins und Leitungen kosteten halt Geld) um aus den 16Bitregistern des 8086 nun eine 20Bitadresse zu generieren wurde ein Adressregister (Segment) um 4 bit nach Links versetzt und mit dem zweiten Adressregister (Offset) Addiert, dabei kann es zu einem Überlauf kommen:
Bleistift:
Segment: FFFFh
Offset: FFFFh
Adresse=(Segment*16)+Offset
=FFFF0h+FFFFh
=10 FFEF
Die türkise 1 wäre Adressleitung 21 - die gibts beim 8086 nicht und darum greift er auf die Adresse 0 FFEF zu, diese Eigenschaft wurde unter DOS für diverse Zwecke genutzt.
Das führte dann zu einem Problem beim 286er: Der hatte eine 21te Adressleitung, deshalb liefen Dos und einige Programme darauf nicht mehr.
Um die kompatibilität wiederherzustellen wurde dann das A20 Gate eingeführt, womit die 21.te Adressleitung einfach abgeschaltet wird - was dann wieder zum gleichen Verhalten wie beim 8086 führt.
Für die HMA wurde einfach das A20Gate abgeschaltet (und die 21te Adressleitung wieder aktiviert), womit Dos selbst etwas über ein MB Adressieren kann (eben auf die oben berechnete Beispieladresse 10 FFEF zugreifen kann), dort speichert es einen Teil von sich selbst um den wertvollen Dosspeicher (eben die üblichen 640kb) zu schonen.
Aktivieren kann man dieses Verhalten in der config.sys mit der Zeile DOS=HMA.
EDIT: bei Aufruf von Mem erscheint dann auch diese Zeile:
"MS-DOS ist resident im oberen Speicherbereich (High Memory Area)."
Zuletzt geändert von Dosenware am Fr 18. Nov 2016, 23:29, insgesamt 9-mal geändert.
Re: Hoher Speicher bei MS DOS
Edit ist fertig 

Re: Hoher Speicher bei MS DOS
Vielen Dank an Dosenware für die Erklärung, mir ist das alles ein wenig zu kompliziert. Bei Hardwarebasteleien bin ich dafür etwas fitter.
Das mit dem Eintrag in der config.sys werde ich morgen mal ausprobieren.
Das mit dem Eintrag in der config.sys werde ich morgen mal ausprobieren.
-
- MemMaker-Benutzer
- Beiträge: 71
- Registriert: Mo 22. Jun 2015, 09:42
- Wohnort: Grasbrunn ( bei München)
Re: Hoher Speicher bei MS DOS
Hier ist schon auffällig wenig frei in der HMA! Welche Zusatzkarten stecken im System? Der Inhalt der 'config.sys' wäre auch interessant.
Re: Hoher Speicher bei MS DOS
Nachdem ich HIGHSCAN I=B000-B7FF hinter emm386.exe geschrieben habe, habe ich genau 60.000 bytes im hohen Speicher frei.
Vielen Dank nochmals an Dosenware für den genialen Tip!
Auf dem Board steckt nur eine Cirrus Logic PCI Grafikkarte.
Desweiteren ist das UM8810 mit folgenden Komponenten ausgestattet: 512 KB cache, 32 MB EDO RAM und ein CF Adapter mit einer Kingston 512 MB CF-Karte. CPUs wechsle ich gerne mal durch. Momentan ist es ein Intel DX2-66.
Aufgebaut ist das UM8810 auf meinem Bastelstand, auf dem ich ein Diskettellaufwerk und Netzgerät installiert habe und demnächst noch ein CD-ROM Laufwerk installieren werde. Das Teil nutze ich zu Testzwecken.
Vielen Dank nochmals an Dosenware für den genialen Tip!
Auf dem Board steckt nur eine Cirrus Logic PCI Grafikkarte.
Desweiteren ist das UM8810 mit folgenden Komponenten ausgestattet: 512 KB cache, 32 MB EDO RAM und ein CF Adapter mit einer Kingston 512 MB CF-Karte. CPUs wechsle ich gerne mal durch. Momentan ist es ein Intel DX2-66.
Aufgebaut ist das UM8810 auf meinem Bastelstand, auf dem ich ein Diskettellaufwerk und Netzgerät installiert habe und demnächst noch ein CD-ROM Laufwerk installieren werde. Das Teil nutze ich zu Testzwecken.
Re: Hoher Speicher bei MS DOS
Hier meine config.sys
Re: Hoher Speicher bei MS DOS
hast da also windows laufen? (anonsten knick die country.sys und den Kram :D )
Re: Hoher Speicher bei MS DOS
Ja, es läuft WfW 3.11 drauf