
QEMU KVM を搭載した Ubuntu 18 をホストしています。仮想マシン Windows 10 (Hyper-V 対応)
Windows VM 上で Android Studio エミュレーターを実行したい。
ホストではkvm_amd nested=1を使用しています
VM設定#1:
<vcpu placement='static'>8</vcpu>
<cpu mode='host-model' check='partial'>
<model fallback='allow'/>
<feature policy='disable' name='hypervisor'/>
</cpu>
この設定では、Windows VM は次のようになります。
- ファームウェアの仮想化: はい
- VM モニター モード拡張: いいえ
VM設定#2:
<vcpu placement='static'>8</vcpu>
<cpu mode='host-passthrough' check='none'/>
この設定では、VM は次のようになります。
- ファームウェアの仮想化: はい
- VM モニター モード拡張: はい
- しかし、VMは非常に遅いので、作業できません
- トポロジをデフォルト以外のものに変更すると、VM がブート ループに陥ります
追加情報が必要な場合はお知らせください。ご協力いただけますでしょうか?
答え1
ついに、Hyper-V と Docker Desktop がスムーズに動作する Windows 11 Professional クライアントで qemu-kvm が動作するようになりました。
これは私の設定ですが、他の人の役に立つかもしれません。宣伝の意図はありません! ハードウェア:
Gigabyte X570 I AORUS PRO WIFI
BIOS-Version F37a (Virtualization enabled, Hyperthreading disabled)
AMD Ryzen 9 3950X 16-Core Processor
64Gb RAM
ソフトウェア:
OS: Centos Stream 8
Kernel: 4.18.0-448.el8.x86_64
libvirt 8.0.0
QEMU 6.2.0
設定ファイル
options kvm ignore_msrs=1
options kvm_amd nested=1
virsh 設定:
<memory unit='KiB'>16777216</memory>
<currentMemory unit='KiB'>16777216</currentMemory>
<vcpu placement='static'>12</vcpu>
<resource>
<partition>/machine</partition>
</resource>
<os>
<type arch='x86_64' machine='pc-q35-rhel8.2.0'>hvm</type>
</os>
<features>
<acpi/>
<apic/>
<hyperv mode='custom'>
<relaxed state='on'/>
<vapic state='on'/>
<spinlocks state='on' retries='8191'/>
<vpindex state='on'/>
<runtime state='on'/>
<synic state='on'/>
<stimer state='on'/>
<reset state='on'/>
<vendor_id state='on' value='1234567890ab'/>
<frequencies state='on'/>
<reenlightenment state='on'/>
<tlbflush state='on'/>
<ipi state='on'/>
<evmcs state='off'/>
</hyperv>
<kvm>
<hidden state='on'/>
<hint-dedicated state='on'/>
<poll-control state='on'/>
</kvm>
<vmport state='off'/>
<smm state='on'/>
</features>
<cpu mode='host-passthrough' check='none' migratable='off'>
<topology sockets='1' dies='1' cores='12' threads='1'/>
<cache mode='passthrough'/>
<feature policy='require' name='topoext'/>
<feature policy='require' name='svm'/>
<feature policy='require' name='x2apic'/>
<feature policy='require' name='hypervisor'/>
<feature policy='require' name='invtsc'/>
</cpu>
<clock offset='localtime'>
<timer name='rtc' tickpolicy='catchup'/>
<timer name='pit' tickpolicy='delay'/>
<timer name='hpet' present='no'/>
<timer name='hypervclock' present='yes'/>
<timer name='tsc' present='yes' mode='native'/>
</clock>
<on_poweroff>destroy</on_poweroff>
<on_reboot>restart</on_reboot>
<on_crash>destroy</on_crash>
<pm>
<suspend-to-mem enabled='no'/>
<suspend-to-disk enabled='no'/>
</pm>
SecureBoot と TPM なしで Windows 11 Pro をインストールしました。詳細については Google を参照してください。
Shift+F10 to launch cmd in windows setup regedit goto “HKEY_LOCAL_MACHINE\SYSTEM\Setup”
right-click “New ⇒ Key ⇒ LabConfig” “New ⇒ DWORD (32-bit) ⇒
BypassTPMCheck ⇒ 1” same for “BypassRAMCheck” and “BypassSecureBootCheck”