I lavori sul ramo di sviluppo di Linux 5.19 procedono a gonfie vele. Le scorsa settimana ad esempio vi abbiamo parlato delle novità inerenti ai driver per il file system Btrfs, che consentono un boost prestazionale non indifferente, e delle innovazioni in arrivo nel networking subsystem, cioè quella parte del kernel che amministra la connessione di rete e va ad interfacciarsi con i diversi componenti hardware dedicati. Quest'oggi invece vogliamo focalizzarci su una serie di patch rilasciate dai coder Microsoft che permettono di velocizzare notevolmente l'Hyper-V Boot Time, migliorando quindi l'esperienza utente con le macchine virtuali Linux esegue all'interno della piattaforma cloud Azure.
L''Hyper-V, conosciuto in passato anche come Windows Server Virtualization, è un hypervisor nativo, ovvero quel componente software che consente di gestire e creare macchine virtuali sulle piattaforma hardware x86_64. Questo software è in buona "supervisiona" e rende accessibili ed eseguibile dall'utente tutte le virtual machine presenti nella macchina host.
È proprio tramite un hypervisor come Hyper-V che è possibile ad esempio avviare contemporaneamente più sistemi guest, ovvero le macchine virtuali, su di un unico PC host dando accesso a risorse hardware diverse ad ognuno di essi. Tale tipologia di programma dunque risulta essere vitale all'interno di qualsiasi piattaforma cloud, come Azure oppure AWS (Amazon Web Services).
Le nuove patch in arrivo su Linux 5.19 riguardano nel dettaglio il driver per l'Hyper-V PCI e vanno a regolare il parametro chiamato "PCI_COMMAND_MEMORY" in modo tale da evitare di bloccare il processo di avvio del sistema durante le procedura di unmap/map delle vBAR/pBAR. Tale operazione, nelle VM (Virtual Machine) accelerate tramite varie GPU e con 128GB di RAM (Random Access Memory), può richiedere diversi secondi e viene eseguito circa otto volte con l'attuale driver durante le fasi di lancio della macchina virtuale.
Proprio grazie a tali patch i developer Microsoft hanno stimato di aver ridotto di ben tre minuti il boot time delle Azure VM con Linux. Un risultato notevole, soprattutto per gli utenti della piattaforma che necessitano di eseguire ed amministrare decine di macchine virtuali.