Q

パソコンにWindows XPProfessionalをインストールして使っています。しかし,Windows2000でしか動作しないアプリケーションを使う必要が生じたために,Windows2000 Professionalを追加でインストールしデュアル・ブート構成にしました。すると,それまで使っていたWindowsXPがうまく起動しません。Windows 2000 ProfessionalパソコンにWindows XPを追加インストールすれば自動的にデュアル・ブート構成になるはずなのですが,どうして逆はダメなのでしょう。また,どのようにすればよいのでしょうか?

A

Windows XP/2000/NTといったNT系のOSをインストールすると,起動時にOSの選択画面が表示されるようになります(図1)。ここには,起動できるOSが一覧表示されており,ユーザーはその中から自分の使いたいものを選んで使い分けられます。


図1●NT系OSをインストールするとパソコンの起動にOS選択画面が表示される

 この画面はOSといっしょにインストールされるNTLDRというOSローダーが表示しているメニューです。このプログラムは電源投入後あるいはリセット後のハードウエア・チェックとハードディスクの初期作業を終了した後に実行され,ユーザーの選択に応じてあらかじめ定義してある各OSの起動プログラムに制御を引き渡します。


NTLDRで起動できるOSに制約
 今回の問題が発生する原因は,このNTLDRにいくつかのバージョンがあり,それぞれで制御を引き渡せるWindowsのバージョンに違いがあるためです。そのNTLDRを提供するWindowsより前のバージョンは問題なく起動できますが,その後に登場した新しいWindowsは起動できないことがあります。

 例えば,Windows XPといっしょにインストールされるNTLDRは,WindowsX P だけでなくWin-dows 2000やWindowsN T のいずれも起動できます。しかし,Windows 2000版のNTLDRは,Windows2000とWindows NTについては起動できますが,Windows XPはうまく起動できません。

 既にNT系のOSをインストールしているパソコンに新しいNT系OSをインストールすると,NTLDRのプログラムは既存のファイルを上書きしてしまいます。このため,Windows XPのマシンにWindows2000を追加インストールすると,NTLDRがXP未対応のものに置き換わってしまい,Windows XPのカーネルにうまく制御を引き渡せなくなってしまうのです(図2


図2●Windows XPパソコンにWindows 2000を追加インストールするとNTLDRが古いものに置き換わってしまう
Windows 2000版のNTLDRはWindows XP出荷前に提供されたプログラムのため,Windows XPをうまく起動できない。

ファイルをバックアップしリストア
 つまり,NTLDRのファイルを置き換えられないようにして,WindowsXPでインストールしたバージョンのままにできれば,この問題が発生しないことになります。しかし,Windowsインストール時の置き換えを禁止することはできません。そのため,ファイルをあらかじめバックアップしておき,インストール後に改めて書き戻すといった代替策が必要となります。

 なお,このときに書き戻す対象のファイルはNTLDRだけではありません。ハードウエアの情報を検出してOSに引き渡す「NTDETECT.COM」,起動メニューで日本語を表示する「BOOTFONT.BIN」,もし存在している場合は起動時に非IDEディスクにアクセスするためのドライバである「NTBOOTDD.SYS」についても,NTLDRとそろえる必要があるので,いっしょに保存しておきます。

 これらのファイルは,いずれもCドライブのルート・ディレクトリ上にあります(図3)。ただし,システム属性になっているため,エクスプローラなどで表示させるにはフォルダ・オプションで[すべてのファイルとフォルダを表示する]を設定すると同時に,[保護されたオペレーティングシステムファイルを表示しない]の設定を解除することが必要です。この設定をしてから,追加インストール前に各ファイルを古いOSから読める場所やフロッピ・ディスクなどへバックアップし,インストール後に書き戻せばOKです。


図3●フォルダ・オプションを変更してNTLDRやNTDETECT.COMなどのファイルが表示されるようにしてからバックアップする

NTとのデュアル・ブートでも同様の問題
 なお,今回の現象はWindows NTを追加インストールする場合でも発生します。Windows NT版のNTLDRからはWindows XPだけでなくWindows2000も起動できません。

 さらに,Windows NTのNTLDRには当時のディスク環境に合わせた制約があるため,ほかにもいくつか注意が必要です。例えば,Windows NTの起動領域はディスク先頭から8Gバイト以内のところになければないと,うまく起動できません。

 使用するファイル・システムにも制約があります。Windows NTでは扱えなかったFAT32を使っていると,Windows NTのNTLDRからはまったく読み出すことができません。また,NTFSを使用している場合でも,バージョンの違いを意識しておく必要があります。

 Windows 2000以降ではバージョン5というNTFSを使用していますが,出荷当時のWindows NTではバージョン4を使っています。このため,Windows 2000以降でNTFSにフォーマットしたパソコンに追加インストールする場合は,必ずWindows NTのService Pack 4以上にしたインストール環境を適用する必要があります。この点に注意しないと,最悪の場合はどちらのOSも起動しなくなってしまうという危険があります。

ライセンスにも注意が必要
 技術的には比較的簡単なデュアル・ブートですが,ライセンスには注意が必要です。マイクロソフトの見解では,原則としてブートする各OSごとにライセンスが必要となります。つまり,今回のケースではWindows 2000ProfessionalとWindows XP Professionalのライセンスが1つずつ必要となります。Windows XPを2つインストールする場合でも,Windows XPが2ライセンス必要です。

 ただし,この規定には例外があります。ソフトウエア・アシュアランス(SA)を含むボリューム・ライセンス経由で購入したライセンスについては,1ライセンス当たり同一コンピュータに2つまでのインストールが認められています。従って,今回のケースでも,Windows XP Professionalのライセンスをボリューム・ライセンスの形で取得していれば,ダウングレード権を利用してWindows 2000 Professionalのインストールが可能となり,追加ライセンスは必要ありません。

高橋 基信