uvolnění projektu , která umožňuje vytvářet operační systémy pro jednu aplikaci, kde aplikace je dodávána jako samostatný „unikernel“, schopný běžet bez použití operačních systémů, samostatného jádra OS a jakýchkoli mezivrstv. Pro vývoj aplikací se používá jazyk OCaml. Kód projektu je pod svobodnou licencí ISC.
Veškerá nízkoúrovňová funkcionalita, typická pro operační systém, je realizována ve formě knihovny připojené k aplikaci. Aplikace může být vyvinuta v jakémkoli OS, poté je kompilována do specializovaného jádra (koncept ), které může být spuštěno přímo nad hypervizory Xen, KVM, BHyve a VMM (OpenBSD), na mobilních platformách, ve formě procesu v prostředí kompatibilním s POSIX, nebo v cloudových prostředích Amazon Elastic Compute Cloud a Google Compute Engine.
Generované prostředí neobsahuje nic nadbytečného a interaguje přímo s hypervizorem bez ovladačů a systémových mezivrstv, což umožňuje dosáhnout významného snížení režijních nákladů a zvýšení bezpečnosti. Práce s MirageOS spočívá ve třech fázích: příprava konfigurace s určením používaných v prostředí , sestavení prostředí a spuštění prostředí. Runtime pro zajištění práce nad Xen je založen na zjednodušeném jádru , a pro ostatní hypervizory a systémy založené na jádře .
I když jsou aplikace a knihovny vytvářeny ve vysoce úrovňovém jazyce OCaml, konečná prostředí vykazují dostatečně dobrou výkonnost a minimální velikost (například DNS server zabírá pouhých 200 kB). Údržba prostředí je také jednodušší, protože při potřebě aktualizace programu nebo změny konfigurace stačí vytvořit a spustit nové prostředí. Podporuje se v jazyce OCaml pro provádění sítových operací (DNS, SSH, OpenFlow, HTTP, XMPP atd.), práci se storage a zajištění paralelního zpracování dat.
Hlavní změny v novém vydání se týkají zajištění podpory nových funkcí, které byly navrženy v nástroji (sandboxové prostředí pro provádění unikernel):
- Byla přidána možnost spuštění unikernel MirageOS v izolovaném prostředí („sandboxed process tender“), poskytováno nástroji . Při použití backendu spt jádru MirageOS se spouští v uživatelských procesech Linuxu, na které se uplatňuje minimální izolace na bázi seccomp-BPF;
- Byla implementována podpora z projektu Solo5, umožňuje definici více připojovaných k unikernel síťových adaptérů a zařízení pro ukládání s izolací na základě backendů hvt, spt a muen (použití pro backendy genode a virtio je zatím omezeno na jedno zařízení);
- Posílena ochrana backendů založených na Solo5 (hvt, spt), např. byla zajištěna kompilace v režimu SSP (Stack Smashing Protection).
Zdroj: opennet.ru
