

The functionality is exposed through the virsh command. The set of tools include an C API library that comes with bindings for common languages, a daemon (libvirtd), and a command line utility (virsh). Libvirt is a toolkit for interacting with virtual machine hypervisors( Xen, KVM, VMWare ESX etc.).
Qemu yocto software#
If the underlying hardware does not provide support for KVM or if it has been disabled, qemu can be used to run the VMs using software emulation, but with a performance loss. The recipe for the qemu package is included in the standard poky distribution and it comes with built-in support for KVM and for all the new advanced features like virtio, which is the main platform for IO virtualization. QEMU is a popular process emulator that uses dynamic binary translation to achieve a reasonable speed while being easy to port to new architectures. Since yocto uses 3.4.20 or a newer version of the Linux kernel, no extra packages are required only a proper kernel configuration. The kvm component is included in the mainline Linux kernel starting from version 2.6.20. KVM can be used to run multiple virtual machines that contain unmodified Windows or Linux images. There are a number of other dependencies that come from the meta-oe layer of oe-core. It also features recipes for the libvirt package and other tools that can be used for the virtual machine management.

This layer contains all the necessary recipes for creating VM controllers using the Xen, LXC and KVM hypervisors. The project is part of the meta-virtualization layer. Multiple guest running in the Yocto Project KVM host layer Packages
