DOS unter OS/2

Allgemein

Fehlermeldung "Packed File Corrupt"

Vermutlich handelt es sich um ein selbstentpackendes Programm, daß nicht mit der Einstellung DOS=HIGH zurechtkommt.

  • Entweder in den DOS-Einstellungen DOS_HIGH auf OFF setzen.
  • oder das Program über LOADFIX starten.

Fehlermeldung SYS0008 beim Start eines DOS-Fensters

Der Treiberaufruf von COM.SYS in der CONFIG.SYS hat vermutlich fehlerhafte Parameter.
Evtl. steht der Treiber auch doppelt in der CONFIG.SYS.

Fehlermeldung SYS0005 beim Start eines DOS-Fenster

Die Erweiterten Attribute sind verlorengegangen oder beschädigt. Dies wird meistens durch ein Defragmentieren unter DOS verursacht.
Um den Fehler zu beheben OS/2 von Diskette booten und die entspr. Partition zweimal mit

CHKDSK /F

reparieren.

Systembelastung durch DOS-Programme verringern

Bei DOS-Programme, die unter DesqView Rechenzeit abgeben können, lassen sich diese Funktionen auch unter OS/2 nutzen. Dazu gibt es das Programm OS2SPEED, das in der DOS-Box eine Desqview-Umgebung emuliert. Die Systembelastung sinkt dadurch deutlich.

Bei normalen DOS-Programmen kann man die DOS-Einstellungen

IDLE_SECONDS
IDLE_SENSITIVITY

variieren, sowie

DOS_BACKGROUND_EXECUTION

auf OFF stellen.

DOS-Programme mit Parameterübergabe aus einer Kommandozeile heraus starten

Normalerweise lassen sich DOS-Programme nicht mit speziellen DOS-Einstellungen von einer Kommandozeile heraus starten. Es gibt aber mehrere Programme, die das doch ermöglichen.

  • HSTART
  • STARTD

MDOS

Undelete funktioniert bei DOS-Programmen nicht

Damit Undelete auch bei Dateien funktioniert, die in einer DOS-Sitzung gelöscht wurden, muss die folgende Anweisung auch in der AUTOEXEC.BAT aktiviert werden:

SET DELDIR 

Meldung "0 Byte zusammenhängender EMS-Speicher zur Verfügung"

Was bedeutet die Meldung "0 Byte zusammenhängender EMS-Speicher zur Verfügung", wenn ich MEM aufrufe?

Es handelt sich hierbei um einen Übersetzungsfehler. Im Orginal MEM.EXE lautet die Meldung: "0 Byte fortlaufender Erweiterungsspeicher verfügbar"

Damit ist der nicht über einen Treiber (HIMEM.SYS, EMM386.*, etc) zur Verfügung gestellte Speicher gemeint. Diese Art Speicher kann unter OS/2 nicht zur Verfügung gestellt werden.

Beim Starten eines DOS-Programmes erscheint die Meldung "Falsche DOS-Version"

In den DOS-Einstellungen und der AUTOEXEC.BAT dürfen keinen Pfade auf eine anderes DOS-Systemverzeichnis zeigen. Bei sämtlichen Zugriffen auf das DOS-Verzeichnis muß immer das Verzeichnis \OS2\MDOS benutzt werden, niemals das MS-/NWDOS-Verzeichnis.

DOS-Treiber hochladen

Wenn ein Treiber nur in einer DOS-Session geladen werden soll, dann ist er in den DOS-Einstellungen unter DOS_DEVICE einzutragen.Anschließend vor dem Eintrag SIZE=0 eintragen.

SIZE=0 D:\OS2\MDOS\ANSI.SYS

Mit diesem Eintrag wird der Treiber in den UMB-Bereich geladen, wenn dieser verfügbar ist.

Autocad unter OS/2 starten

Autocad 11 und 12 können mit dem Patch OS2PCH bzw. OS2ACAD unter OS/2 im DOS-Vollbild ausgeführt werden.

Cache Programme unter MDOS verwenden

Ausser dem mitgelieferten DISKCACHE lassen sich keinen weiteren CACHE-Programme unter MDOS ausführen.

Protected-Mode DOS-Programme unter OS/2

OS/2 stellt für DOS Programme eine DPMI Schnittstelle zur Verfügung. Ältere Programme, die nur VCPI oder einen eigenen Standard benutzen, laufen nicht in der DOS-Box. Bei einigen Programmen (Borland-DPMI-Extender) muss der DPMI-Speicher in den DOS-Einstellungen explizit eingeschaltet werden, da die automatische Erkennung nicht funktioniert.

DPMI_DOS_API = Enabled

DPMI-Programme verwenden einen EXE-Header, der dem von OS/2 sehr ähnlich ist. Deshalb werden einige dieser Programme (vor allem solche mit Borland-DPMI-Extender) als OS/2 Programme erkannt. Sollte dies bei ihnen der Fall sein, so starten Sie das betreffende Programm einfach über eine DOS-Batch-Datei.

@ECHO OFF
<Programmname>

VMB

