利用Host主机的 虚拟化技术来运行虚拟机(QEMU)

1。 首先,确保主机支持 virtualization:

cat /proc/cpuinfo  | grep -E "vmx|svm"

如果有输出,说明支持。

1。配置好 qemu,(加上 enable-kvm):

 ./configure --target-list=arm-softmmu,mipsel-softmmu --enable-debug --enable-sdl --enable-gtk --enable-kvm

3. 查看相关模块是否加载:

~$ lsmod  | grep kvm
kvm_intel             132651  0 
kvm                   388310  1 kvm_intel

如果有上面的输出,是可以用的。

同时 /dev/kvm 应该被创建。QEMU里有类似下面的代码:

open("/dev/kvm")
ioctl(KVM_CREATE_VM)
ioctl(KVM_CREATE_VCPU)
for (;;) {
  ioctl(KVM_RUN)
  switch (exit_reason) {
  case KVM_EXIT_IO:  /* ... */
  case KVM_EXIT_HLT: /* ... */
  }
}


我第一尝试的时候,看不到 /dev/kvm,  lsmod的时候,只看到有 kvm.ko 加载进来。手动加载 kvm_intel.ko的时候,提示

insmod: ERROR: could not insert module ./kernel/arch/x86/kvm/kvm-intel.ko: Operation not supported
然后,看一下 dmesg |tail,发现:

[ 1870.982716] kvm: disabled by bios
[ 1888.957189] kvm: disabled by bios
[ 1906.551801] kvm: disabled by bios
[ 1919.617650] has_svm: not amd 
[ 1919.617653] kvm: no hardware support
原来是在 BIOS里把 virtualization禁掉了。

进入 BIOS,打开之后,一切都正常了。


你可能感兴趣的:(qemu)