релиz на проекта , позволяваща създаване на операционни системи с едно приложение, при които приложението се доставя като самостоятелен «unikernel», способен да работи без необходимост от операционни системи, отделно ядро и каквито и да било прослойки. За разработка на приложения се използва езикът OCaml. Кодът на проекта е с открит лиценз ISC.
Всяка нискоуровнева функционалност, характерна за операционната система, е реализирана под формата на библиотека, свързана с приложението. Приложението може да бъде разработено в която и да е операционна система, след което се компилира в специализирано ядро (концепция ), което може да работи директно върху хипервизори Xen, KVM, BHyve и VMM (OpenBSD), върху мобилни платформи, под формата на процес в POSIX-съвместима среда или в облачни среди Amazon Elastic Compute Cloud и Google Compute Engine.
Сгенерираната среда не съдържа нищо излишно и взаимодейства директно с хипервизора без драйвери и системни прослойки, което позволява значително намаляване на разходите и повишаване на сигурността. Работата с MirageOS се състои от три етапа: подготовка на конфигурация с определяне на използваните в средата , изграждане на средата и стартиране на средата. Runtime средата за работа върху Xen се основава на опростено ядро , а за други хипервизори и системи на база ядро .
Въпреки че приложенията и библиотеките се създават на високоефективния език OCaml, окончателните среди демонстрират достатъчно добра производителност и минимален размер (например, DNS сървърът заема само 200 Кб). Поддръжката на средите също е опростена, тъй като при необходимост от актуализиране на програма или промяна на конфигурация е достатъчно да се създаде и стартира нова среда. Поддържат се на езика OCaml за извършване на мрежови операции (DNS, SSH, OpenFlow, HTTP, XMPP и др.), работа с хранилища и осигуряване на паралелна обработка на данни.
Основните промени в новото издание са свързани с осигуряване на поддръжка на нови възможности, предложени в инструментария (sandbox среда за изпълнение на unikernel):
- Добавена е възможността за стартиране на unikernel MirageOS в изолирана среда («sandboxed process tender»), предоставен от инструментариума . При използване на бэкенда spt, ядрото MirageOS стартира в потребителски процеси на Linux, към които се прилага минимална изолация, базирана на seccomp-BPF;
- Подкрепя се от проекта Solo5, който позволява определяне на няколко прикрепени към unikernel мрежови адаптера и устройства за съхранение при изолация на базата на бэкендите hvt, spt и muen (използването на бэкендите genode и virtio е в момента ограничено до едно устройство);
- Усилена защита на бэкендите на базата на Solo5 (hvt, spt), например, осигурена е компилация в режим SSP (Stack Smashing Protection).
Източник: opennet.ru
