Kuburitswa kweBareflank 2.0 hypervisor

zvakaitika hypervisor kusunungurwa Bareflank 2.0, iyo inopa maturusi ekukurumidza kukura kweakakosha hypervisors. Bareflank yakanyorwa muC ++ uye inotsigira C++ STL. Iyo modular architecture yeBareflank ichakubvumidza iwe kuti uwedzere nyore hunyanzvi huripo hweiyo hypervisor uye kugadzira yako yega shanduro dze hypervisors, zvese zviri kumhanya pamusoro pe Hardware (seXen) uye ichimhanya mune iripo software nharaunda (seVirtualBox). Izvo zvinokwanisika kumhanyisa sisitimu yekushandisa yenzvimbo yevaenzi mune yakaparadzana virtual muchina. Project code inoparadzirwa ne ine rezinesi pasi pe LGPL 2.1.

Bareflank inotsigira Linux, Windows uye UEFI pa64-bit Intel CPUs. Intel VT-x tekinoroji inoshandiswa pakugovaniswa kwehardware yemuchina chaiwo zviwanikwa. Tsigiro yeMacOS uye BSD masisitimu yakarongerwa ramangwana, pamwe nekugona kushanda paARM64 uye AMD mapuratifomu. Pamusoro pezvo, chirongwa ichi chiri kugadzira mutyairi wayo wekurodha VMM (Virtual Machine Manager), ELF loader yekurodha VVM modules, uye bfm application yekudzora hypervisor kubva munzvimbo yemushandisi. Inopa maturusi ekunyora mawedzero uchishandisa zvinhu zvinotsanangurwa muC ++ 11/14 zvakatemwa, raibhurari yekusunungura iyo yakasarudzika stack (unwind), pamwe neyayo yekumhanyisa raibhurari yekutsigira kushandiswa kwevanovaka / vaparadzi uye kunyoresa kunze kwekubata.

Iyo virtualization system iri kugadzirwa yakavakirwa paBareflank Mabhokisi, iyo inotsigira kumhanyisa masisitimu evaenzi uye inobvumira kushandiswa kweakareruka chaiwo muchina neLinux neUnikernel kuti imhanye masevhisi ehunyanzvi kana maapplication. Muchimiro chemasevhisi akasarudzika, unogona kumhanyisa ese akajairwa webhu masevhisi uye maapplication ane zvakakosha zvinodiwa zvekuvimbika uye kuchengetedzeka, mahara kubva mukufurirwa kwenzvimbo yevaenzi (nzvimbo yekutambira yakasarudzika mune yakaparadzana chaiyo muchina).

Iwo makuru matsva eBareflank 2.0:

  • Yakawedzerwa rutsigiro rwekutanga Bareflank zvakananga kubva kuUEFI yekuzotevera kuurayiwa kweiyo inoshanda sisitimu mumushini chaiwo;
  • Maneja mutsva wekurangarira akaitwa, akagadzirwa zvakafanana neSLAB/Buddy memory mamaneja muLinux. Iyo nyowani yekurangarira maneja inoratidza kuderedzwa kupatsanurwa, inobvumira kuita kwepamusoro uye inotsigira simba rekurangarira kugoverwa kune hypervisor kuburikidza. bfdriver, iyo inokutendera kuti uderedze saizi yekutanga ye hypervisor uye optimally kuyera zvichienderana nehuwandu hweCPU cores;
  • Iyo nyowani yekuvaka sisitimu yakavakirwa paCMake, yakazvimirira pamuturikiri wekuraira, inobvumira kukurumidza kukuru kweiyo hypervisor kuunganidzwa uye inorerutsa rutsigiro rweramangwana kune mamwe mavakirwo, akadai seARM;
  • Iyo kodhi yakarongwa patsva uye chimiro chezvinyorwa zvemabviro chave nyore. Rutsigiro rwakavandudzwa rwemapurojekiti ane hukama senge hyperkernel pasina kudiwa kwekudzokorodza kodhi. Kodhi yakapatsanurwa zvakanyanya hypervisor, kusunungura raibhurari, nguva yekumhanya, kudzora maturusi, bootloader uye SDK;
  • Yakawanda yeAPI, pachinzvimbo chezvakamboshandiswa nhaka nzira muC ++, yakachinjirwa kushandisa delegation, iyo yakarerutsa API, yakawedzera kuita uye kuderedzwa kwekushandisa zviwanikwa.

Source: opennet.ru

Voeg