È stato presentato il rilascio del hypervisor Cloud Hypervisor 48.0, creato sulla base dei componenti del progetto Rust-VMM, sviluppato con la partecipazione di Intel, Alibaba, Amazon, Google e Red Hat. Rust-VMM è scritto in linguaggio Rust e consente di creare hypervisor specifici per compiti determinati. Cloud Hypervisor è uno di questi hypervisor, che fornisce un monitor virtuale delle macchine (VMM) ad alto livello, operante sopra KVM o MSHV e ottimizzato per affrontare le sfide delle sistemi cloud. Il codice del progetto è disponibile sotto le licenze Apache 2.0 e BSD. L'hypervisor è stato originariamente creato da Intel ed è stato trasferito sotto il patrocinio dell'organizzazione Linux Foundation, dopo di che si sono uniti allo sviluppo aziende come Alibaba, AMD, Ampere, ARM, ByteDance, Cyberus Technology, Microsoft e Tencent Cloud.
Cloud Hypervisor è focalizzato sull'esecuzione di moderne distribuzioni Linux utilizzando dispositivi paravirtualizzati basati su virtio. Tra i principali obiettivi si menzionano: alta reattività, basso consumo di memoria, elevate prestazioni, semplificazione della configurazione e riduzione dei possibili vettori di attacco. È possibile il boot diretto del kernel del sistema operativo senza bootloader intermedi, consentendo un avvio molto rapido delle macchine virtuali (meno di 100 ms dal trasferimento del controllo alle applicazioni in user space).
Il supporto per l'emulazione è stato ridotto al minimo e la priorità è data alla paravirtualizzazione. Il progetto supporta le architetture x86_64, AArch64 e RISC-V. Tra i sistemi guest sono supportate le versioni a 64 bit di Linux e Windows 10/Windows Server 2019, ed è prevista la possibilità di utilizzare Cloud Hypervisor per l'esecuzione di container in macchine virtuali tramite il toolkit Kata Containers. È prevista la possibilità di migrazione live di macchine virtuali tra i server e gestione del ciclo di vita delle macchine virtuali tramite HTTP API.
Nella nuova versione:
- Sono state introdotte regole per l'applicazione degli strumenti AI nello sviluppo, che vietano l'uso di codice generato tramite modelli linguistici di grandi dimensioni e assistenti AI, come ChatGPT, Gemini, Claude e GitHub Copilot. La motivazione è il desiderio di evitare ambiguità nel rispetto dei requisiti di licenza (l'AI è stata addestrata su codice con diverse licenze e il codice generato potrebbe potenzialmente essere interpretato come un'opera derivata). Il divieto dell'AI è anche motivato dal desiderio di ridurre il carico sui mantenitori, liberandoli dall'analisi di correzioni prive di significato create tramite AI.
- È stato aggiunto il supporto sperimentale per il dispositivo fw_cfg (Firmware Configuration), che consente di trasferire dati e impostazioni dall'ambiente host al sistema guest, come la configurazione di avvio della macchina virtuale, informazioni sulla mappatura della memoria nel sistema e tabelle ACPI.
- È stato aggiunto il supporto sperimentale per il dispositivo ivshmem, che consente l'accesso condiviso di più sistemi guest a un'area di memoria comune.
- È stato aggiunto il supporto per il caricamento dei sistemi RISC-V tramite il passaggio del controllo al firmware (Firmware Boot) invece di lanciare direttamente il kernel del sistema operativo.
- Per gli host x86_64 che utilizzano il hypervisor KVM, il limite sul numero di processori virtuali disponibili (vCPU) è stato aumentato da 254 a 8192.
- Nel dispositivo virtio-blk è stata implementata un'ottimizzazione che utilizza il raggruppamento e l'elaborazione in batch delle richieste di input/output asincrone. Questa modifica ha permesso di aumentare le prestazioni nella gestione di blocchi di piccole dimensioni (<=16KB).
- Rendere più veloce l'esecuzione dell'operazione di sospensione macchine virtuali, particolarmente evidente nelle macchine virtuali con un alto numero di vCPU.
- È stata aggiunta documentazione per l'esecuzione di sistemi guest con Windows 11 sotto Cloud Hypervisor.
- È stato interrotto il supporto per la tecnologia Intel SGX (Software Guard Extensions).
Fonte: opennet.ru