Mit der Funktion Virtual Maschine Boot ist OS/2 in der Lage, auch andere DOS-Versionen als die mitgelieferte auszuführen.

Andere DOS Versionen laden

  • Eine Bootdiskette mit dem Programm SYS.COM erstellen.
  • Die Datei FSFILTER.SYS aus \OS2\MDOS auf die Diskette kopieren und
  • eine CONFIG.SYS und AUTOEXEC.BAT erstellen.

Ergänzen Sie die Beispieldateien um die von ihnen benötigten Befehle.

CONFIG.SYS:

DEVICE=A:\FSFILTER.SYS
DEVICE=C:\OS2\MDOS\HIMEM.SYS
DEVICE=C:\OS2\MDOS\EMM386.SYS
SHELL=C:\MYDOS\COMMAND.COM /P

AUTOEXEC.BAT:

@ECHO OFF
SET COMSPEC=C:\MYDOS\COMMAND.COM
C:\OS2\MDOS\FSACCESS.COM A:

Anschließend kann die Bootdiskette mit dem Objekt "DOS von Laufwerk A:" getestet werden..

Soll das DOS von der Festplatte gestartet werden, kann eine Imagedatei von der Bootdiskette erstellt werden.

VMDISK A: C:\SYSTEM\VDM\MYDOS.IMG

Anschließend dann die Imagedatei in den DOS-Einstellungen des gewünschten DOS-Objektes unter DOS_STARTUP_DRIVE mit vollem Pfadnamen eintragen.

QUEMM unter OS/2 verwenden

QEMM386., 386MAX., EMM386.EXE können unter OS/2 nicht verwendet werden. Auch nicht über eine VMB DOS-Sitzung.

Es können nur die zu OS/2 Warp mitgelieferten HIMEM.SYS und EMM386.SYS verwendet werden.

DOS ohne OS/2

FAT-Partitionen defragmentieren

Lassen sich FAT-Partitionen mit einem DOS-Tool defragmentieren?

Ja, das geht. Dabei sind aber einige Punkte unbedingt zu bedenken.

OS/2 erstellt auf FAT-Partitionen die Datei 'EA DATA. SF' und speichert in dieser die erweiterten Attribute (EAs) von OS/2. (so ist z.B. der lange Name einer Datei diesen EAs enthalten) Geneuer gesagt, dient diese Datei nur als Platzhalter, für die eigentlichen Daten, die von OS/2 anders verwaltet werden. Dabei werden die EAs einer Datei, möglichst nahe bei dieser gespeichert, um die Zugriffszeiten nicht unnötig zu erhöhen.

Verwenden Sie ein DOS-Programm um die Partition zu Defragmentieren, wird die physikalische Nähe zwischen Datei <=> EAs in jedem Fall zerstört. Der Zugriff ist zwar weiter möglich, aber die Zugriffszeiten werden größer. Dies hat Konsequenzen für den Betrieb unter OS/2.

Fazit: Verwenden Sie am besten ein OS/2-Programm zum Defragmentieren.

Beispiele:

  • Gammatech-Utilities
  • Graham- Utilities
  • FATOPT
  • andere

FAT Partitionen mit einem DOS-Tool defragmentieren

Generell kann die Verwendung von DOS-Defragmentierprogrammen nicht empfohlen werden. Soll trotzdem ein DOS-Tool verwendet werden, sind einige Hinweise zu beachten.

  • Unbedingt alle Daten vorher mit einem Programm, das die EAs von OS/2 korrekt behandelt, sichern.
    (OS/2-Backupprogramm, INFOZIP, LH32, ...)
  • Die aktuellste Version ihres Defragmentierungsprogrammes verwenden. Nur so ist gewährleistet, das die Verzeichniseinträge beim Defragmentieren nicht verändert werden und OS/2 dann nicht mehr auf die EAs zugreifen kann.
  • Defragmentieren Sie NUR DOS-Programmpartitionen und Datenpartitionen, die unter OS/2 eher wenig genutzt werden.

Anschließend unbedingt den OS/2 Befehl

CHKDSK /f

für alle defragmentierten Partitionen ausführen.

Achtung: Auf keinen Fall die OS/2-Systempartition defragmentieren. Die EAs werden für die Desktopstruktur sehr intensiv verwendet, dadurch nehmen die Festplattenzugriffe auf diese stark zu. Der mögliche Geschwindigkeitsgewinn durch das defragmentieren wird also durch eine behäbig reagierende WPS erkauft. Ausserdem reagiert die WPS sehr empfindlich auf Fehler, die die Desktopstruktur betreffen.

Es wird immer wieder empfohlen, die Attribute der Datei 'EA DATA. SF' vor dem Defregmentieren zu löschen, und Sie hinterher wieder zu setzen. Dadurch werden die EAs alle zusammen am Anfang der Partition (je nach Optimierungsverfahren auch woanders) zusammengefasst.

Dabei wird auch die logische Verbindung zwischen EAs und Datei zerstört. Insbesondere die Arbeitsoberfläche wird hinterher nicht mehr richtig funktionieren.