Chapter 2. KVM Internals

In this chapter, we will discuss the important data structures and the internal implementation of libvirt, QEMU, and KVM. Then we will dive into the execution flow of a vCPU in the KVM context.

In this chapter, we will cover:

  • The internal workings of libvirt, QEMU, and KVM.
  • Important data structures and code paths of libvirt, QEMU, and KVM.
  • Execution flow of vCPUs
  • How all these communicate with each other to provide virtualization

Getting acquainted with libvirt and its implementation

As discussed in a previous chapter, there is an extra management layer called libvirt which can talk to various hypervisors (for example: KVM/QEMU, LXC, OpenVZ, UML, and so on) underlying it. libvirt is an open source Application Programming Interface ...

Get Mastering KVM Virtualization now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.