How to explain the machine type concept in the virtualization


When I was under Debian Wheezy, virt-manager created virtual machines with the "pc-0.12" machine type.
Since I am under Debian Jessie, virt-manager creates virtual machines with "pc-i440fx-2.1" machine type.

How does virt-manager (or libvirt, or qemu, or kvm ?) determine/find the right machine type ?

Thanks by advance

Best Answer

The machine type (or device model) is a list of low-level devices that should be emulated by default, like a chipset, PCI controller, storage controller, etc. This "device model" is thus the base "computer" you'll be emulating, and on which you'll be adding other devices like disk drives, passed-through USB devices, etc.

I believe there is no logic to "choose" the device model and it just relies on compile-time defaults. There might be a notion of "templates" in libvirt/virt-manager and as such there may be different defaults depending on the template you choose (some OSes will refuse to boot with the outdated pc device model, so different device models need to be present to accomodate different OSes).

Related Topic