MirageOS 4.0 поставляється з новими утилітами, новим процесом збірки тощо

Через півтора року розвитку запуск нова версія проекту «Mirage OS 4.0» що дозволяє створювати операційні системи для однієї програми, в якій програма постачається як автономне «унікальне ядро», яке може працювати без використання операційних систем, окремого ядра ОС і будь-яких шарів.

Вся низькорівнева функціональність, властива операційній системі, реалізована у вигляді бібліотеки, доданої до програми.

Про ОС Mirage

додаток можна розробити на будь-якій операційній системі, а потім зібрати в спеціалізоване ядро (концепція unikernel), яка може працювати безпосередньо поверх гіпервізорів Xen, KVM, BHyve та VMM (OpenBSD) на мобільних платформах як процес POSIX. сумісні або в хмарних середовищах Amazon Elastic Compute Cloud і Google Compute Engine.

Створене середовище не містить нічого зайвого і безпосередньо взаємодіє з гіпервізором без драйверів або системних рівнів, що призводить до значного зниження накладних витрат і підвищення безпеки.

Робота з ОС Mirage Він зводиться до трьох етапів: підготувати конфігурацію з визначенням пакетів OPAM, які використовуються в середовищі, побудувати середовище та запустити середовище. Середовище виконання для виконання поверх гіпервізорів засноване на ядрі Solo5.

Незважаючи на програми та бібліотеки побудовані на мові високого рівня OCaml, отримані середовища показують досить хорошу продуктивність і мінімальний розмір (наприклад, DNS-сервер становить лише 200 КБ).

Також спрощено обслуговування навколишнього середовища, оскільки якщо вам потрібно оновити програму або змінити конфігурацію, достатньо створити та запустити нове середовище. Кілька сотень бібліотек на мові OCaml підтримуються для виконання мережевих операцій (DNS, SSH, OpenFlow, HTTP, XMPP, Matrix, OpenVPN тощо), роботи зі сховищами та забезпечення паралельної обробки даних.

Основні новини MirageOS 4.0

У цій новій версії MirageOS, яка представлена змінився процес складання проекту і одноядро. Натомість системи побудови ocamlbuild раніше використовувався, використовуються дюни та локальні сховища (монорепо).

Щоб створити такі сховища, додано нову утиліту opam-monorepo, що дозволило нам відокремити управління пакетами від створення від джерела. Утиліта opam-monorepo виконує роботу зі створення файлів блокування для залежностей, пов’язаних з проектом, завантаження та вилучення коду залежності та налаштування середовища для використання системи збірки dune, також варто згадати, що фактична збірка виконується dune.

Ще одна зміна, яка виділяється, полягає в тому, забезпечується повторюваний процес складання. Використання файлів блокування надає посилання на версії залежностей і дозволяє повністю повторити процес складання в будь-який момент з тим самим кодом.

Також підкреслюється, що впроваджено новий процес крос-компіляції і можливість крос-компіляції надається для всіх підтримуваних цільових платформ із загального середовища збірки, в якому, серед іншого, перехресно компілюються бібліотеки та залежності, пов’язані з C, без необхідності додавати ці посилання до основного пакету.

З іншого боку, згадується, що утиліта opam-monorepo доступна для встановлення за допомогою менеджера пакетів opam і може використовуватися в проектах, які використовують систему збірки dune. Щоб підтримувати виправлення, які вирішують проблеми зі створенням залежностей у dune, було створено два сховища Dune-universe/opam-overlays і dune-universe/mirage-opam-overlays, які ввімкнені за замовчуванням під час використання утиліти mirage CLI.

З інші зміни що виділяються:

  • Перехресна компіляція організована з використанням робочих просторів, наданих системою побудови дюн.
  • Додано підтримку нових цільових платформ, наприклад, експериментально надано можливість створення автономних додатків для роботи на платах Raspberry Pi 4.
  • Була проведена робота по інтеграції частин MirageOS в екосистеми, пов’язані з розробкою OCaml, щоб спростити збірку додатків у вигляді одноядра.
  • Багато пакетів MirageOS були перенесені в систему збірки Dune.
  • Спрощена інтеграція MirageOS з бібліотеками C і Rust.
  • Нове середовище виконання OCaml пропонується уникнути libc (безкоштовно libc).
  • Надано можливість використання сервісу Merlin для інтеграції зі стандартними інтегрованими середовищами розробки.

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


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

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

*

*

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