Izdanje hipervizora Bareflank 3.0

Objavljen je hipervizor Bareflank 3.0 koji pruža alate za brzi razvoj specijaliziranih hipervizora. Bareflank je napisan u C++ i podržava C++ STL. Modularna arhitektura Bareflanka omogućit će vam jednostavno proširenje postojećih mogućnosti hipervizora i stvaranje vlastitih verzija hipervizora, koji rade na vrhu hardvera (kao što je Xen) i rade u postojećem softverskom okruženju (kao što je VirtualBox). Moguće je pokrenuti operativni sustav glavnog okruženja u zasebnom virtualnom stroju. Projektni kod se distribuira pod licencom LGPL 2.1.

Bareflank podržava Linux, Windows i UEFI na 64-bitnim Intel i AMD procesorima. Intel VT-x tehnologija koristi se za hardversko dijeljenje resursa virtualnog stroja. U budućnosti je planirana podrška za macOS i BSD sustave, kao i mogućnost rada na ARM64 platformi. Dodatno, projekt razvija vlastiti upravljački program za učitavanje VMM (Virtual Machine Manager), ELF loader za učitavanje VVM modula i bfm aplikaciju za kontrolu hipervizora iz korisničkog prostora. Pruža alate za pisanje proširenja pomoću elemenata definiranih u specifikacijama C++11/14, biblioteku za odmotavanje hrpe izuzetaka (unwind), kao i vlastitu biblioteku vremena izvođenja za podršku upotrebe konstruktora/destruktora i registraciju rukovatelja iznimkama.

Na temelju Bareflanka razvija se virtualizacijski sustav Boxy koji podržava rad gostujućih sustava i omogućuje korištenje laganih virtualnih strojeva s Linuxom i Unikernelom za pokretanje specijaliziranih servisa ili aplikacija. U obliku izoliranih servisa, možete pokrenuti i obične web servise i aplikacije koje imaju posebne zahtjeve za pouzdanošću i sigurnošću, bez utjecaja host okruženja (host okruženje je izolirano u posebnom virtualnom stroju). Bareflank je također osnova MicroV hipervizora, dizajniranog za pokretanje minimalističkih virtualnih strojeva (virtualni stroj s jednom aplikacijom), implementira KVM API i prikladan je za stvaranje kritičnih sustava.

Glavne inovacije Bareflanka 3.0:

  • Prijelaz na korištenje koncepta mikrojezgre. Prethodno je hipervizor imao monolitnu arhitekturu, u kojoj je za proširenje funkcionalnosti bilo potrebno koristiti poseban API za registraciju povratnih poziva, što je otežavalo razvoj ekstenzija zbog vezivanja za jezik C++ i internu strukturu. Nova arhitektura temeljena na mikrojezgri uključuje podjelu hipervizora na komponente jezgre koje rade na prstenu nula zaštite i proširenja koja rade na prstenu tri (korisnički prostor). Oba dijela rade u VMX root modu, a sve ostalo, uključujući host okruženje, radi u VMX non-root modu. Proširenja korisničkog prostora implementiraju funkcionalnost Virtual Machine Managera (VMM) i komuniciraju s jezgrom hipervizora putem sistemskih poziva koji su kompatibilni s prethodnim verzijama. Proširenja se mogu izraditi u bilo kojem programskom jeziku, uključujući Rust.
  • Napravljen je prijelaz na korištenje vlastite BSL biblioteke s podrškom za Rust i C++, koja je zamijenila vanjske biblioteke libc++ i newlib. Uklanjanjem vanjskih ovisnosti, Bareflank pruža izvornu podršku za Windows kompilaciju kako bi se pojednostavio razvoj na toj platformi.
  • Dodana podrška za AMD procesore. Štoviše, razvoj Bareflanka sada se provodi na sustavu s AMD CPU-om i tek tada se prenosi na Intelov CPU.
  • Bootloader je dodao podršku za ARMv8 arhitekturu, čija će prilagodba hipervizora biti dovršena u jednom od sljedećih izdanja.
  • Osigurana usklađenost sa zahtjevima za razvoj kritičnih sustava koje su formulirale organizacije AUTOSAR i MISRA.

Izvor: opennet.ru

Dodajte komentar