タイトルは半分ぐらい釣りです。でも、嘘は書いていません。
MacBook Pro (Retina, 13-inch, Late 2013) に Windows 8.1 Pro をインストールしたので - しばやん雑記 ではファームウェアでの仮想化が有効になっていないため、Hyper-V をそのままでは使えないということを書きましたが、ちょっと OS X 側で作業してから Windows に戻ってくると有効になっていました。
これで Hyper-V を動かすために必要な機能が全て有効になったので、Windows の機能の有効化画面から Hyper-V を選択して、インストールすることが出来るようになりました。
とりあえずこれで Hyper-V は使えるようになったわけですが、何で急にファームウェアでの仮想化が有効になったのかを考えました。
といってもほぼ原因は確定していますね。OS X で一度起動して、Windows に切り替えるという手順を踏むと、ファームウェアでの仮想化つまり VT-x が有効になったままになります。そして Windows 側で再起動してしまうと VT-x は無効に戻ってしまいます。
まとめると以下のような感じです。
- Windows では VT-x が無効
- OS X では VT-x が有効
- OS X -> Windows でも有効のまま
- Windows -> Windows では無効になる
いつも通り Apple がファームウェアレベルでブロックしているか、それともバグでこのような挙動になっているかだと思います。
Early 2011 の MacBook Pro では Hyper-V が普通に使えていたので、ファームウェアアップデートでこっそり修正を入れてくるようなことがあるのを祈ります。