OS/2 enthält mit MVDM DOS (besser bekannt als MDOS) bereits ein integriertes DOS („a better DOS than DOS“), das in etwa PC DOS 5.0 entspricht (und auch die Grundlage für WinOS/2 ist, dem in OS/2 integrierten Windows 3.1).
Es gibt aber noch eine andere Möglichkeit, ein DOS unter OS/2 zu starten, die VDM ('Virtual DOS Machine') bzw. das Objekt DOS von Laufwerk A.
DOS von Laufwerk A
„Mit Hilfe von DOS von Laufwerk A können DOS-Versionen (3.0-6.3), die von einer Diskette aus geladen werden können, von einer DOS-Startdiskette gestartet werden.“ So beschreibt OS/2 diese recht nützliche Funktion. Sehr praktisch ist die Möglichkeit, die DOS-Diskette in eine Abbilddatei zu schreiben und DOS dann von dieser aus zu starten.
Auch CP/M-86 konnte ich bereits auf diese Weise von Diskette booten, diese Funktion ist also nicht auf DOS beschränkt. Angeblich ist es sogar vor vielen Jahren gelungen, ein Minix, also ein unixoides Betriebssystem, von Diskette zu booten.
Als DOS können DR DOS, PC DOS oder MS DOS verwendet werden. Ob auch FreeDOS möglich ist, habe ich bisher nicht getestet.
Von einer Partition starten
Es ist sogar möglich, DOS nicht von einer Diskette oder Abbilddatei, sondern von einer Festplatten-Partition aus zu starten, aber damit habe ich mich bisher noch nicht befasst.
Hilfsprogramme für die VDM
OS/2 liefert auch einige DOS-Programme mit, die in einer von Diskette gestarteten DOS-Sitzung sinnvoll sind und (mit Ausnahme von VMDISK) auf die Diskette kopiert werden sollten:
- C:\OS2\MDOS\EXIT_VDM.COM (beendet die DOS-Sitzung)
- C:\OS2\MDOS\EMM386.SYS (Ersatz für EMM386)
- C:\OS2\MDOS\FSACCESS.EXE (gibt Zugriff auf das physische Diskettenlaufwerk)
- C:\OS2\MDOS\FSFILTER.SYS (Zugriff auf das Dateisystem von OS/2)
- C:\OS2\MDOS\HIMEM.SYS (Ersatz für HIMEM.SYS)
- C:\OS2\MDOS\MOUSE.COM (Maus-Unterstützung)
- C:\OS2\MDOS\VMDISK.EXE (DOS-Diskette in eine Abbilddatei schreiben)
Unter CP/M-86 funktionieren diese Programme natürlich nicht.
DOS von Laufwerk A starten
Um ein DOS von Diskette zu starten, ist eine Diskette erforderlich, auf der sich ein startbares DOS (DR DOS, PC DOS, MS DOS …) oder ein startbares CP/M-86 befindet.
Auf diese DOS-Diskette sollten auch die oben genannten DOS-Programme, insbesondere EXIT_VDM.COM, FSACCESS.EXE und FSFILTER.SYS kopiert werden.
Werden XMS, EMS oder Maus benötigt, sollten auch die entsprechenden Treiber kopiert werden.
Die CONFIG.SYS wird um den Eintrag DEVICEHIGH=C:\FSFILTER.SYS (Pfad ggf. anpassen) ergänzt, damit auf das OS/2-Dateisystem zugegriffen werden kann. Das von Diskette gestartete DOS erkennt dabei nur Dateien, deren Dateiname
nicht langer als 8 Buchstaben ist (und bis zu 3 Buchstaben für die Erweiterung).
In den Einstellungen des Objekts DOS von Laufwerk A werden nun im Reiter Sitzung die DOS-Einstellungen aufgerufen. Unter DOS_STARTUP_DRIVE muss a: stehen, damit DOS von diesem Laufwerk startet.
Um die DOS-Sitzung wieder zu beenden, wird der Befehl EXIT_VDM.COM verwendet.
Abbilddatei statt Diskette verwenden
Wer will, kann mit VMDISK A: DOS.IMG eine Abbilddatei der DOS-Diskette in Laufwerk A: erstellen (mit CP/M-86-Disketten funktioniert dies offenbar nicht).
Anschließend wird in DOS_STARTUP_DRIVE die mit VMDISK.EXE erstellte Abbilddatei eingetragen: C:\DOS.IMG, um DOS von der soeben erstellten Abbilddatei zu starten.
Nach dem Start kann der Laufwerksbuchstabe A: und damit der Zugriff auf das physische Laufwerk A: durch den Befehl FSACCESS A: wieder freigegeben werden. Das bedeutet aber, dass jetzt nicht mehr auf den Inhalt der Abbilddatei zugegriffen werden kann. Darum dürfen PATH-Anweisungen usw. nicht auf dieses Laufwerk zeigen.
FSACCESS bietet noch weitere Möglichkeiten, um Laufwerksbuchstaben zuzuordnen, siehe FSACCESS /?.
Netzwerk
Unter diesem DOS steht (anders als im normalen MVDM DOS) kein Netzwerk zur Verfügung. Es kann auch keine Netzwerkkarte über einen Packet Driver angesprochen werden. Damit können keine TCP/IP-Anwendungen verwendet werden.
OS/2 unter VirtualBox
Wer OS/2 unter VirtualBox betreibt, sei vorgewarnt: in diesem Fall läuft DOS von Laufwerk A nach meiner Erfahrung sehr langsam, vermutlich aufgrund der doppelten Virtualisierung.
Alternative
Eine Alternative, um DOS unter OS/2 zu verwenden, stellt Dosbox/2 bzw, Dosbox-X/2 dar. Ich habe das allerdings noch nicht getestet.