Bareflank 3.0 hipervizora izlaidums

Ir izlaists Bareflank 3.0 hipervizors, kas nodrošina rīku komplektu specializētu hipervizoru straujai attīstībai. Bareflank ir rakstīts C++ valodā un atbalsta C++ STL. Bareflank modulārā arhitektūra ļauj viegli paplašināt esošās hipervizora iespējas un izveidot savas hipervizora opcijas, gan darbojoties uz aparatūras (piemēram, Xen), gan esošās programmatūras vidē (piemēram, VirtualBox). Ir iespējams palaist resursdatora vides operētājsistēmu atsevišķā virtuālajā mašīnā. Projekta kods tiek izplatīts saskaņā ar LGPL 2.1 licenci.

Bareflank nodrošina Linux, Windows un UEFI atbalstu 64 bitu Intel un AMD CPU. Intel VT-x tehnoloģija tiek izmantota virtuālās mašīnas resursu aparatūras sadalīšanai. Nākotnē plānots atbalsts macOS un BSD sistēmām, kā arī iespēja strādāt uz ARM64 platformas. Turklāt projektā tiek izstrādāts savs draiveris VMM ielādei (Virtual Machine Manager), ELF ielādētājs VVM moduļu ielādei un bfm lietojumprogramma hipervizora vadīšanai no lietotāja vietas. Tiek nodrošināts rīku komplekts paplašinājumu rakstīšanai, izmantojot C++11/14 specifikācijās definētos elementus, izņēmumu steka attīšanas bibliotēku (attīt), kā arī savu izpildlaika bibliotēku, lai atbalstītu konstruktoru/destruktoru izmantošanu un izņēmumu apstrādātāju reģistrāciju.

Uz Bareflank bāzes tiek izstrādāta Boxy virtualizācijas sistēma, kas atbalsta viessistēmu palaišanu un ļauj izmantot vieglas virtuālās mašīnas ar Linux un Unikernel, lai palaistu specializētus pakalpojumus vai lietojumprogrammas. Izolētu pakalpojumu veidā jūs varat palaist gan parastos tīmekļa pakalpojumus, gan lietojumprogrammas, kurām ir īpašas prasības attiecībā uz uzticamību un drošību, bez resursdatora vides ietekmes (resursdatora vide ir izolēta atsevišķā virtuālajā mašīnā). Bareflank ir arī MicroV hipervizora pamatā, kas paredzēts minimālistisku virtuālo mašīnu (vienas lietojumprogrammas virtuālās mašīnas) darbināšanai, kas ievieš KVM API un ir piemērota misijai kritisku sistēmu veidošanai.

Galvenie Bareflank 3.0 jauninājumi:

  • Pāreja uz mikrokodola koncepcijas izmantošanu. Iepriekš hipervizoram bija monolīta arhitektūra, kurā, lai paplašinātu funkcionalitāti, bija nepieciešams izmantot īpašu API atzvanu reģistrēšanai, kas apgrūtināja paplašinājumu izstrādi, jo bija saistīts ar C ++ valodu un iekšējiem elementiem. . Jaunā uz mikrokodolu balstītā arhitektūra sadala hipervizoru kodola komponentos, kas darbojas uz nulles aizsardzības gredzena, un paplašinājumos, kas darbojas trešajā gredzenā (lietotāja telpā). Abas daļas darbojas VMX saknes režīmā, bet viss pārējais, tostarp resursdatora vide, ne-root VMX režīmā. Lietotāja vietas paplašinājumi ievieš virtuālās mašīnas pārvaldnieka (VMM) funkcionalitāti un mijiedarbojas ar hipervizora kodolu, izmantojot atpakaļsaderīgus sistēmas izsaukumus. Paplašinājumus var izveidot jebkurā programmēšanas valodā, tostarp izmantojot Rust valodu.
  • Mēs pārgājām uz savas BSL bibliotēkas izmantošanu ar Rust un C++ atbalstu, kas aizstāja ārējās bibliotēkas libc++ un newlib. Ārējo atkarību noņemšana ļāva Bareflank ieviest vietējās Windows kompilācijas atbalstu, lai vienkāršotu izstrādi šajā platformā.
  • Pievienots atbalsts AMD procesoriem. Turklāt Bareflank izstrāde tagad tiek veikta sistēmā ar AMD CPU un tikai pēc tam tiek pārnesta uz Intel CPU.
  • Sāknēšanas ielādētājam ir pievienots atbalsts ARMv8 arhitektūrai, kuram hipervizora adaptācija tiks pabeigta vienā no nākamajiem laidieniem.
  • Sasniegta atbilstība kritisko sistēmu izstrādes prasībām, kuras formulējušas organizācijas AUTOSAR un MISRA.

Avots: opennet.ru

Pievieno komentāru