Bareflank aims to provide all of the scaffolding needed to rapidly prototype new hypervisors. Currently Bareflank has support for Linux and Windows on Intel 64bit CPUs, but support for OS X, and UEFI is coming as well as support for ARM and AMD platforms.
Bareflank is written in C++ with support for the C++ STL via libc++.
Bareflank also comes complete with a custom unwind library for kernel safe
exception support. Using inheritance and Bareflank's modular design, it is
simple to extend Bareflank to create your own hypervisors. Bareflank even comes
with a set of examples that demonstrate, step-by-step, how custom
Bareflank Hypervisor VPID Example
Bareflank Hypervisor CPUID Count Example
Bareflank Hypervisor MSR Bitmap Example
Bareflank Extended APIs Hook Example
Bareflank includes Doxygen API documentation. In addition, each sub-project
has been documented to explain what it does, and how it works.