Lëshimi i MirageOS 4.0, platformës për ekzekutimin e aplikacioneve mbi hipervizor

Pas një viti e gjysmë zhvillimi, është publikuar versioni i projektit MirageOS 4.0, i cili lejon formimin e sistemeve operative të një aplikacioni, ku aplikacioni ofrohet si një "unikernel" i pavarur, i aftë të ekzekutohet pa përdorimin e sistemeve operative, një bërthamë të veçantë të OS dhe ndonjë shtresë tjetër. Për zhvillimin e aplikacioneve përdoret gjuha OCaml. Kodi i projektit shpërndahet nën licencën e lirë ISC.

Të gjitha funksionalitetet e nivelit të ulët, të pranishme në sistemin operativ, janë realizuar në formën e një biblioteke që i bashkëngjitet aplikacionit. Aplikacioni mund të zhvillohet në çdo OS, pas së cilës kompilohen në një bërthamë të specializuar (koncepti unikernel), e cila mund të ekzekutohet direkt mbi hipervizorët Xen, KVM, BHyve dhe VMM (OpenBSD), mbi platformat mobile, në formën e një procesi në një ambient të përputhshëm me POSIX ose në mjediset cloud të Amazon Elastic Compute Cloud dhe Google Compute Engine.

Ambientet e gjeneruara nuk përmbajnë asgjë të panevojshme dhe ndërveprojnë drejtpërdrejt me hipervizorin pa drejtorët dhe shtresat sistemike, çka lejon arritjen e një reduktimi të konsiderueshëm të kostove dhe rritjen e sigurisë. Puna me MirageOS përbëhet nga tre faza: përgatitja e konfiguracionit me përcaktimin e paketave OPAM të përdorura në ambient, ndërtimi i ambientit dhe nisja e ambientit. Runtime për sigurinë e ekzekutimit mbi hipervizorët është ndërtuar mbi bazën e bërthamës Solo5.

Pavarësisht se aplikacionet dhe bibliotekat formohen në një gjuhë të nivelit të lartë OCaml, ambientet përfundimtare demonstrojnë performancë të kënaqshme dhe madhësi minimale (p.sh., serveri DNS zë vetëm 200 KB). Po ashtu, mirëmbajtja e ambienteve është e lehtësuar, pasi në rastin e nevojës për përditësimin e programit ose ndryshimin e konfiguracionit, mjafton të krijohet dhe nisë një ambient i ri. Mbështeten disa qindra biblioteka në gjuhën OCaml për kryerjen e operacioneve rrjetërore (DNS, SSH, OpenFlow, HTTP, XMPP, Matrix, OpenVPN etj.), punën me skedarët dhe sigurimin e përpunimit paralel të të dhënave.

Përmirësime kyçe:

  • Procesi i kompilimit tĂ« projekteve dhe unikernel Ă«shtĂ« ndryshuar. NĂ« vend tĂ« sistemit tĂ« mĂ«parshĂ«m tĂ« ndĂ«rtimit ocamlbuild, Ă«shtĂ« pĂ«rdorur mjetet dune dhe depo lokale (monorepo). PĂ«r formimin e depo tĂ« tilla Ă«shtĂ« shtuar njĂ« mjet i ri opam-monorepo, i cili lejon ndarjen e menaxhimit tĂ« paketave nga ndĂ«rtimi nga kodet burimore. Mjeti opam-monorepo kryen punĂ« si krijimi i skedave lock pĂ«r varĂ«sitĂ« e lidhura me projektin, ngarkimin dhe nxjerrjen e kodit tĂ« varĂ«sive dhe konfigurimin e mjedisit pĂ«r pĂ«rdorimin e sistemit tĂ« ndĂ«rtimit dune. NdĂ«rtimi vetĂ« kryhet nga mjetet dune.
  • ËshtĂ« ofruar njĂ« proces ndĂ«rtimi tĂ« ripĂ«rsĂ«ritur. PĂ«rdorimi i skedave lock siguron lidhjen me versionet e varĂ«sive dhe lejon tĂ« pĂ«rsĂ«ritet plotĂ«sisht procesi i ndĂ«rtimit nĂ« çdo moment me tĂ« njĂ«jtin kod.
  • ËshtĂ« realizuar njĂ« proces i ri i kross-kompilimit dhe Ă«shtĂ« siguruar mundĂ«sia e kross-kompilimit pĂ«r tĂ« gjitha platformat e mbĂ«shtetura nga njĂ« mjedis tĂ« pĂ«rbashkĂ«t ndĂ«rtimi, nĂ« tĂ« cilin gjithashtu kryhet kross-kompilimi i varĂ«sive dhe bibliotekave me lidhje nĂ« gjuhĂ«n C, pa nevojĂ«n pĂ«r tĂ« shtuar kĂ«to lidhje nĂ« paketĂ«n kryesore. Kross-kompilimi Ă«shtĂ« organizuar duke pĂ«rdorur hapĂ«sirat e punĂ«s qĂ« ofrohen nga sistemi i ndĂ«rtimit dune.
  • ËshtĂ« shtuar mbĂ«shtetje pĂ«r platformat e reja tĂ« synuara, pĂ«r shembull, Ă«shtĂ« ofruar mundĂ«sia eksperimentale e ndĂ«rtimit tĂ« aplikacioneve tĂ« vetĂ«-pĂ«rshtatshme pĂ«r punĂ« nĂ« kartat Raspberry Pi 4.
  • ËshtĂ« punuar pĂ«r integrimin e pjesĂ«ve tĂ« MirageOS nĂ« ekosistemat qĂ« lidhen me zhvillimin nĂ« gjuhĂ«n OCaml, pĂ«r tĂ« thjeshtuar ndĂ«rtimin e aplikacioneve nĂ« formĂ«n e unikernel. ShumĂ« paketa tĂ« MirageOS janĂ« portuar pĂ«r sistemin e ndĂ«rtimit dune. Mjeti opam-monorepo Ă«shtĂ« i disponueshĂ«m pĂ«r instalim nĂ«pĂ«rmjet menaxherit tĂ« paketave opam dhe mund tĂ« pĂ«rdoret nĂ« projekte qĂ« aplikojnĂ« sistemin e ndĂ«rtimit dune. PĂ«r mbĂ«shtetje tĂ« patch-ave qĂ« zgjidhin probleme me ndĂ«rtimin e varĂ«sive nĂ« dune, janĂ« krijuar dy depo dune-universe/opam-overlays dhe dune-universe/mirage-opam-overlays, tĂ« cilat janĂ« tĂ« pĂ«rfshira pĂ«r shfrytĂ«zim tĂ« parazgjedhur kur pĂ«rdoret mjeti CLI mirage.
  • ËshtĂ« lehtĂ«suar integrimi i MirageOS me bibliotekat nĂ« gjuhĂ«t C dhe Rust.
  • ËshtĂ« propozuar njĂ« runtime i ri OCaml qĂ« lejon pĂ«rdorimin pa libc (libc-free).
  • ËshtĂ« ofruar mundĂ«sia e pĂ«rdorimit tĂ« shĂ«rbimit Merlin pĂ«r integrimin me ambientet e zhvillimit tĂ« integruar.

Burimi: opennet.ru

Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS đŸ”„ Blini hosting tĂ« besueshĂ«m pĂ«r faqe interneti me mbrojtje nga DDoS, serverĂ« VPS VDS | ProHoster