Rilascio del hypervisor Bareflank 2.0

Si è svolto rilascio dell'iperdispositivo Bareflank 2.0, che fornisce strumenti per lo sviluppo rapido di iperdispositivi specializzati. Bareflank è scritto in C++ e supporta C++ STL. L'architettura modulare di Bareflank consente di espandere facilmente le capacità esistenti dell'iperdispositivo e di creare varianti personalizzate di iperdispositivi, sia eseguibili direttamente sull'hardware (come Xen) sia in ambienti software esistenti (come VirtualBox). È possibile eseguire il sistema operativo dell'ambiente host in una macchina virtuale separata. Il codice del progetto distribuito è rilasciato sotto licenza LGPL 2.1.

Bareflank supporta Linux, Windows e UEFI su CPU Intel a 64 bit. Per la separazione hardware delle risorse delle macchine virtuali viene utilizzata la tecnologia Intel VT-x. È prevista in futuro il supporto per macOS e sistemi BSD, così come la possibilità di funzionare su piattaforme ARM64 e AMD. Inoltre, il progetto sviluppa un proprio driver per il caricamento del VMM (Virtual Machine Manager), un caricatore ELF per il caricamento dei moduli VVM, e un'applicazione bfm per gestire l'iperdispositivo dallo spazio utente. Viene fornito uno strumento per scrivere estensioni utilizzando elementi definiti nelle specifiche C++11/14, una libreria di unwinding per gestire le eccezioni, e anche una propria libreria runtime per supportare l'uso di costruttori/distruttori e la registrazione dei gestori di eccezioni.

Sulla base di Bareflank si sta sviluppando un sistema di virtualizzazione Boxy, che supporta l'esecuzione di sistemi guest e consente l'utilizzo di macchine virtuali leggere con Linux e Unikernel per eseguire servizi o applicazioni specializzate. Nella forma di servizi isolati, è possibile eseguire sia normali servizi web sia applicazioni che presentano requisiti particolari in termini di affidabilità e sicurezza, isolate dall'influenza dell'ambiente host (l'ambiente host viene isolato in una macchina virtuale separata).

Le principali novità di Bareflank 2.0:

  • Aggiunto il supporto per l'avvio di Bareflank direttamente da UEFI per eseguire successivamente il sistema operativo in una macchina virtuale;
  • Implementato un nuovo gestore della memoria, progettato in modo simile ai gestori della memoria SLAB/Buddy in Linux. Il nuovo gestore della memoria mostra una riduzione della frammentazione, consente di ottenere prestazioni più elevate e supporta l'allocazione dinamica di memoria per l'iperdispositivo attraverso bfdriver, che consente di ridurre la dimensione iniziale dell'iperdispositivo e scalare in modo ottimale in base al numero di core CPU;
  • Un nuovo sistema di build basato su CMake, indipendente dall'interprete della riga di comando, che consente di accelerare significativamente la compilazione dell'iperdispositivo e semplificare il supporto futuro per ulteriori architetture, come ARM;
  • Eseguita la riorganizzazione del codice e semplificata la struttura dei sorgenti. Migliorato il supporto per progetti correlati, come hyperkernel, senza la necessità di duplicare codice. Il codice è stato separato in modo più chiaro iper-vettore, libreria di unwind, runtime, strumenti di gestione, caricatore e SDK;
  • La maggior parte delle API, invece dei precedenti meccanismi di ereditarietà in C++, sono state migrate per utilizzare delegare, il che ha semplificato l'API, migliorato le prestazioni e ridotto l'uso delle risorse.

Fonte: opennet.ru

Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS 🔥 Acquista hosting affidabile per siti web con protezione DDoS, server VPS VDS | ProHoster