Lansarea hypervisorului Bareflank 2.0

a avut loc eliberarea hypervisorului Bareflak 2.0, care oferă instrumente pentru dezvoltarea rapidă a hipervizoarelor specializate. Bareflank este scris în C++ și acceptă C++ STL. Arhitectura modulară a Bareflank vă va permite să extindeți cu ușurință capacitățile existente ale hipervizorului și să vă creați propriile versiuni de hipervizor, atât rulând pe hardware (cum ar fi Xen), cât și rulând într-un mediu software existent (cum ar fi VirtualBox). Este posibil să rulați sistemul de operare al mediului gazdă într-o mașină virtuală separată. Cod proiect distribuit de licențiat conform LGPL 2.1.

Bareflank acceptă Linux, Windows și UEFI pe procesoare Intel pe 64 de biți. Tehnologia Intel VT-x este utilizată pentru partajarea hardware a resurselor mașinilor virtuale. Suportul pentru sistemele macOS și BSD este planificat pentru viitor, precum și capacitatea de a lucra pe platformele ARM64 și AMD. În plus, proiectul dezvoltă propriul driver pentru încărcarea VMM (Virtual Machine Manager), un încărcător ELF pentru încărcarea modulelor VVM și o aplicație bfm pentru controlul hypervisorului din spațiul utilizatorului. Oferă instrumente pentru scrierea extensiilor folosind elemente definite în specificațiile C++ 11/14, o bibliotecă pentru desfășurarea stivei de excepții (unwind), precum și propria bibliotecă de rulare pentru a sprijini utilizarea constructorilor/destructorilor și înregistrarea gestionatorilor de excepții.

Se dezvoltă un sistem de virtualizare bazat pe Bareflank boxy, care acceptă rularea sistemelor invitați și permite utilizarea mașinilor virtuale ușoare cu Linux și Unikernel pentru a rula servicii sau aplicații specializate. Sub formă de servicii izolate, puteți rula atât servicii web obișnuite, cât și aplicații care au cerințe speciale de fiabilitate și securitate, fără influența mediului gazdă (mediul gazdă este izolat într-o mașină virtuală separată).

Principalele inovații ale Bareflank 2.0:

  • S-a adăugat suport pentru lansarea Bareflank direct din UEFI pentru execuția ulterioară a sistemului de operare într-o mașină virtuală;
  • A fost implementat un nou manager de memorie, proiectat similar managerilor de memorie SLAB/Buddy din Linux. Noul manager de memorie demonstrează o fragmentare redusă, permite performanțe mai mari și acceptă alocarea dinamică a memoriei către hypervisor prin bfdriver, care vă permite să reduceți dimensiunea inițială a hypervisorului și să scalați optim în funcție de numărul de nuclee CPU;
  • Un nou sistem de construcție bazat pe CMake, independent de interpretul de comandă, permite o accelerare semnificativă a compilării hypervisorului și simplifică suportul viitor pentru arhitecturi suplimentare, cum ar fi ARM;
  • Codul a fost reorganizat și structura textelor sursă a fost simplificată. Suport îmbunătățit pentru proiecte conexe, cum ar fi hyperkernel, fără a fi nevoie de duplicarea codului. Cod separat mai explicit hipervizor, biblioteca de derulare, runtime, instrumente de control, bootloader și SDK;
  • Majoritatea API-ului, în locul mecanismelor de moștenire utilizate anterior în C++, au fost trecute la utilizarea delegație, care a simplificat API-ul, a crescut performanța și a redus consumul de resurse.

Sursa: opennet.ru

Adauga un comentariu