nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Development Technologies。

VMware上にXamarinを入れてブルースクリーン嵐でぶっ壊す前に読んでほしい件について

VMware上にWindows10を入れ、そこでVisual Studio Emulator for Androidを使おうとして盛大にはまったのでメモを。

厳密にはXamarinが問題ではなく、Hyper-Vの問題です。
VMware上のWindows10のHyper-Vを有効にする際に、手順を誤ると大変なことになるので気を付けて欲しいです。

ゲストを入れてはVMがぶっ壊れ、入れなおしてもぶっ壊れ、しまいにはホストもぶっ壊れたので、やる人はできれば目を通してほしいという希望の元、書き残したいと思います。
私は丸々2日の時間が消えてなくなりました。。。

前提条件

VMwareは「VMware Workstation Pro 12」を前提としています。
もう少し古いバージョンの場合、ここで非推奨としている方法を利用する必要があるかもしれません。

またここでクラッシュの嵐となったのはホストOSもWindows10の場合です。

Windows8.1では非推奨としている設定を入れても、安定稼働していました。
Windows7は非推奨としている設定を入れて動作確認はしていますが、長期の安定稼働実績はありません。

手順

仮想マシンの設定を開き、CPUの項目を開いてください。

f:id:nuitsjp:20160413172405p:plain

上記の「Intel VT-x/EPT または AMD-V/RVI を仮想化(V)」にチェックを入れてからHyper-Vを有効化してください。
手順はこれだけです。

決っして非推奨設定を実施しないでください。
これで今のところ安定して稼働してはいます。

非推奨設定

VMware 8.1の頃の情報では、以下の手続きをしろという記載がWeb上にあふれています。

  1. VMのフォルダーを開き、「~.vmx」ファイルを開く
  2. hypervisor.cpuid.v0 = "FALSE"を追記する

VMwareの少なくともWorkstation Pro 12では、VM上でHyper-Vを有効化するのに上記の設定は不要でした。
逆に入れるとゲストOSがブルースクリーンがでて落ちまくるので、入れないほうが良いと思います。

以上です。