This talk is a twofer (a two for one deal). We'll describe how KVM works, but not just one way, two! While stepping through the process of booting a simple guest, we'll look at what's going on in both the implementation of KVM for AArch64 (ARM's 64-bit architecture) and in the implementation for x86_64/VMX (Intel's 64-bit architecture). As the two KVM implementations are the products of their respective architecture's virtualization extension designs, we'll gain some insights into what design decisions appear to be "better", at least from a developer's point of view.
Andrew Jones (drew) works for Red Hat. Drew has spent most his time at Red Hat debugging Virtualization issues, a.k.a living in bugzilla. Most recently he has been working on integrating Virt bits for AArch64 servers.