Windows7の遅いXPモードを劇的に高速化する方法

Windows-XP-Mode-Windows7-taskbar-preview

Windows7の遅いXPモードを劇的に高速化する方法Windows7のXPモードを長期間使っていると、XPモードの起動時やXPモード上でのアプリケーション操作時に動作が遅いと感じることが多くなってきます。ここでは、そんなXPモードを安価なSSDを使って劇的に高速化する方法を紹介します。

XPモードの仮想ハードディスクファイル(通常15GB程度)以上の容量を持つSSDを準備して、PCに増設することが前提条件となります。近頃は容量32GBのSSDを4千円程度で購入可能ですし、これでXPモード上の各アプリケーションがサクサクと軽快に動作することを考えると、投資する価値は十分にあると思います。なお、当然ながら、母艦のWindows7 OSが既にSSD上に乗っている場合は、チューニング効果が期待できないのでご注意下さい。
(参考 : Amazon – 内蔵型SSDのベストセラー製品一覧

手順は次の3段階に分かれます。順調に進めば、約1時間で完了します。

  1. 肥大化した仮想ハードディスク(.vhdファイル)の容量圧縮
  2. 仮想ハードディスクの結合
  3. 仮想ハードディスクのSSD上への配置

仮想ハードディスク(.vhdファイル)の容量圧縮のみを行いたい場合は、手順1を実行すれば完了です。
手順3に関しては、マイクロソフト社サポート外のチューニング方法であり、失敗するとXPモードが起動できなくなる危険性もあります。実施は自己責任にて。

手順1:肥大化した仮想ハードディスク(.vhdファイル)の容量圧縮

XPモードを長期間利用していると、仮想ハードディスクファイル「Windows XP Mode.vhd」が数十GBに肥大化してきます。まずはこのファイル容量を縮小します。

ちなみに、筆者の環境では、約2年のXPモード利用後、なんと約53GBにまで膨らんでいました。Windows7 XPモードのデフォルトでは、ベースイメージからの差分をファイルに保持するため、時間が経つにつれて次第に.vhdファイルが肥大化して容量が大きくなってしまう模様です。

  • XPモード画面上部の「Ctrl+Alt+Del」をクリックして「シャットダウン」を選択、仮想マシンをシャットダウンする。
    (サスペンドにするだけではだめ、仮想ハードディスクのサイズを変更できない。)
  • 圧縮前の仮想ハードディスクファイル「Windows XP Mode.vhd」の容量を確認する。仮想ハードディスクファイルは、デフォルトでは「C:\Users\=yourname=\AppData\Local\Microsoft\Windows Virtual PC\仮想マシン」配下に配置されている。
  • スタートメニューから「すべてのプログラム」→「Windows Virtual PC」→「Windows Virtual PC」を選択、「Windows XP Mode.vmcx」を右クリックして「設定」を選択する。
    次のような「Windows Virtual PC の設定」画面が起動することを確認する。
  • Windows-XP-Mode-vhd_file_Reduce_size_01

  • ここでメモリの値が「256MB」等に設定されていた場合は、メモリの割当量が少な過ぎる可能性がある。この手順を実行する前にメモリの設定値を「512MB」(デフォルト設定)に増やして、XPモードのパフォーマンスが改善するかどうかを試してみると良い。
  • 「ハードディスク 1」を選択して、「変更」ボタンをクリックする。
  • Windows-XP-Mode-vhd_file_Reduce_size_02

  • 「仮想ハードディスクの圧縮」を選択する。
  • Windows-XP-Mode-vhd_file_Reduce_size_03

  • 「圧縮」ボタンをクリックして、圧縮が始まったことを確認する。
  • Windows-XP-Mode-vhd_file_Reduce_size_04
     
    Windows-XP-Mode-vhd_file_Reduce_size_05

  • 「仮想ハードディスクは正しく圧縮されました。」という表示が出たら完了。
    (筆者の環境では、53GB → 15GBの圧縮に約10分掛かった。)
  • Windows-XP-Mode-vhd_file_Reduce_size_06

  • 圧縮後の仮想ハードディスクファイル「Windows XP Mode.vhd」の容量を確認する。
  • 念のため、ここで一度、仮想マシンが正常に起動できることを確認しておく。
    確認後、再度、仮想マシンをシャットダウンする。

手順2:仮想ハードディスクの結合

HDD上に残るXPモードのベースイメージファイルの影響を受けないように、独立した仮想ハードディスクのイメージファイルを作成します。

  • 手順1と同様に、「Windows XP Mode.vmcx」を右クリックして「設定」を選択する。
  • 「ハードディスク 1」を選択して、「変更」ボタンをクリックする。
  • 「仮想ハードディスクの結合」を選択する。
  • Windows-XP-Mode-vhd_file_Merge_virtual_hard_disk_01

  • 「結合された変更をどこに保存しますか?」と聞かれるので、「新しいファイル」を選択して、「C:\Users\=yourname=\AppData\Local\Microsoft\Windows Virtual PC\仮想マシン\Windows XP Mode-2.vhd」等とファイル名を含めて指定し、「結合」ボタンをクリックする。
  • Windows-XP-Mode-vhd_file_Merge_virtual_hard_disk_02

  • 結合が始まったことを確認する。
  • Windows-XP-Mode-vhd_file_Merge_virtual_hard_disk_03

  • 「仮想ハードディスクは正しく結合されました。」という表示が出たら完了。
    (筆者の環境では、15GBの結合に約20分掛かった。)
  • Windows-XP-Mode-vhd_file_Merge_virtual_hard_disk_04

手順3:仮想ハードディスクのSSD上への配置

最後に、手順2で作成した仮想ハードディスクのイメージファイルをSSD上に配置して、遅いXPモードを劇的に高速化します。

手順3の事前作業として、XPモードの仮想ハードディスクファイル(通常15GB程度)以上の容量を持つSSDを準備して、母艦のWindows7 PCに増設しておいて下さい。

  • XPモード画面上部の「Ctrl+Alt+Del」をクリックして「シャットダウン」を選択、仮想マシンをシャットダウンする。
  • 「C:\Users\=yourname=\AppData\Local\Microsoft\Windows Virtual PC\仮想マシン」フォルダの配下にある「Windows XP Mode-2.vhd」ファイルと「Windows XP Mode.vmc」ファイルの2ファイルをSSD上に移動する。ここで「Windows XP Mode.vmc」ファイルも一緒に移動するのが高速化のための重要ポイント。
    慎重に進めたい方は、移動ではなくコピーでも良い。
  • このタイミングでファイル名を「Windows XP Mode-2.vhd」→「Windows XP Mode.vhd」とリネームして元に戻しておく。
  • スタートメニューから「すべてのプログラム」→「Windows Virtual PC」→「Windows Virtual PC」を選択、「Windows XP Mode.vmcx」を右クリックして「設定」を選択する。
  • 「ハードディスク 1」を選択して、「仮想ハードディスクファイル」の項目に移動した「Windows XP Mode.vhd」ファイルのパスを入力する。SSDのドライブ名やフォルダ名にもよるが、例えば「E:\Windows XP Mode.vhd」等となる。
    入力後、「OK」ボタンをクリックする。
  • Windows-XP-Mode-vhd_file_Moved_to_SSD_01

  • 「C:\Users\=yourname=\Virtual Machines」フォルダの配下にある「Windows XP Mode.vmcx」ファイルをテキストエディタで開いて、「Windows XP Mode.vmc」ファイルのパスを移動先に変更する。
    • 変更前
    • <?xml version="1.0" encoding="UTF-16"?>
      <!-- Microsoft Virtual Machine Description and Registration Settings -->
      <vm_description>
       <ram_size type="string">1,536 MB</ram_size>
       <vmstate type="string">電源切断</vmstate>
       <primary_disk1 type="string">E:\Windows XP Mode.vhd</primary_disk1>
       <secondary_disk1 type="string" />
       <notes type="string" />
       <vmc_path type="string">C:\Users\=yourname=\AppData\Local\Microsoft\Windows Virtual PC\仮想マシン\Windows XP Mode.vmc</vmc_path>
      </vm_description>
      
    • 変更後
    • <?xml version="1.0" encoding="UTF-16"?>
      <!-- Microsoft Virtual Machine Description and Registration Settings -->
      <vm_description>
       <ram_size type="string">1,536 MB</ram_size>
       <vmstate type="string">電源切断</vmstate>
       <primary_disk1 type="string">E:\Windows XP Mode.vhd</primary_disk1>
       <secondary_disk1 type="string" />
       <notes type="string" />
       <vmc_path type="string">E:\Windows XP Mode.vmc</vmc_path>
      </vm_description>
      

仮想マシンの起動

以上で準備は完了です。仮想マシンを起動してみて下さい。今までモッサリと動作していたXPモード上の各アプリケーションが軽快にサクサクと動作することに驚くと思います。

なお、もしここで起動に失敗した場合は、「Windows XP Mode.vmcx」ファイルをもう一度確認して下さい。テキストエディタで更新した内容が書き戻されてしまうケースがあるようです。

関連記事

Silicon-Power SSD T10 32GB ベンチマーク結果
Oracle ORIONの使用方法 (Windowsディスクベンチマーク)
姫野ベンチの使用方法・測定結果一覧 (Windows編)
TrueCrypt CPUベンチマークの使用方法・測定結果一覧

「Windows」カテゴリーの記事一覧

参考になるサイト

Microsoft – Windows XP Mode の構成と使用
Microsoft – Windows 7 の Windows XP Modeでは、対話的な操作全般が遅延する場合がある
Microsoft – XPモードからファイルサーバーにファイルをコピーする時にパフォーマンス低下