Kutolewa kwa hypervisor ya Bareflank 3.0

Bareflank 3.0 hypervisor ilitolewa, kutoa zana kwa ajili ya maendeleo ya haraka ya hypervisors maalumu. Bareflank imeandikwa katika C++ na inasaidia C++ STL. Usanifu wa kawaida wa Bareflank utakuruhusu kupanua kwa urahisi uwezo uliopo wa hypervisor na kuunda matoleo yako mwenyewe ya hypervisors, zote mbili zinazoendesha juu ya vifaa (kama Xen) na kukimbia katika mazingira ya programu iliyopo (kama VirtualBox). Inawezekana kuendesha mfumo wa uendeshaji wa mazingira ya mwenyeji katika mashine tofauti ya virtual. Msimbo wa mradi unasambazwa chini ya leseni ya LGPL 2.1.

Bareflank inasaidia Linux, Windows na UEFI kwenye Intel na AMD CPU za 64-bit. Teknolojia ya Intel VT-x inatumika kwa kushiriki maunzi ya rasilimali za mashine pepe. Msaada wa mifumo ya macOS na BSD imepangwa kwa siku zijazo, pamoja na uwezo wa kufanya kazi kwenye jukwaa la ARM64. Zaidi ya hayo, mradi unatengeneza kiendeshi chake cha kupakia VMM (Kidhibiti cha Mashine ya Kweli), kipakiaji cha ELF cha kupakia moduli za VVM, na programu ya bfm ya kudhibiti hypervisor kutoka kwa nafasi ya mtumiaji. Inatoa zana za kuandika viendelezi kwa kutumia vipengee vilivyofafanuliwa katika vipimo vya C++11/14, maktaba ya kutendua safu ya kipekee (kupumzisha), pamoja na maktaba yake ya wakati wa utekelezaji ili kusaidia utumiaji wa wajenzi/waharibifu na kusajili vidhibiti vighairi.

Kulingana na Bareflank, mfumo wa uboreshaji wa Boxy unatengenezwa, ambao unaauni mifumo ya uendeshaji ya wageni na kuruhusu matumizi ya mashine nyepesi nyepesi zilizo na Linux na Unikernel kuendesha huduma au programu maalum. Katika mfumo wa huduma zilizotengwa, unaweza kuendesha huduma za kawaida za wavuti na programu ambazo zina mahitaji maalum ya kuegemea na usalama, bila ushawishi wa mazingira ya mwenyeji (mazingira ya mwenyeji yametengwa katika mashine tofauti ya kawaida). Bareflank pia ni msingi wa microV hypervisor, iliyoundwa na kuendesha mashine minimalistic virtual (mashine moja ya maombi virtual), kutekeleza KVM API na inafaa kwa ajili ya kujenga mifumo ya dhamira muhimu.

Ubunifu kuu wa Bareflank 3.0:

  • Mpito kwa kutumia dhana ya microkernel. Hapo awali, hypervisor ilikuwa na usanifu wa monolithic, ambayo, ili kupanua utendaji, ilikuwa ni lazima kutumia API maalum kwa ajili ya kusajili simu za kurudi nyuma, ambayo ilifanya kuwa vigumu kuendeleza upanuzi kutokana na kumfunga kwa lugha ya C ++ na muundo wa ndani. Usanifu mpya wa msingi wa microkernel unahusisha kugawanya hypervisor katika vipengele vya kernel vinavyoendesha kwenye sifuri ya pete ya ulinzi na viendelezi vinavyoendesha kwenye pete tatu (nafasi ya mtumiaji). Sehemu zote mbili zinaendeshwa katika hali ya mizizi ya VMX, na kila kitu kingine, ikiwa ni pamoja na mazingira ya mwenyeji, huendesha katika hali isiyo ya mizizi ya VMX. Viendelezi vya nafasi ya mtumiaji hutekeleza utendakazi wa Kidhibiti cha Mashine ya Mtandao (VMM) na kuingiliana na msingi wa hypervisor kupitia simu za mfumo ambazo zinatangamana na kurudi nyuma. Viendelezi vinaweza kuundwa katika lugha yoyote ya programu, ikiwa ni pamoja na Rust.
  • Mabadiliko yamefanywa kwa matumizi ya maktaba yetu ya BSL kwa kutumia Rust na C++, ambayo ilibadilisha maktaba za nje libc++ na newlib. Kwa kuondoa utegemezi wa nje, Bareflank hutoa usaidizi wa utungaji wa Windows asilia ili kurahisisha maendeleo kwenye jukwaa hilo.
  • Msaada ulioongezwa kwa wasindikaji wa AMD. Kwa kuongezea, ukuzaji wa Bareflank sasa unafanywa kwenye mfumo na AMD CPU na kisha kuhamishwa kwa Intel CPU.
  • Bootloader imeongeza usaidizi kwa usanifu wa ARMv8, urekebishaji wa hypervisor ambayo itakamilika katika moja ya matoleo yanayofuata.
  • Kuhakikisha kufuata mahitaji ya maendeleo ya mifumo muhimu iliyoundwa na AUTOSAR na mashirika ya MISRA.

Chanzo: opennet.ru

Kuongeza maoni