Classification of hypervisors

  • Software-based: Paravirtualization (Xen), binary-translation and emulation (old VMware)
  • Hardware-assisted: Uses hardware assisted virtualization technology, HW VT, eg, VT-x and AMD-V (almost any hypervisors)
  • vs. emulators/simulators
    • Hypervisors run code on real processors (direct execution) plus minimal use of emulation techniques
    • Emulators emulate everything; thus, slower
    • Many emulators now use HW VT to boost performance: QEMU + KVM, Android Emulator + HAXM, Simics + VMP
  • "Hypervisor" is most often interchangeable with "VMM"
  • This class will explicitly talk about Hardware-assisted hypervisors