Bareflank
Это заготовка статьи. |
Bareflank — гипервизор предоставляющий инструментарий для быстрой разработки специализированных гипервизоров. Bareflank написан на языке C++, поддерживает C++ STL. Модульная архитектура Bareflank позволят легко расширять имеющиеся возможности гипервизора и создавать собственные варианты гипервизоров, как работающих поверх оборудования (как Xen), так и запускаемых в имеющемся программном окружении (как VirtualBox). Имеется возможность выполнения операционной системы хост-окружения в отдельной виртуальной машине. Код проекта распространяется под лицензией LGPL 2.1.
В Bareflank реализована поддержка Linux, Windows и UEFI на 64-разрядных CPU Intel и AMD. Для аппаратного разделения ресурсов виртуальных машин применяется технология Intel VT-x. Дополнительно проектом развивается собственный драйвер для загрузки VMM (Virtual Machine Manager), ELF-загрузчик для загрузки модулей VVM, приложение bfm для управления гипервизором из пространства пользователя. Предоставляется инструментарий для написания расширений с использованием элементов, определённых в спецификациях C++11/14, библиотека раскручивания стека исключений (unwind), а также своя runtime-библиотека для поддержки применения конструкторов/деструкторов и регистрации обработчиков исключений.
На базе Bareflank ведётся разработка системы виртуализации Boxy[1], поддерживающей запуск гостевых систем и позволяющей использовать легковесные виртуальные машины с Linux и Unikernel для запуска специализированных сервисов или приложений. В форме изолированных сервисов можно выполнять как обычные web-сервисы, так и приложения, к которым предъявляются особые требования к надёжности и безопасности, избавленные от влияния хост-окружения (хост-окружение изолируется в отдельной виртуальной машине). Bareflank также лежит в основе гипервизора MicroV, предназначенного для запуска минималистичных виртуальных машин (виртуальная машина одного приложения), реализующего API KVM и подходящего для создания критически важных систем.
Ссылки
- bareflank.github.io/hypervisor/ — официальный сайт Bareflank
- Проект Bareflank на сайте GitHub