Выпуск гипервизора Bareflank 2.0

Материал из Викиновостей, свободного источника новостей

30 января 2020 года

Состоялся релиз гипервизора Bareflank 2.0, предоставляющего инструментарий для быстрой разработки специализированных гипервизоров. Bareflank написан на языке C++, поддерживает C++ STL. Модульная архитектура Bareflank позволят легко расширять имеющиеся возможности гипервизора и создавать собственные варианты гипервизоров, как работающих поверх оборудования (как Xen), так и запускаемых в имеющемся программном окружении (как VirtualBox). Имеется возможность выполнения операционной системы хост-окружения в отдельной виртуальной машине. Код проекта распространяется под лицензией LGPL 2.1.

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

На базе Bareflank ведётся разработка системы виртуализации Boxy, поддерживающей запуск гостевых систем и позволяющей использовать легковесные виртуальные машины с Linux и Unikernel для запуска специализированных сервисов или приложений. В форме изолированных сервисов можно выполнять как обычные web-сервисы, так и приложения, к которым предъявляются особые требования к надёжности и безопасности, избавленные от влияния хост-окружения (хост-окружение изолируется в отдельной виртуальной машине).

Основные новшества Bareflank 2.0:

  • Добавлена поддержка запуска Bareflank напрямую из UEFI для последующего выполнения операционной системы в виртуальной машине;
  • Реализован новый менеджер управления памятью, спроектированный по аналогии с менеджерами памяти SLAB/Buddy в Linux. Новый менеджер памяти демонстрирует снижение фрагментации, позволяет добиться более высокой производительности и поддерживает динамическое выделение памяти гипервизору через bfdriver, что позволяет сократить начальный размер гипервизора и оптимально масштабироваться в зависимости от числа ядер CPU;
  • Новая система сборки на базе CMake, независимая от командного интерпретатора, позволяющая добиться существенного ускорения компиляции гипервизора и упрощающая поддержку в будущем дополнительных архитектур, таких как ARM;
  • Проведена реорганизация кода и упрощена структура исходных текстов. Улучшена поддержка смежных проектов, таких как hyperkernel, без необходимости дублирования кода. Более явно отделён код

Источники[править]


Creative Commons
Creative Commons
Эта статья содержит материалы из статьи «Выпуск гипервизора Bareflank 2.0», опубликованной OpenNET и распространяющейся на условиях лицензии Creative Commons Attribution (CC BY) — указание автора, источник и лицензию.
Эта статья загружена автоматически ботом NewsBots в архив и ещё не проверялась редакторами Викиновостей.
Любой участник может оформить статью: добавить иллюстрации, викифицировать, заполнить шаблоны и добавить категории.
Любой редактор может снять этот шаблон после оформления и проверки.

Комментарии[править]

Викиновости и Wikimedia Foundation не несут ответственности за любые материалы и точки зрения, находящиеся на странице и в разделе комментариев.