Másfél év fejlesztés után elindítása a projekt új verziója "Mirage OS 4.0" amely lehetővé teszi operációs rendszerek létrehozását egyetlen alkalmazáshoz, amelyben az alkalmazás önálló "unikernelként" kerül szállításra, amely operációs rendszerek, külön operációs rendszer kernel és bármilyen réteg használata nélkül futhat.
Az operációs rendszerben natív összes alacsony szintű funkció az alkalmazáshoz csatolt könyvtárként valósul meg.
A Mirage OS-ről
egy alkalmazás bármely operációs rendszeren fejleszthető, majd speciális kernellé fordítható (az unikernel koncepció), amely közvetlenül futhat Xen, KVM, BHyve és VMM (OpenBSD) hipervizorok tetején, mobil platformokon, POSIX folyamatként. kompatibilis, vagy az Amazon Elastic Compute Cloud és a Google Compute Engine felhőkörnyezetében.
A generált környezet nem tartalmaz semmi feleslegeset, és közvetlenül kölcsönhatásba lép a hipervizorral illesztőprogramok vagy rendszerrétegek nélkül, ami jelentősen csökkenti az általános költségeket és növeli a biztonságot.
Dolgozzon a Mirage operációs rendszerrel Három szakaszból áll: előkészíti a konfigurációt a környezetben használt OPAM csomagok definíciójával, elkészíti a környezetet és elindítja a környezetet. A hypervisorok tetején futtatható futási idő a Solo5 kernelen alapul.
Annak ellenére az alkalmazások és a könyvtárak a magas szintű OCaml nyelvre épülnek, a kapott környezetek meglehetősen jó teljesítményt és minimális méretet mutatnak (például a DNS-kiszolgáló csak 200 KB).
A környezet karbantartása is egyszerűsödik, hiszen ha frissíteni kell a programot vagy módosítani kell a konfigurációt, akkor elég egy új környezet létrehozása és futtatása. Az OCaml nyelven több száz könyvtár támogatja a hálózati műveletek (DNS, SSH, OpenFlow, HTTP, XMPP, Matrix, OpenVPN stb.) végrehajtását, a tárolókkal való együttműködést és a párhuzamos adatfeldolgozást.
A MirageOS 4.0 legfőbb hírei
A MirageOS bemutatott új verziójában megváltozott a projektépítési folyamat és unikernel. Helyette az építési rendszerről ocamlbuild korábban használt, használt dűne és helyi tárolók (monorepos).
Ilyen adattárak létrehozásához hozzáadott egy új segédprogramot, az opam-monorepo-t, amely lehetővé tette számunkra, hogy elkülönítsük a csomagkezelést a forrástól való felépítéstől. Az opam-monorepo segédprogram elvégzi a zárfájlok létrehozásának feladatát A projekthez kapcsolódó függőségek, a függőségi kód letöltése és kibontása, valamint a környezet dune build rendszer használatára való konfigurálása esetén érdemes megemlíteni azt is, hogy a tényleges buildet a dune végzi.
Egy másik kiemelkedő változás az megismételhető építési folyamat biztosított. A zárfájlok használata hivatkozást biztosít a függőségi verziókhoz és lehetővé teszi az építési folyamat teljes megismétlését bármikor ugyanazzal a kóddal.
Azt is kiemelik új kereszt-összeállítási eljárást hajtott végre és keresztfordítási lehetőség biztosított az összes támogatott célplatformhoz egy közös összeállítási környezetből, amelyben többek között a C-vel összekapcsolt könyvtárak és függőségek keresztfordításra kerülnek anélkül, hogy ezeket a hivatkozásokat hozzá kellene adni a fő csomaghoz.
Másrészt megemlítik azt az opam-monorepo segédprogram telepíthető az opam csomagkezelővel, és használható a dune build rendszert használó projektekben. A dűnékben a függőségek létrehozásával kapcsolatos problémákat megoldó javítások karbantartásához, két adattárat hoztak létre dune-univerzum/opam-overlays és dune-univerzum/mirage-opam-overlays, amelyek alapértelmezés szerint engedélyezve vannak a mirage CLI segédprogram használatakor.
A egyéb változások amelyek kiemelkednek:
- A keresztfordítás a dune build rendszer által biztosított munkaterületek felhasználásával történik.
- Az új célplatformok támogatása hozzáadásra került, például kísérletileg biztosították a Raspberry Pi 4 kártyákon működő önálló alkalmazások létrehozásának lehetőségét.
- Dolgoztak a MirageOS egyes részeinek az OCaml-fejlesztéssel kapcsolatos ökoszisztémákba való integrálása érdekében, hogy leegyszerűsítsék az alkalmazások unikernel formájában történő összeállítását.
- Sok MirageOS-csomagot portoltak a dune build rendszerbe.
- A MirageOS egyszerűsített integrációja C és Rust könyvtárakkal.
- Új OCaml futtatókörnyezet javasolt a libc elkerülésére (libc ingyenes).
- Lehetővé teszi a Merlin szolgáltatás használatát szabványos integrált fejlesztői környezetekkel való integrációhoz.
Végül, ha érdekel, hogy többet tudjon meg róla, ellenőrizheti a részleteket A következő linken.