MirageOS 3.6:n julkaisu, alusta sovellusten suorittamiseen hypervisorin päällä

tapahtui projektin julkaisu Mirage OS 3.6, jonka avulla voit luoda käyttöjärjestelmiä yhdelle sovellukselle, jossa sovellus toimitetaan itsenäisenä "yksiytimenä", joka voidaan suorittaa ilman käyttöjärjestelmiä, erillistä käyttöjärjestelmän ydintä ja kerroksia. OCaml-kieltä käytetään sovellusten kehittämiseen. Projektin koodi jakelija ilmaisella ISC-lisenssillä.

Kaikki käyttöjärjestelmälle ominaiset matalan tason toiminnot toteutetaan sovelluksen liitteenä olevan kirjaston muodossa. Sovellus voidaan kehittää missä tahansa käyttöjärjestelmässä, minkä jälkeen se käännetään erikoisytimeen (käsite ainutlaatuinen), joka voi toimia suoraan Xen-, KVM-, BHyve- ja VMM (OpenBSD) -hypervisorien päällä, mobiilialustojen päällä, prosessina POSIX-yhteensopivassa ympäristössä tai Amazon Elastic Compute Cloud- ja Google Compute Engine -pilviympäristöissä.

Luotu ympäristö ei sisällä mitään ylimääräistä ja on suoraan vuorovaikutuksessa hypervisorin kanssa ilman ohjaimia tai järjestelmäkerroksia, mikä mahdollistaa huomattavan alennuksen yleiskustannuksissa ja lisää turvallisuutta. Työskentely MirageOS:n kanssa koostuu kolmesta vaiheesta: kokoonpanon valmistelu ja ympäristössä käytettyjen määritysten tunnistaminen OPAM-paketit, ympäristön rakentaminen ja ympäristön käynnistäminen. Xenin päällä suoritettava suoritusaika perustuu tyhjennettyyn ytimeen Mini-OS, ja muille hypervisoreille ja ydinpohjaisille järjestelmille Solo5.

Huolimatta siitä, että sovellukset ja kirjastot luodaan korkean tason OCaml-kielellä, tuloksena olevat ympäristöt osoittavat melko hyvää suorituskykyä ja minimaalista kokoa (esimerkiksi DNS-palvelin vie vain 200 kt). Myös ympäristöjen ylläpito yksinkertaistuu, koska jos on tarpeen päivittää ohjelmaa tai muuttaa kokoonpanoa, riittää uuden ympäristön luominen ja käynnistäminen. Tuettu useita kymmeniä kirjastoja OCaml-kielellä verkkotoimintojen suorittamiseen (DNS, SSH, OpenFlow, HTTP, XMPP jne.), työskentelyyn tallennustilan kanssa ja rinnakkaistietojen käsittelyyn.

Uuden julkaisun tärkeimmät muutokset liittyvät työkalupakin uusien ominaisuuksien tukemiseen Solo5 0.6.0 (hiekkalaatikkoympäristö unikernelin käyttämiseen):

  • Lisätty mahdollisuus suorittaa unikernel MirageOS eristetyssä ympäristössä sp (”hiekkalaatikkoprosessin tarjous”), jonka työkalupakki tarjoaa Solo5. Spt-taustaa käytettäessä MirageOS-ytimet toimivat Linux-käyttäjäprosesseissa, joihin sovelletaan minimaalista eristystä seccomp-BPF:n perusteella;
  • Tuki toteutettu sovellusluettelo Solo5-projektista, jonka avulla voit määrittää useita unikerneliin liitettyjä verkkosovittimia ja tallennuslaitteita erillään hvt-, spt- ja muen-taustaohjelmien perusteella (käyttö genode- ja virtio-taustaohjelmissa on tällä hetkellä rajoitettu yhteen laitteeseen);
  • Solo5:een (hvt, spt) perustuvien taustaohjelmien suojausta on vahvistettu, esimerkiksi SSP (Stack Smashing Protection) -moodiin rakentaminen on saatu aikaan.

Lähde: opennet.ru

Lisää kommentti