Skip to content

Intel's VT-x / VT-d APIs for the Bareflank hypervisor

License

Notifications You must be signed in to change notification settings

no-realm/extended_apis

 
 

Repository files navigation

Extended APIs


GitHub Version Build Status Build status codecov Codacy Badge CII Best Practices Join the chat at https://gitter.im/Bareflank-hypervisor/Lobby

Description

The Bareflank Hypervisor is an open source, hypervisor Software Development Toolkit (SDK), led by Assured Information Security, Inc. (AIS), that provides a set of APIs needed to rapidly prototype and create new hypervisors. To ease development, Bareflank is written in C/C++, and includes support for C++ exceptions, JSON, the GSL and the C++ Standard Template Library (STL).

The purpose of this repository, is to provide an extended set of APIs to build your hypervisors from. Some of these APIs include:

  • MSR / IO Bitmaps
  • VPID / Extended Page Tables (EPT)
  • Monitor Traps
  • Virtual APIC / Interrupt Management
  • Improved UEFI support

Compilation / Usage

To setup our extension, run the following:

git clone https://github.com/Bareflank/hypervisor
git clone https://github.com/Bareflank/extended_apis
mkdir build; cd build
cmake ../hypervisor -DDEFAULT_VMM=eapis_vmm -DEXTENSION=../extended_apis
make -j<# cores + 1>

To test out our extended version of Bareflank, run the following commands:

make driver_quick
make quick

to reverse this:

make unload
make driver_unload

Links

Bareflank Hypervisor Website
Bareflank Hypervisor API Documentation

License

The Bareflank Hypervisor is licensed under the GNU Lesser General Public License v2.1 (LGPL).

About

Intel's VT-x / VT-d APIs for the Bareflank hypervisor

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • C++ 89.6%
  • CMake 7.7%
  • Shell 2.4%
  • C 0.3%