Бос фланг Написан е на C ++ и е съвместим с C ++ STL. Модулната архитектура на Bareflank ви позволява лесно да разширите съществуващите възможности на хипервизора и да създадете свои собствени версии на хипервизор, както на хардуер (като Xen), така и в съществуваща софтуерна среда (като VirtualBox). Можете да стартирате операционната система на хост средата в отделна виртуална машина. Кодът на проекта се разпространява под лиценза LGPL 2.1.
Относно Bareflank
Bareflank поддържа Linux, Windows и UEFI на 64-битови процесори Intel и AMD. Технологията Intel VT-x се използва за хардуерно споделяне на ресурси на виртуална машина. В бъдеще се предвижда съвместимост с macOS и BSD системи, както и възможност за работа на платформата ARM64.
Освен това, проектът разработва свой собствен контролер за зареждане на VMM (Диспечер на виртуална машина), зарядно устройство ELF за зареждане на VVM модули и bfm приложение за управление на хипервизора от потребителското пространство.
Въз основа на Bareflank, Boxy се разработва система за виртуализация, която поддържа стартирането на системи за гости y позволява използването на леки виртуални машини с Linux и Unikernel за стартиране на специализирани услуги или приложения.
Под формата на изолирани услуги, може да изпълнява обикновени уеб услуги и приложения, които имат специални изисквания за надеждност и сигурност, без влиянието на хост средата (хост средата е изолирана в отделна виртуална машина). Bareflank също е в основата на хипервизора MicroV, предназначен да работи с минималистични виртуални машини (виртуална машина с едно приложение), внедряващ KVM API и подходящ за изграждане на критични за мисията системи.
За ваша употреба е осигурен инструментариум за писане на разширения. използвайки елементи, дефинирани в спецификациите на C ++ 11/14, библиотека за разгръщане на стека на изключенията (развиване), както и собствена библиотека по време на изпълнение, за да поддържа използването на конструктори/деструктори и изключения на манипулатор на журнали.
Относно основните иновации на новата версия на Bareflank 3.0 открояват се следните:
- Преход към концепцията за микроядро. Преди това хипервизорът имаше монолитна архитектура, в която за да разшири функционалността, трябваше да използва специален API за записване на обратни повиквания, което затрудняваше разработването на разширения поради обвързване с езика C ++ и вътрешното устройство.
- Новата архитектура на микроядрото разделя хипервизора на компоненти на ядрото, които работят на пръстен нула и разширения, които работят на трети пръстен (потребителско пространство). И двете части работят в VMX root режим и всичко останало, включително хост средата, в не-root VMX режим.
- Разширенията на потребителското пространство имплементират функционалността на Virtual Machine Manager (VMM) и взаимодействат с ядрото на хипервизора чрез обратно съвместими системни повиквания. Разширенията могат да бъдат създадени на всеки език за програмиране, включително с помощта на езика Rust, за който са предоставени готови за използване примери за разширения.
- Те преминаха към използване на собствена BSL библиотека с поддръжка на Rust и C ++, която замени външните библиотеки libc ++ и newlib. Премахването на външни зависимости позволи на Bareflank да внедри поддръжка на собствени компилации в Windows, за да опрости разработката на тази платформа.
- Bareflank вече идва с поддръжка за AMD. Освен това, разработката на Bareflank сега се извършва на система с AMD CPU и едва след това се преминава към Intel CPU, като се гарантира, че разработката за AMD се приема сериозно.
- Товарачът е добавил поддръжка за архитектурата ARMv8, чиято адаптация на хипервизора ще бъде завършена в бъдеща версия.
Съответствие с критичните за мисията изисквания за проектиране на системи AUTOSAR и MISRA.
Накрая ако се интересувате да научите повече за това, можете да се консултирате подробностите в следната връзка.