気の向くままに辿るIT/ICT
webzoit.netウェブサイトホームページ
システム開発

VirtualBoxでMS-DOSを起動

ウェブ造ホーム前へ次へ
サイト内検索
カスタム検索
ゲストOSとしてMS-DOS起動ディスク作成と起動【VirtualBox】

仮想マシンで動くOS

VirtualBoxでMS-DOSを起動

[仮想化ソフトウェア]

VirtualBox 4.2.12 r84980

[ホストOS]

Windows Vista Home Premium
SP2/Service Pack 2
x86/32ビット

[ホスト環境]

CPU:Intel Core2 4300@1.80GHz
CPU Architecture : x86/32bit
仮想化支援機能(Intel VT)なし
RAM:1GB

[ゲストOS]

MS-DOS

[その他ソフトウェア]

BD/CD/DVDライティングソフト
仮想FDD
仮想CD/DVDドライブ

 ここでは、仮想マシンを作成・実行可能な仮想化ソフトウェアの1つであるVirtualBoxゲストOSとしてMS-DOSを起動する方法について記します。

 MS-DOSは、当初、FDを6枚使って、Windowsと世代交代した後は、Windows 3.0/3.1(3.x系)では合わせてフロッピー9枚を使ってインストールでき、また、Windows 95/98(9系)と後にCDブート可能となった当初の98SEにおいては、インストール用起動ディスクとして、また、レスキューディスクとして使用されています。

 MS-DOSの起動はとても簡単です。

想定

 ここでは、仮想マシンを使ってMS-DOS起動ディスクが正しく動作するか否かのチェックと構成ファイルごとの用途を確認しながら101キーボードや106キーボード、英語環境や日本語環境などMS-DOSの挙動の検証を想定するものとします。

 つまり、仮想マシンを作成し、仮想ハードディスクにインストールするのではなく、予めフロッピーディスク(イメージ)内に入れておいたMS-DOSを起動するものとします。

内蔵フロッピードライブがない場合

 内蔵FDDがないPCが主流ですが、これがなくてもUSB接続FDD、それよりも、仮想FDDが便利、フリーソフトウェアの中では、その名もVirtual Floppy Drive(VFD)が広く使われているようです。

MS-DOSがない場合

VirtualBox仮想マシン上の起動ディスク用FreeDOS
FreeDOS

 話は前後するものの、MS-DOSやPC DOSは有償OSであり、既に販売終了となっている為、入手できませんが、MS-DOS販売・サポート終了後の代替を意図したオープンソースのFreeDOSを利用することもできますし、他にも互換性を考慮したDR DOS/DR-DOS、更にこれらの派生などを利用することもできるようです。

MS-DOS起動ディスク(イメージ)の入手方法

 MS-DOSをVirtualBoxなどの仮想マシンでゲストOSとして起動する為には、MS-DOSを入手する必要があり、MS-DOSが入ったフロッピーディスク(イメージ)が手許にあれば、それを使い、なければ、下記のような方法で作成、入手します。

MS-DOS
MS-DOS
  • 過去に仮想マシンにWindows 3.x系や9系、MEを入れたことがあれば、その時のフロッピーディスクか、そのディスクイメージ
  • FATでフォーマットしてWindows 9x系/MEの何れかのHDD、または、インストールCDなどから必要なファイルをコピー
  • Windows 95/98/98SE/MEインストールマシンでフロッピーディスクを挿入したAドライブ(FDD)を右クリックして表示されるメニューから[フォーマット(M)]を選択、ポップアップメニューの[起動専用(O)]をチェックし、[スタート(S)]または[開始(S)]ボタンをクリック
  • Windows 95/98/98SE/MEインストールマシンでAドライブ(FDD)にフロッピーディスクを挿入して[スタート]>[設定(S)][コントロールパネル(C)]>[アプリケーションの追加と削除]>[起動ディスク]タブ>[起動ディスクの作成(C)]ボタンをクリック
  • Windows XP/Vistaインストールマシンでフロッピーディスクを挿入したAドライブ(FDD)を右クリック、または、[Shift]+[F10]で表示されるメニューから[フォーマット(A)]を選択、ポップアップメニューの[MS-DOSの起動ディスクを作成する(M)]オプションをチェックして[開始(S)]ボタンをクリック
  • ...etc.

