Windows 11 24H2/25H2 + VirtualBox 7.2.6でVM起動時にWindowsがブラックスクリーンに陥る問題

Windows 11 24H2/25H2 + VirtualBox 7.2.6でVM起動時にWindowsがブラックスクリーンに陥る問題

事象

VirtualBoxで仮想マシン起動時に以下のようなブラックスクリーンが表示される

Stop code: SYSTEM_SERVICE_EXCEPTION (0x3B)

What failed: VMMR0.r0

発生条件

この問題は、Windows 11側でHyper-Vを無効化していると発生する

24H2/25H2のHyper-Vの無効化には一般的に以下のようなコマンドが使われる

PowerShell
bcdedit /set hypervisorlaunchtype off

無効化されているか確認するには、以下のコマンドを実行し、Offと表示される場合はHyper-Vが無効化されている

PowerShell
bcdedit /enum | findstr hypervisorlaunchtype

原因 (推測)

今のWindows 11はデフォルトでHyper-Vによる仮想化が行われており、極端な話、仮想環境であるため、CPUの仮想化支援機能を直接使用することができない

VirtualBoxはCPUの仮想化支援機能を使用できないときは、Hyper-Vを経由する動作モードに自動的に切り替える

ここで、Hyper-Vを無理やり無効化すると、Windows 11はネイティブに動作するようになり、CPUの仮想化支援機能を直接使用できるようになり、VirtualBoxはそれを使用する

しかしながら、今のWindows 11はHyper-Vによる仮想化を前提として設計されているため、CPUの仮想化支援機能を直接使用することをあまり想定していないと思われる

VirtualBox側もHyper-V前提で開発を進めているものと見られるので、Hyper-V無効化時のテストが不十分であることが想像できる

両者のテストの不十分等が組み合わさったことで、このような問題を引き起こしたのではないかと思われる

解決方法

解決方法は2つある

方法① Hyper-Vを有効化する

最新のVirtualBoxはHyper-Vと共存できるように進化しているため、Hyper-Vの有効化によるトラブルが減っている

方法② VirtualBoxをダウングレードする

自分が確認できている範囲では、7.0.6ではこの問題は発生しない