Bareflank, інструментарій для швидкої розробки спеціалізованих гіпервізорів

Голосторонній Він написаний на 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, призначеного для запуску мінімалістичних віртуальних машин (віртуальних машин з однією програмою), що реалізує API KVM і підходить для створення критично важливих систем.

Набір інструментів для написання розширень надається для вашого використання. використання елементів, визначених у специфікаціях C++ 11/14, бібліотеки для розкручування стеку винятків (unwind), а також власної бібліотеки часу виконання для підтримки використання конструкторів/деструкторів і обробників винятків журналу.

Як основні нововведення нової версії Bareflank 3.0 виділяються:

  • Перехід до концепції мікроядра. Раніше гіпервізор мав монолітну архітектуру, де для розширення функціональності йому доводилося використовувати спеціальний API для запису зворотних викликів, що ускладнювало розробку розширення через прив'язку до мови C++ і внутрішнього пристрою.
  • Нова архітектура мікроядра розділяє гіпервізор на компоненти ядра, які працюють на нульовому кільці, і розширення, які працюють на третьому кільці (просторі користувача). Обидві частини працюють у кореневому режимі VMX, а все інше, включаючи середовище хоста, у некорневому режимі VMX.
  • Розширення простору користувача реалізують функціональність Virtual Machine Manager (VMM) і взаємодіють з ядром гіпервізора за допомогою зворотно-сумісних системних викликів. Розширення можна створювати будь-якою мовою програмування, в тому числі за допомогою мови Rust, для якої надаються приклади готових до використання.
  • Вони перейшли до використання власної бібліотеки BSL з підтримкою Rust і C ++, яка замінила зовнішні бібліотеки libc ++ і newlib. Видалення зовнішніх залежностей дозволило Bareflank реалізувати вбудовану підтримку збірки в Windows, щоб спростити розробку на цій платформі.
  • Тепер Bareflank підтримує AMD. Крім того, розробка Bareflank тепер відбувається на системі з процесором AMD, і лише потім вона переходить на процесор Intel, гарантуючи, що розробка для AMD сприймається серйозно.
  • Завантажувач додав підтримку архітектури ARMv8, адаптація гіпервізора якої буде завершена в наступному випуску.
    Відповідність критично важливим вимогам до проектування системи AUTOSAR і MISRA.

В кінці кінців якщо вам цікаво дізнатись більше про це, Ви можете проконсультуватися деталі у наступному посиланні.


Залиште свій коментар

Ваша електронна адреса не буде опублікований. Обов'язкові для заповнення поля позначені *

*

*

  1. Відповідальний за дані: AB Internet Networks 2008 SL
  2. Призначення даних: Контроль спаму, управління коментарями.
  3. Легітимація: Ваша згода
  4. Передача даних: Дані не передаватимуться третім особам, за винятком юридичних зобов’язань.
  5. Зберігання даних: База даних, розміщена в мережі Occentus Networks (ЄС)
  6. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.