ゲストOSとしてMS-DOSを起動

 VirtualBoxでMS-DOSを起動する場合は、下記の要領で行います。

  1. MS-DOS用に仮想マシンを作成
  1. 仮想マシンを選択した状態で[設定]をクリック、[設定]ダイアログを表示させる
  2. [システム]タブで起動順を『フロッピー』のみ選択、または、優先させる(されていることを確認)
  3. [ストレージ]タブで[コントローラ:Floppy]にMS-DOSの入ったフロッピーディスク(イメージ)をセット
  4. 各種タブの設定を確認・必要に応じて適宜設定
  5. [OK]で設定ダイアログボックスを閉じる
  1. MS-DOS用に仮想マシンを選択した状態で[起動(T)]をクリック
  1. MS-DOSが起動し、プロンプトが表示される
    A:\ >

 尚、Windows XP/Vistaで作成できる[MS-DOSの起動ディスク]は、Windows 9x系/ME、時にXPのインストール時には選択しないのが賢明です(が、FATフォーマットは有効なのでファイルを総入れ替えすれば、これらのインストール用にも使えます)。

 これは、MS-DOSのファイル名であるCOMMAND.COMのバージョンと起動ディスク内のファイルは、基本的に互いに対応するバージョンを利用する必要があり、XP/Vistaでは、98/98SE/MEなどでインストール前に利用していたFDISK.EXEやFORMAT.COMを直接使わないこともあってファイル自体がHDDやインストールCDなどには(、たぶん)存在せず、実質XP/VistaのCOMMAND.COMとマッチするFDISK.EXEやFORMAT.COMが存在しないことに起因するものと推測します。

 Windows 3.x系では、MS-DOSのインストール後にWindows 3.xをインストールし、MS-DOS上でWindows 3.xを動かす仕組み、Windows 95からは、MS-DOS利用者の移行促進の為、内部的に残したMS-DOSを多数の外部アプリが利用していた関係でFAT32上に実装されるようになった95 OSR2/98/98SE/MEに至るまでサポートすることになり、2000/XPになってからは、COMMAND.COMの後継としてCMD.EXEをのせたものの、併存しているという経緯があるようです。

 つまり、営利追求企業の発想の1つとしてサポートを切ることにより、限りなく全ての人に、より多くの人々に次世代モデルに移行してほしいという狙いがあり、MS-DOSもそのターゲットに十分に成り得るということもありますし、他方、MS-DOSも既にサポートが終了したWindows 3.x系/9系/ME/NTと同じOSであり、そう考えるとMS-DOSだけ継続サポートしている方がむしろイレギュラーであるという発想もあり、何れにしても切りたくてウズウズしているのは、間違いないでしょう。

 まさに9系やMEとはファイルシステムからしてアーキテクチャを異にするXP/Vistaに移行したタイミングというのは、そうした企業心理からすればMS-DOSのサポートをやめる絶好のタイミングでもあったはずです。

 が、ここからはあくまで仮説ですが。。。抵抗の大きさを懸念した結果としての見掛け上なのか、BIOSアップデート時の起動など他の用途に残す方が都合が良かったのか、これら両方なのか、MS-DOSのサポート自体は継続しているものの、XPではFDISK.EXE/FORMAT.COM使わないんだし、他から持ってきても使えないようにCOMMAND.COMのバージョンや中身を変更したり・・・システム的には不要なはずのCOMMAND.COMに敢えてなんらかの手間をかけることによって他(レガシーOS)からFDISK.EXE/FORMAT.COMを持ってきても使えないようになっているのではないか。。。あくまで仮説ですが、そんなところじゃないでしょうか。

 それを後押しするようにコマンドプロンプト、WSHやPowerShellの投入、Windows PE/Preinstallation Environmentと機能強化された選択肢も増えましたしね。

 そうした企業心理もMS社のOSの変遷とサポート期間という視点からすれば妥当なのかもしれません。

 一方で一消費者心理としては、仮想マシンが一般に利用できるようになった時期、レガシーOSがまだまだ世に残っている現実、世界的な景気動向による消費者心理の冷え込み、それなりに需要はあるが儲かるほどでもない、サポートは既に切れている等々の状況からしてMS-DOSをオープンソース化するのはちょっと違う気がしますが、MS-DOSやレガシーOSのファイルやディスクイメージを無料公開してほしい、なんて思ったりはしますね。

 でも、そうした思いにこたえるべく開発され、それ以上の機能を備えたオープンソースのFreeDOSがあるからいいですよね。

