Ubuntu 11.10をインストールし、Ubuntu 11.04で作成されたKVMイメージを新しいシステムにコピーした後、Virt-managerがKVMではなくQEMUを使用していると言っています。また、virsh version
を実行すると、Running hypervisor: QEMU 0.14.1
と表示されます。
ただし、kvm-ok
を実行すると、INFO: /dev/kvm exists
およびKVM acceleration can be used
と表示されます。また、私のVMのXMLファイルには、KVMを使用する必要があることが明記されています:<domain type='kvm'>
<emulator>/usr/bin/kvm</emulator>
。
さらに、lsmod |grep kvm
は次を示します(VMが実行されている場合):
kvm_intel 61643 3
kvm 383822 1 kvm_intel
それでは、KVMまたはQEMUが使用されているかどうかをどのようにして知ることができますか?そして、なぜこれらの異なるコマンドのそのような矛盾した出力を得るのですか?
KvmはQEMUの上に構築されるため、単なるハードウェアアクセラレーションです。
これにより、VMを実行している実際のプロセスがkvmプロセスであることがわかります。
ps xa| grep "[b]in/kvm"
http://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine#Design
KVM自体は、エミュレーションを実行しません。代わりに、ユーザー空間プログラムは/ dev/kvmインターフェイスを使用してゲストVMのアドレス空間を設定し、シミュレートされたI/Oにフィードして、ビデオ表示をホストにマップします。 QEMUバージョン0.10.0以降では、これを利用しています。