コグノスケ


link 未来から過去へ表示(*)  link 過去から未来へ表示

link もっと前
2017年5月3日 >>> 2017年5月3日
link もっと後

2017年5月3日

Windows 10とVirtualBox

目次: Windows

いつの間にかWindows 10でVirtualBoxが動かなくなっていました。症状としては、仮想マシンを起動した瞬間にSYSTEM_SERVICE_EXCEPTIONというエラーで100% 青画面になって死にます。最新版の5.1.20でも発生します。

他の症状としてはVirtualBox仮想マシンの [設定] - [システム] - [プロセッサ] ページにて「プロセッサー数」を1より多く設定できない、64bit CPUなのに32bit仮想マシンしか選べない、などがあります。

解決方法はググるとわかりますけど、Windows 10のHyper-Vをアンインストールすれば直るそうです。少なくとも私の環境では直りました。

Hyper-Vのアンインストール方法は [コントロールパネル] - [プログラムと機能] - [Windowsの機能の有効化または無効化] からHyper-Vのチェックボックスを外すだけです。おそらくWindowsの再起動が必要になります。

なおHyper-Vも使っていてアンインストールすると困る方もいらっしゃると思いますが、私はHyper-VとVirtualBoxを併存させる方法がわかりませんでした。誰かご存じない?

そもそも昔は動いていた気がするんですけど、何か変わったのかなー??

編集者:すずき(2023/09/24 13:54)

コメント一覧

  • hdkさん(2017/05/06 22:15)
    同時に使うことはできませんねぇ。Hyper-V も VirtualBox も、あるいは VMware 製品や Linux KVM も、CPU の仮想化に関する機能を使うハイパーバイザー部分を持っているので、競合してしまうんですよね。

    bcdedit で起動オプションで切り替える手はあるようですが、再起動は必要ということですね。Linux KVM は、どうやら、VM がひとつも開始していない時は CPU の仮想化に関する機能をオフにしておくという方法により、わざわざアンロードしなくてもいいようにしているっぽいです。
  • すずきさん(2017/05/06 23:22)
    >hdk さん
    なるほど。仮に同時に使えたとしても、どちらかが必ずネストされたハイパーバイザーになってしまうから、ハードのフル機能が使えるはずないし、そんな使い方は保証外でしょうから動かなくても文句は言えないですね。

    Linux KVM はなかなか賢いですね。Linux はゲスト OS として実行されることも多いので、起動時に勝手に仮想化機能を独占してしまうと困ることでもあったんだろうな…。
  • hdkさん(2017/05/06 23:48)
    この手のハイパーバイザー複数同時動作のためにネストした状態にするってことは、ホスト OS として立ち上がったものを後からゲスト OS にしちゃうってことになるので、実は結構トリッキーな話なんです。でも Hyper-V の場合は OS に最初から入っているわけですから、もし Windows が Xen の Dom0 みたいに特別なゲスト OS として動いていて他のハイパーバイザーはあくまでもその中で動くという風にすればありうる話ではあります。

    どうやら Linux KVM も VirtualBox も同じような動きをしていて、どちらも、仮想化の機能を先に何者かが有効にしていたらエラーにするというのと、すべての VM が終了したら無効にする、っていう挙動にすることで、同時に使わなければ OK というのを実現しているみたいです。そういう意味で BSoD ってのは興味深いです。Linux のようにエラーにすればいいのに...
  • すずきさん(2017/05/07 01:16)
    >hdk さん
    仮想化支援機能をエミュレーションするとかして、ゲスト OS に仮想化支援機能を見せればネスト自体は不可能じゃ無いと思いますけど、やる意味が無さそうです。

    そもそも VirtualBox や Linux KVM が仮想化支援機能を使う理由は、なるべくエミュレーションする部分を減らして(or ハードに任せて)、OS 上 VM の実行速度を高速化するのが目的なわけですよね?だったら、遅くなるのは論外でしょうし、仮にハードやソフトが頑張って遅くならずにネストする方法ができたとしても、それで何が嬉しいのかわかりませんし。

    うーん、以前は BSoD にならずに動いていた気がするんですけど、もう確かめようが無いなあ。
  • hdkさん(2017/05/07 16:05)
    いやー、ネスト自体は Linux KVM や VMware 製品は対応していますし、ネスト関連のハードウェアの支援も初期の頃よりは増えているようです。

    問題は、ホスト OS と呼ばれているものは普通ハイパーバイザーと同じところにいて、ハイパーバイザーにとってのゲスト OS ではないんです。そのような構成では複数のハイパーバイザーを持ち込んでも、それぞれが同じレイヤーから CPU を制御することになり、エミュレーションのしようがありません。エミュレーションしたければ、どれかのハイパーバイザーがホスト OS を仮想マシンの中に持ち込むことで、他のハイパーバイザーの下に入り込めるようにする必要がありますが、BitVisor を見ればファームウェア関連など結構細かいところでトラブルになりやすいので、普通はしないと思います。
  • すずきさん(2017/05/08 22:55)
    >hdk さん
    あー、そうか。やっと言っている意味がわかりました。。。
    Hyper-V と VirtualBox を動かそうとすることは、ホスト OS は 1つで、その上に 2つのハイパーバイザーを同居させることに等しくて、1つ目のハイパーバイザーが邪魔で 2つ目のハイパーバイザーは動けない。だけど、1つ目のハイパーバイザーをどけようとすると、今度はホスト OS が邪魔で難しいということですね。

    ネスト VM(ゲストをすっ飛ばしてハイパーバイザーと通信する)
    ゲスト OS
    ゲストハイパーバイザー
    VM(ホスト OS すっ飛ばしハイパーバイザーと通信する)
    ホスト OS
    ハイパーバイザー
    HW

    私はこういうのを想像してたんですが、Hyper-V と VirtualBox の同居とは意味が違いますね。しかもこうやって重ねてもあまり意味がなさそう。Docker みたいなコンテナ用途に使えるのかな…。
