As a strong follow-up to our newest product, our Bareflank® Hypervisor, we are announcing a major release—the release candidate version rc1.1.0. The release includes a new build system and much more.
“This release takes Bareflank® to a new level, and solidifies it as a serious and superior entry in the hypervisor world,” said Charles Green, CEO of AIS.
The release includes:
New Build System
A new build system was developed that supports out-of-tree compilation, better integration with extensions, and support for Docker. With Docker support, users no longer need to compile the cross compilers on Linux-based systems. This not only provides a faster method for testing out Bareflank®, but also speeds up the Travis CI builds, reducing testing time.
Windows / OpenSUSE Support
Bareflank® now supports Windows 8.1, Windows 10, and OpenSUSE Leap 42.2. Extensive testing has been done with Windows, including running benchmark programs while Bareflank® is running, as well as CPU-Z.
Like hypervisors MoRE and SimpleVisor, Bareflank® version 1.0 used the host OS’s resources for execution. Bareflank® now has its own set of resources, providing isolation from the host OS like most traditional hypervisors. This provides the ability to map host/guest memory, as well as improved security.
All cores are now used by Bareflank® instead of the bootstrap core. To support multicore, mutex support was added to the hypervisor. There are also a number of APIs to work with each core individually if needed.
Bareflank® now has generic support for VMCalls, including version querying, raw register access, mapped memory, JSON commands, simple events, and VMM unit testing. The Bareflank® Manager (BFM) user space application has also been extended to provide command-line access to these VMCalls, and the host OS drivers have also been updated to provide IOCTL support if direct VMCalls are not desired.
Clang / LLVM Support
Bareflank® can now cross-compile the VMM using Clang/LLVM. In addition, all of the libraries used, including newlib and libc++, are compiled as shared libraries, and linked as such.
Bareflank® now has support for SSE/AVX and “-O3” optimizations in the VMM.
Testing / GSL Support
Bareflank® now supports a number of testing tools to ensure the source code works as expected. This includes Coveralls support for code coverage, static analysis via Clang Tidy and Coverity, and dynamic analysis via Google Sanitizers. Tests are executed on each PR via Travis CI and AppVeyor to ensure the repo remains stable. Bareflank® also uses Clang Tidy to ensure C++ Core Guideline compliance, and has support for the Guideline Support Library.
If you’re interested in participating, feel free to contact us on our Gitter page. We’re always looking for support!
Want more information on putting Bareflank® to use, or about AIS and our products and services? Get in touch today.