ほんの数年前までは8GBのメモリを搭載するWindowsデバイスは、スペックの良い方だと思うユーザーが多かったでしょう。それが、Windows 11の登場でシステム要件が厳しくなり、利用する機能によっては8GBではすぐにリソース不足になってしまうこともあります。特に、クライアントHyper-Vで仮想マシンを動かす場合がそうです。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
「Windows 11」(Pro以上)の「クライアントHyper-V」で、Windows 11をゲストOSとする仮想マシンを動かすには、仮想マシンの構成が以下のドキュメントで示されているシステム要件を満たす必要があります。
すなわち、仮想マシンは64bit UEFI(Unified Extensible Firmware Interface)ハードウェアである「第2世代仮想マシン」として作成し、最低でも2コアの仮想プロセッサ(vCPU)と4GB(4096MB)のメモリを割り当て、「セキュアブート」と「仮想トラステッドプラットフォームモジュール(仮想TPM、vTPM)」を有効にする必要があります(画面1)。
なお、Arm64版Windows 11(Pro以上)でもクライアントHyper-Vを利用できますが、現状、仮想マシンへの仮想TPMの割り当てには対応していません。仮想TPMへの対応は開発段階にあります(Insider Previewビルド25370で対応)。
Windows 11デバイス上でWindows 11ゲストの仮想マシンを動かすには、最低でも8GBのメモリが必要です。なぜなら、ホストとゲストの両方のメモリ要件が「最低4GB」だからです。
実際問題、8GBメモリのWindows 11上で4GBメモリの仮想マシンを開始できるかどうかというと、かなり厳しいと言わざるを得ません。デバイスの起動直後、またアプリを実行せず、利用可能メモリが4GB以上あれば開始できるかもしれません。「Microsoft Edge」で複数タブでWebページを参照していたりなんかすると、4GBのメモリ割り当てを確保できずに、仮想マシンの開始に失敗するでしょう(画面2)。
ゲストOSがインストール済みであれば、メモリ割り当てを少なくしたり、動的メモリをうまく利用したりすることで、より少ないメモリ割り当てで開始することはできます。
例えば、2GBのメモリ割り当てでもWindows 11ゲストは正常起動できます。しかし、仮想マシンにWindows 11を新規インストールする際には、メモリ割り当てを含めて最低システム要件を満たしていなければ続行できません(画面3)。Windows 11のインストールメディアからインストールしなくても、「Souces\Install.wim」をVHDXに変換するという方法もありますが、今回は説明しません。
8GBメモリのWindows 11デバイス上でMicrosoft Edgeなどのアプリを利用中でも、メモリ割り当てを変更することなく、4GBメモリの仮想マシンを開始できる“裏技”があります。この裏技には、「Windows Sysinternals」の「RAMMap」ユーティリティーを使用します。
RAMMapは、Windowsが物理メモリをどのように割り当てているのかを確認できるユーティリティーです。RAMMapの「Empty」メニューの各コマンドを使用すると、実行中のアプリに影響を与えることなく、メモリ状態の変更(「スタンバイ状態」や「変更済み状態」への移行)や未保存メモリのディスクへのフラッシュ、ページの破棄を強制的に実行させることができます。つまり、可能な限り解放可能なメモリ領域を強制解放して、空き領域を作り出せるのです。本来は、物理メモリ状態の「スナップショット」機能(「File」メニューの「Save」で保存)と組み合わせて、アプリの起動や特定の機能の動作が物理メモリにどう影響するのかを計測するために用意されたコマンドです。
では、実際にやってみましょう。RAMMapを管理者として起動し、「Empty」メニューにあるコマンド全てを上から順番に実行していきます。実行前の利用可能メモリは「2.4GB」しかありませんでしたが(画面4)、5つ目のコマンドまで実行すると「4.4GB」まで利用可能メモリを確保できました(画面5)。
しかも、実行中のMicrosoft Edgeは複数タブを開いた状態のままです。Microsoft Edgeは一定時間経過したタブをスリープ状態にでき、メモリを解放できます。アクティブでないタブのメモリが、RAMMapによって空き領域に移動したのでしょう。
4.4GBの利用可能メモリを確保できた後は、4GBメモリの仮想マシンを問題なく開始し、Windows 11ゲストを起動することができました(画面6)。ホスト側はほとんどメモリを使い果たしている状態のためパフォーマンスにかなり影響しますが、OS以外は何も実行していないゲストOS側の方は比較的快適に動作しました。
なお、物理デバイスの利用可能メモリが4.4GBの状態で、4GBメモリの仮想マシンを開始できるのは、クライアントHyper-Vの場合です。「Windows Server Hyper-V」では、動的メモリが有効な複数の仮想マシンでメモリ不足に陥らないように、ホスト側でメモリの割り当てが自動管理されるため、新たな仮想マシンの開始に十分なメモリの空きがあったとしても、予約分が影響して開始できない場合があります。少し古いドキュメントになりますが、詳細については以下のWebページを参照してください。
岩手県花巻市在住。Microsoft MVP 2008 to 2024(Cloud and Datacenter Management)。SIer、IT出版社、中堅企業のシステム管理者を経て、フリーのテクニカルライターに。Microsoft製品、テクノロジーを中心に、IT雑誌、Webサイトへの記事の寄稿、ドキュメント作成、事例取材などを手掛ける。個人ブログは『山市良のえぬなんとかわーるど』。近著は『Windows版Docker&Windowsコンテナーテクノロジ入門』(日経BP社)、『ITプロフェッショナル向けWindowsトラブル解決 コマンド&テクニック集』(日経BP社)。
Copyright © ITmedia, Inc. All Rights Reserved.