Издаване на хипервизор Bareflank 3.0

Състоянието на релиза на хипервизора Bareflank 3.0, предоставящ инструменти за бързо разработване на специализирани хипервизори. Bareflank е написан на езика C++, поддържа C++ STL. Модулната архитектура на Bareflank позволява лесно разширяване на наличните възможности на хипервизора и създаване на собствени версии на хипервизори, както работещи върху хардуер (като Xen), така и изпълнявани в съществуваща софтуерна среда (като VirtualBox). Съществува възможност за изпълнение на операционна система на хост-средата в отделна виртуална машина. Кодът на проекта се разпространява под лиценз LGPL 2.1.

В Bareflank е реализирана поддръжка на Linux, Windows и UEFI на 64-битови CPU на Intel и AMD. За хардуерно разделяне на ресурсите виртуални машини се прилага технологията Intel VT-x. За в бъдеще е планирана поддръжка на macOS и BSD системи, както и възможност за работа на платформата ARM64. Допълнително проектът развива собствен драйвер за зареждане на VMM (Virtual Machine Manager), ELF зареждач за зареждане на модули VVM, приложение bfm за управление на хипервизора от потребителското пространство. Предоставя се инструментариум за писане на разширения с използване на елементи, определени в спецификациите C++11/14, библиотека за разгръщане на стека на изключения (unwind), както и собствена runtime библиотека за поддръжка на прилагането на конструктори/деструктори и регистрация на обработчици на изключения.

На базата на Bareflank се води разработка на система за виртуализация Boxy, поддържаща стартиране на гостуващи системи и позволяваща използването на леки виртуални машини с Linux и Unikernel за стартиране на специализирани услуги или приложения. Под формата на изолирани услуги могат да се изпълняват както обикновени уеб услуги, така и приложения, за които има специални изисквания за надеждност и сигурност, освободени от влиянието на хост-средата (хост-средата е изолирана в отделна виртуална машина). Bareflank също така лежи в основата на хипервизора MicroV, предназначен за стартиране на минималистични виртуални машини (виртуална машина едно приложение), реализиращо API KVM и подходящо за създаване на критични системи.

Основни нововъведения в Bareflank 3.0:

  • Преход към използването на концепцията за микроядро. По-рано хипервизорът имаше монолитна архитектура, при която за разширяване на функционалността беше необходимо да се използва специален API за регистрация на callback-вик called, което затрудняваше разработването на разширения поради обвързаността с езика C++ и вътрешната структура. Новата архитектура, базирана на микроядро, предвижда разделянето на хипервизора на компоненти на ядрото, изпълнявани на нулевото защитно ниво, и разширения, изпълнявани на третото ниво (потребителско пространство). И двете части работят в коренен режим VMX, а всичко останало, включително хост-околната среда, в некоренен режим VMX. Разширенията в потребителското пространство реализират функционалността на диспетчера на виртуални машини (VMM) и взаимодействат с ядрото на хипервизора чрез системни повиквания, за които се осигурява обратна съвместимост. Разширенията могат да бъдат създавани на всякакви програмни езици, включително поддържането на езика Rust.
  • Извършен е преход към използването на собствената библиотека BSL с поддръжка на Rust и C++, която замени външните библиотеки libc++ и newlib. Отказът от външни зависимости позволи в Bareflank да бъде реализирана родна поддръжка за компилация в Windows, за да се улесни разработването на тази платформа.
  • Добавена е поддръжка за процесорите AMD. Освен това, разработката на Bareflank вече се провежда на система с CPU AMD и след това се портва за CPU Intel.
  • В зареждача е добавена поддръжка за архитектура ARMv8, адаптацията на хипервизора за която ще бъде завършена в едно от следващите издания.
  • Осигурено е съответствие с изискванията за разработване на критично важни системи, формулирани от организациите AUTOSAR и MISRA.

Източник: opennet.ru

Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри 🔥 Купете надежден хостинг за сайтове с защита от DDoS, VPS VDS сървъри | ProHoster