Bareflank 2.0 fa'asa'olotoga hypervisor

na tupu fa'amalologa hypervisor Bareflank 2.0, lea e maua ai meafaigaluega mo le atinaʻeina vave o hypervisors faʻapitoa. O le Bareflank o loʻo tusia ile C++ ma lagolagoina C++ STL. O le fausaga faʻapitoa a Bareflank o le a faʻatagaina oe e faʻalauteleina le gafatia o loʻo i ai nei o le hypervisor ma fatuina au oe lava faʻasologa o hypervisors, o loʻo taʻavale uma i luga o meafaigaluega (pei o Xen) ma taʻavale i totonu o se siosiomaga polokalama faʻapipiʻi (pei o VirtualBox). E mafai ona faʻatautaia le faʻaogaina o le faʻaogaina o le siosiomaga talimalo i totonu o se masini vaʻaia eseese. Poloketi code tufatufaina e laiseneina ile LGPL 2.1.

E lagolagoina e Bareflank Linux, Windows ma UEFI i luga ole 64-bit Intel CPUs. Intel VT-x tekinolosi e fa'aaogaina mo le fa'asoaina o meafaigaluega o punaoa masini masini. Lagolago mo macOS ma BSD faiga ua fuafuaina mo le lumanaʻi, faʻapea foʻi ma le mafai ona galue i luga ole ARM64 ma AMD faʻavae. E le gata i lea, o le poloketi o loʻo atiaʻe lana lava avetaʻavale mo le utaina o le VMM (Virtual Machine Manager), o le ELF loader mo le utaina o le VVM modules, ma le bfm application mo le puleaina o le hypervisor mai avanoa faʻaoga. E maua ai meafaigaluega mo le tusiaina o faʻaopoopoga e faʻaaoga ai elemene o loʻo faʻamatalaina i le C ++ 11/14 faʻamatalaga, o se faletusi mo le tatalaina o le faʻapipiʻi tuusaunoaga (faʻamalo), faʻapea foʻi ma lana lava faletusi taʻavale e lagolago ai le faʻaogaina o tagata faufale / faʻaleagaina ma le resitalaina o tagata faʻapitoa.

O loʻo atiaʻe se faiga faʻapitoa e faʻavae ile Bareflank Pusa, lea e lagolagoina le faʻaogaina o faiga faʻapitoa ma faʻatagaina le faʻaogaina o masini mama mama ma Linux ma Unikernel e faʻatautaia ai auaunaga faʻapitoa poʻo talosaga. I le tulaga o auʻaunaga tuʻufua, e mafai ona e faʻatautaia uma 'auʻaunaga i luga ole laiga masani ma talosaga e iai manaʻoga faʻapitoa mo le faʻamaoni ma le saogalemu, saoloto mai le aʻafiaga o le siosiomaga talimalo (o le siosiomaga talimalo e vavae ese i se masini masini eseese).

O mea fou fou a Bareflank 2.0:

  • Faʻaopoopo le lagolago mo le faʻalauiloaina o le Bareflank saʻo mai le UEFI mo le faʻatinoina o le faiga faʻaogaina i totonu o se masini masini;
  • Ua faʻatinoina se pule fou manatua, faʻatulagaina tutusa ma le SLAB / Buddy memory managers i Linux. O le pule fou o manatuaga e faʻaalia ai le faʻaitiitia o le vaevaega, faʻatagaina mo le maualuga o le faʻatinoga ma lagolagoina le faʻaogaina o mafaufauga i le hypervisor e ala i bfdriver, lea e mafai ai e oe ona faʻaititia le tele muamua o le hypervisor ma sili ona lelei le fua faʻatatau i le numera o pusa CPU;
  • O se faiga fou fau fa'avae i luga o le CMake, e tuto'atasi mai le fa'aliliuupu fa'atonu, fa'ataga mo le fa'avavevave tele o le tu'ufa'atasiga o le hypervisor ma fa'afaigofieina le lagolago i le lumana'i mo fa'ailoga fa'aopoopo, e pei o le ARM;
  • Ua toe fa'atulagaina le fa'ailoga ma ua fa'afaigofie le fa'atulagaina o tusitusiga fa'apogai. Fa'aleleia atili le lagolago mo galuega fa'atatau e pei ole hyperkernel e aunoa ma le mana'omia o le fa'aluaina o fa'ailoga. Fa'ailoga manino tu'ueseese hypervisor, fa'amama le faletusi, ta'aloga ta'avale, mea faigaluega fa'atonu, fa'apipi'i ma SDK;
  • O le tele o le API, nai lo le faʻaaogaina muamua o measina i le C++, ua suia i le faʻaaogaina aumalaga, lea na faafaigofieina ai le API, faʻateleina le faʻatinoga ma faʻaitiitia le faʻaaogaina o punaoa.

puna: opennet.ru

Faaopoopo i ai se faamatalaga