open/close この記事にコメントする



link もっと前
2017年5月3日 >>> 2017年5月3日
link もっと後

管理用メニュー

link 記事を新規作成

<2017>
<<<05>>>
-123456
78910111213
14151617181920
21222324252627
28293031---

最近のコメント5件

  • link 20年6月19日
    すずきさん (04/06 22:54)
    「ディレクトリを予め作成しておけば良いです...」
  • link 20年6月19日
    斎藤さん (04/06 16:25)
    「「Preferencesというメニューか...」
  • link 21年3月13日
    すずきさん (03/05 15:13)
    「あー、このプログラムがまずいんですね。ご...」
  • link 21年3月13日
    emkさん (03/05 12:44)
    「キャストでvolatileを外してアクセ...」
  • link 24年1月24日
    すずきさん (02/19 18:37)
    「簡単にできる方法はPowerShellの...」

最近の記事3件

  • link 20年2月22日
    すずき (04/17 02:22)
    「[Zephyr - まとめリンク] 目次: Zephyr導入、ブート周りHello! Zephyr OS!!Hello! Ze...」
  • link 24年4月16日
    すずき (04/17 02:05)
    「[Zephyr SDKのhosttoolsは移動してはいけない、その2 - インストール時のバイナリ書き換え] 目次: Zep...」
  • link 24年4月15日
    すずき (04/17 01:47)
    「[Zephyr SDKのhosttoolsは移動してはいけない、その1 - 移動させると動かなくなる] 目次: ZephyrZ...」
link もっとみる

こんてんつ

open/close wiki
open/close Linux JM
open/close Java API

過去の日記

open/close 2002年
open/close 2003年
open/close 2004年
open/close 2005年
open/close 2006年
open/close 2007年
open/close 2008年
open/close 2009年
open/close 2010年
open/close 2011年
open/close 2012年
open/close 2013年
open/close 2014年
open/close 2015年
open/close 2016年
open/close 2017年
open/close 2018年
open/close 2019年
open/close 2020年
open/close 2021年
open/close 2022年
open/close 2023年
open/close 2024年
open/close 過去日記について

その他の情報

open/close アクセス統計
open/close サーバ一覧
open/close サイトの情報

合計:  counter total
本日:  counter today

link About www.katsuster.net
RDFファイル RSS 1.0

最終更新: 04/17 02:22