Come molti progetti open source, VirtualBox ha avuto un’esistenza piuttosto travagliata: sviluppato inizialmente dall’azienda tedesca Innotek, è stato acquisito da Sun nel 2008, per poi finire sotto il controllo di Oracle due anni più tardi. Lo sviluppo di questo ambiente di virtualizzazione gratuito sembrava poi aver subito un rallentamento, tanto che i più pessimisti avevano iniziato a nutrire dubbi sulle reali intenzioni di Oracle nei confronti del progetto. Ma le nubi sono state spazzate via lo scorso anno, quando hanno iniziato a circolare le prime versioni beta di quella che sarebbe divenuta la nuova major release: VirtualBox 5, che dopo essere stato rilasciato in versione definitiva è stato seguito da molte versioni di manutenzione, dedicate alla soluzione dei problemi emersi nei primi mesi di vita. Nel momento in cui scriviamo si può scaricare la versione 5.0.16, distribuita a inizio marzo, a testimonianza di una notevole attività da parte degli sviluppatori nel supporto del prodotto dopo il lancio della versione 5.0.
Nonostante si sia fatto attendere a lungo, VirtualBox 5 non è stato rivoluzionato nell’aspetto: l’impostazione dell’interfaccia è rimasta sostanzialmente immutata, con qualche piccola ottimizzazione per migliorare il supporto agli schermi HiDpi (ovvero ad alta densità di pixel). In realtà la compatibilità non è ancora completa: le icone del programma sono state aggiornate e il desktop dei sistemi guest può essere scalato facilmente, ma gli elementi dell’interfaccia del programma non sono ancora del tutto compatibili. Le novità sono visibili solo a un esame attento, ma questo non significa che siano poco importanti: al contrario, i miglioramenti e le nuove funzioni fanno recuperare a VirtualBox molto del terreno che aveva perduto negli ultimi anni nei confronti dei software commerciali del settore, come VMware Workstation o Parallels Desktop. Come nelle versioni precedenti, l’installazione avviene in due fasi: prima si scarica e si installa il file eseguibile per il proprio sistema operativo (sono disponibili installer per Windows, OS X, Linux e Solaris), e poi si aggiunge l’Extension pack che aumenta le funzioni e la compatibilità hardware. Questa procedura può sembrare inutilmente complessa, ma è necessaria per garantire una migliore compatibilità hardware pur mantenendo il software sotto la licenza Gpl v2. Installare l’Extension pack è comunque semplicissimo: basta fare doppio clic sul file con estensione .Vbox-extpack e rispondere positivamente alla finestra di conferma.
Creare una macchina virtuale è semplice come in passato, grazie alla procedura che guida l’utente passo per passo lungo le principali operazioni di configurazione dell’hardware virtualizzato. Purtroppo gli sviluppatori di VirtualBox non hanno ancora corretto un problema banale ma molto fastidioso, che riguarda i requisiti dei sistemi operativi guest. All’inizio della procedura guidata si può selezionare il sistema operativo da installare nell’ambiente virtuale; in teoria, questa prima configurazione dovrebbe permettere a VirtualBox di impostare le principali caratteristiche dell’ambiente virtuale per garantire un funzionamento senza problemi. Invece in alcuni casi la configurazione proposta è sbagliata: eclatante è il caso di Windows 7, a cui VirtualBox assegna per default 512 Mbyte di memoria Ram anche se i requisiti minimi sono 1 Gbyte per la versione a 32 bit e ben 2 Gbyte per quella a 64 bit; a causa di questo errore l’installazione del sistema operativo si interrompe con un errore.
Le novità , dicevamo, possono essere individuate scorrendo le proprietà disponibili nelle finestre di configurazione della macchina virtuale. La principale è sicuramente il supporto delle tecnologie di paravirtualizzazione per i guest Windows e Linux: si tratta di Api che consentono l’esecuzione di alcune funzioni non nel sistema emulato ma in quello fisico, con notevoli vantaggi in termini prestazionali e nella precisione del clock. VirtualBox supporta alcune delle tecnologie di paravirtualizzazione più diffuse, tra cui Hyper-V e KVM. Molte innovazioni, piccole e grandi, migliorano la compatibilità con l’hardware più recente: per esempio, è stato esteso il supporto ai set di istruzioni addizionali introdotti dalle ultime generazioni di processori, sia quelli riguardanti la virtualizzazione (Intel VT-x, Amd-V e Via VT) sia quelli di interesse più generale (SSE4.1 e 4.2, Aes-Ni e altri), che vengono esposti verso i sistemi operativi guest. Il supporto hardware alla virtualizzazione permette di abilitare funzioni come la Second Level Address Translation (Slat), detta anche paginazione nidificata. Questo insieme di funzioni permette di eseguire in hardware molte operazioni legate alla gestione delle pagine di memoria, ottenendo significativi vantaggi prestazionali.
Dal punto di vista della compatibilità hardware, la novità più apprezzata dagli utenti desktop sarà certamente il supporto alle periferiche Usb 3.0, associato a un notevole miglioramento delle prestazioni anche dei driver per la versione 2.0 di questo standard (da sempre un punto debole di VirtualBox). Apprezzabile è anche la nuova interfaccia grafica per gestire il collegamento delle unità removibili alle macchine virtuali. A proposito di interfaccia, VirtualBox permette di personalizzare le icone visualizzate nella barra di stato e i comandi della toolbar delle finestre delle macchine virtuali: una funzione che si rivela insospettabilmente utile, poiché permette di riorganizzare le informazioni e mostrare soltanto i dati importanti. Molto migliorato è anche il supporto per il trascinamento di file e cartelle (drag and drop) e la condivisione degli appunti tra host e guest: queste funzioni devono essere attivate a mano nella configurazione della macchina virtuale ma poi funzionano in modo stabile e affidabile, al contrario di quanto accadeva in passato.
Per attivare queste funzioni di utilità è necessario che il sistema ospitato all’interno della macchina virtuale sia in qualche modo “cosciente” dell’ambiente circostante e possa comunicare con il software di virtualizzazione. Questo avviene per mezzo delle cosiddette Guest Additions, un pacchetto da installare all’interno del sistema virtualizzato che abilita funzioni come il passaggio fluido del puntatore dall’ambiente guest all’host e viceversa, le cartelle condivise, il trasferimento degli appunti, il drag and drop di file e cartelle e altro ancora. Le Guest Additions permettono di attivare anche le cosiddette Seamless Windows, ossia l’estrazione di applicazioni dall’ambiente virtualizzato: le finestre selezionate vengono mostrate sul desktop principale come se fossero programmi nativi.
L’utility permette poi di attivare una nuova, importante funzione: la cifratura delle macchine virtuali. VirtualBox 5, infatti, può criptare le Vm con l’algoritmo Aes a 128 o 256 bit; la protezione, come prevedibile, impatta leggermente sulle prestazioni, ma garantisce un ottimo livello di protezione: gli hard disk virtuali, infatti, rimangono protetti anche quando la macchina virtuale è avviata.
Come in passato, VirtualBox si segnala anche per l’ottima compatibilità con gli standard del settore: per esempio, supporta tutti i principali formati di hard disk virtuale, sia quelli nativi sia quelli della concorrenza (VMware e Virtual PC/Hyper-V).
Non mancano neppure le funzioni più avanzate per manipolare lo stato della macchina virtuale: le Vm possono essere messe in pausa e ripristinate in un momento successivo, duplicate e congelate salvando lo stato attuale in un’istantanea anche quando sono attive. L’esecuzione può avvenire in finestra, in modalità headless (utile per i server e le appliance che offrono interfacce Web o l’accesso remoto via terminale) o in una modalità ibrida (chiamata “sganciabile”) che divide l’interfaccia utente dalla macchina virtuale vera e propria e consente un controllo separato dei due elementi.
Notevole, infine, è l’opzione per limitare la percentuale massima di Cpu dedicata alle Vm: non si tratta di una novità , ma è una caratteristica molto apprezzabile di VirtualBox e inspiegabilmente non è ancora stata implementata da tutti i concorrenti.
Dario Orlandi
Oracle VirtualBox 5.0.12
Gratuito
PRO
Compatibilità hardware arricchita
Supporto alla paravirtualizzazione
Cifratura completa delle macchine virtuali
CONTRO
Gestione dei requisiti migliorabile
Supporto dei monitor HiDpi non completo
Produttore: Oracle, www.virtualbox.org