web-dev-qa-db-ja.com

VMはKVMまたはQEMUを使用していますか?

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が使用されているかどうかをどのようにして知ることができますか?そして、なぜこれらの異なるコマンドのそのような矛盾した出力を得るのですか?

10
iGadget

KvmはQEMUの上に構築されるため、単なるハードウェアアクセラレーションです。

これにより、VMを実行している実際のプロセスがkvmプロセスであることがわかります。

ps xa| grep "[b]in/kvm"
9
ithkuil

http://en.wikipedia.org/wiki/Kernel-based_Virtual_Machine#Design

KVM自体は、エミュレーションを実行しません。代わりに、ユーザー空間プログラムは/ dev/kvmインターフェイスを使用してゲストVMのアドレス空間を設定し、シミュレートされたI/Oにフィードして、ビデオ表示をホストにマップします。 QEMUバージョン0.10.0以降では、これを利用しています。

4
nutznboltz