Per chi si avvicina per la prima volta al mondo dei sistemi operativi virtualizzati e in particolar modo di VirtualBox, la scelta del file disco da utilizzare per il S.O. Guest, risulta alquanto influente ai fini dell’utilizzo della macchina virtuale. I file disco risiedono sul sistema Host (sistema che ospita la macchina virtuale) e sono visti dai sistemi Guest (sistema ospitato o macchina virtuale) come dischi rigidi di una determinata dimensione e geometria. Quando un S.O. Guest legge o scrive sul disco rigido, VirtualBox reindirizza la richiesta al file immagine.
Nelle ultime versioni, VirtualBox dà all’utente la possibilità di scegliere tra diversi formati di file per l’immagine disco. Ma qual è realmente quello ottimale da scegliere, in grado di garantire le migliori prestazioni? e la scelta, è davvero solo legata alle prestazioni che vogliamo ottenere? In realtà no. La scelta del tipo di file è legata essenzialmente anche alla portabilità dell’immagine stessa.
Normalmente, VirtualBox utilizza il proprio formato VDI per i dischi rigidi Guest, ma, dalle ultime versioni, ha introdotto il supporto completo per il popolare formato VMDK che viene utilizzato da molti altri prodotti di virtualizzazione, come VMware, e il formato VHD compatibile coi sistemi Microsoft.
Mettiamo a confronto i tipi di file.
Allocazione dinamica dello spazio
VDI, VMDK e VHD supportano l’allocazione dinamica dello spazio utilizzato, ossia, il disco fisso della macchine Guest occuperà sulla macchine Host solo lo spazio realmente occupato (fino alla massima dimensione specificata in fase di creazione), ma non si ridurrà automaticamente nel caso lo spazio venga liberato.
Supporto agli Snapshot
Tutti e tre i file permettono di creare snapshot della propria macchina Guest su VirtualBox.
Portabilità
Mentre per i primi due aspetti trattati non vi sono controindicazioni che possono portare alla scelta di un formato o un altro, la scelta diventa fondamentale nel caso si voglia decidere di portare la macchina virtuale da una piattaforma ad un’altra.
- VDI è il formato nativo di VirtualBox, e attualmente non sembrerebbe essere compatibile con altri software di virtualizzazione.
- VMDK è sviluppato da VMWare, ma è utilizzato anche da xVM, QEMU, SUSE Studio e .NET DiscUtils.
- VHD è il formato nativo di Microsoft Virtual PC.
Prestazioni
Per quanto riguarda le prestazioni, il formato VDI sotto VirtualBox sembrerebbe avere una marcia in più. In realtà, tutto dipende molto dal tipo di hardware di cui si dispone. Su macchine Host dotate di SSD (solid-state-drive) e supporto alla virtualizzazione hardware la scelta del formato di file ha un impatto sulle prestazioni davvero trascurabile. Ad onor del vero, c’è da dire che anche l’allocazione dinamica potrebbe incidere sulle prestazioni della macchina Guest, in quanto, durante le operazioni di scrittura che richiedono un aumento della dimensione del file immagine, la macchina virtuale potrebbe soffrire soprattutto su sistemi dotati di HDD (hard-disk-drive), almeno fin quando le dimensioni del disco non diventano abbastanza grandi da contenere il necessario.
Il nuovo formato Parallels (HDD)
Per la cronaca, c’è da aggiungere che VirtualBox offre anche la possibilità di creare l’immagine del disco in formato HDD. Sul web non c’è molta documentazione che aiuti a capire l’utilità di tale supporto, ma dalle informazioni raccolte sembrerebbe che sia un tipo di disco creato dal software di virtualizzazione Parallels. Parallels è utilizzato per virtualizzare macchine Windows su S.O. Mac, quindi, è da utilizzare nel caso si voglia preparare una macchina Guest Windows da trasferire su un sistema MacOS.