MS-DOS構成のバリエーション

 英語版+英語101キーボード、英語版+日本語106キーボード、日本語版+日本語106キーボードなどホストOSに気兼ねすることなく、手軽にいろいろ試してみることができるのも仮想マシンのよいところですよね。

 MS-DOSディスク構成ファイルサンプル 参照。

 それぞれに応じて以下のCONFIG.SYSやAUTOEXEC.BATの内容を調整すれば、それなりに使えるでしょう。

MS-DOSの起動とCDドライブ認識に成功したCONFIG.SYSの一例

DEVICE=HIMEM.SYS /TESTMEM:OFF
DEVICEHIGH=BILING.SYS
DEVICEHIGH=JFONT.SYS /MSG=OFF
DEVICEHIGH=JDISP.SYS /HS=LC
DEVICEHIGH=JKEYB.SYS /106 /JKEYBRD.SYS
DEVICEHIGH=OAKCDROM.SYS /D:CD001
LASTDRIVE=Z

MS-DOSの起動とCDドライブ認識に成功したAUTOEXEC.BATの一例

@ECHO OFF
LH MSCDEX.EXE /D:CD001 /L:P

 /D:スイッチの値、この例では CD001 は何でもOKですが、AUTOEXEC.BATのMSCDEX.EXEとCONFIG.SYSのCD-ROMドライバ(OAKCDROM.SYS)の/D:スイッチの値は同じ値にしなければいけません。

 /L:スイッチの値、この例では P は、インストールCD(、またはディスクイメージ)の入った(仮想)CD-ROMドライブを指し、使っているドライブレターと違うとか、他のドライブレターが好きとか、既存のドライブとバッティングするとか、LASTDRIVEが未指定、または、Pより前までしか指定していない場合などには環境に応じて書き換える必要があります。

 DEVICEとDEVICEHIGHどちらを選択するかは、チューニングの範疇、JKEYB.SYSのオプションは、どちらもなくても利用できる場合もあります。

 例えば、CD-ROMドライブの読み込みが不要ならMSCDEX.EXEとOAKCDROM.SYSは不要なのでディスクから削除すると共に、この場合、AUTOEXEC.BAT自体不要となるので削除、CONFIG.SYSから当該行を削除するか、[rem]または[REM]としてコメントアウト、更にドライブ指定をする行もなくなるのでLASTDRIVEの行も削除またはコメントアウトします。

 尚、Windowsでは、ファイルエクスプローラの[表示]や[ツール]メニューの[設定]や[フォルダオプション]から[表示]タブを選択し、[全てのファイルを表示する]にチェック、[保護されたオペレーティングシステムのファイルを表示しない(推奨)]のチェックを外して[適用][OK]とすること、しないとAUTOEXEC.BATやCONFIG.SYS、IO.SYS、MSDOS.SYS等々のファイルが表示されません。

ウェブ造ホーム前へ次へ