Bare-Metal KVM Hypervisor: Interview Quick-Reference Index

A structured navigation hub for explaining the Bare-Metal KVM Hypervisor & Virtualization Engine (CS 695: Topics in Virtualization and Cloud Computing | Prof. Purushottam Kulkarni).


📂 Quick Links & Speeches

Page Type Duration Primary Focus
Intro Pitch Speech 60–90 sec High-level overview: KVM API, guest memory mapping, I/O traps, and multi-VM scheduling.
Detailed Architecture Speech 3.5–5 min End-to-end 4-stage walkthrough: VM creation, vCPU configuration, VM exit handling, and inter-VM coordination.
Topic 01: Core KVM API & Memory Deep Dive 2–3 min Three-tier file descriptor hierarchy (/dev/kvm, vm_fd, vcpu_fd), mmap with MAP_NORESERVE, and KVM_SET_USER_MEMORY_REGION.
Topic 02: VM Exits & I/O Traps Deep Dive 2–3 min Hardware VM exit mechanics, KVM_EXIT_HLT, and implementing trap-based hypercalls via in/out assembly instructions.
Topic 03: GVA→HVA Translation Deep Dive 2–3 min Guest Virtual Address to Host Virtual Address mapping: GVA → GPA → HVA (HVA = vm->mem + GVA).
Topic 04: Dual-VM Circular Buffer Deep Dive 2–3 min Producer/Consumer VM architecture, isolated memory spaces, and hypervisor-mediated 20-element ring buffer sync.
Topic 05: vCPU Scheduling Deep Dive 2–3 min Userspace time-sliced scheduling trace, hardware state management in KVM, and cooperative context switches.

🎯 Key Systems Takeaways