GNU/Linux ◆ xterm-256color ◆ bash 1629 views

The demo is presenting one of the features that bare metal hypervisor gives. It is run in edk2 UEFI implementation on MinnowBoard Turbot platform. Hypervisor was written with Bareflank - an open source hypervisor SDK. Depending on the implementation, it can provide an interface for underlying software to control hypervisor’s operation or be completely transparent. This kind of hypervisors use Intel’s VMX (Virtual Machine eXtensions).

Output is mirrored to the UART before Bareflank is started. In this demo hypervisor hijacks writes to UART and ignores or modifies them. As a result, all output from UEFI is normal on the attached monitor, but modified in the minicom/telnet after hypervisor starts.

In this case hypervisor is started manually to show the difference between working on real hardware and inside a virtualized environment, but nothing stops us from starting the hypervisor earlier as a part of the boot process.