Cosa sono le macchine virtuali?

 

In questo articolo ho intenzione di spiegare cosa siano le macchine virtuali, conosciute anche come VM o Virtual Machines, senza però affrontarlo da un punto di vista troppo tecnico. Spero in questo modo di riuscire a farle comprendere a tutti, indipendentemente dalle cognizioni informatiche.

 

Fondamentalmente una VM è un sistema operativo che funziona dentro un altro sistema operativo, come fosse un programma. Il tutto è possibile grazie ad un software che funge da intermediario; i nomi più famosi sono VMWare WorkStation e VMWare Player, Virtual Box e Virtual PC.

Il sistema operativo che ospita prende il nome di HOST, mentre l’ospitato sarà il GUEST.

 

Perchè una VM possa funzionare correttamente è necessario che il processore del computer supporti la tecnologia di virtualizzazione; tutti i processori Intel e AMD usciti negli ultimi 2-3 anni supportano tale funzionalità e, comunque, è facilmente riscontrabile cercando su Google il nome del processore: se nelle caratteristiche troviamo Intel VT o AMD-V siamo a cavallo.

 

La presenza di questa caratteristica a bordo delle CPU ha un notevole vantaggio che si traduce nell’accesso diretto da parte della VM al processore reale; se mancassero invece sarebbe il programma di virtualizzazione a creare un processore virtuale da “installare” nella VM.

 

All’interno della macchina virtuale possiamo installare qualsiasi programma come se lo stessimo facendo su un pc fisico ma con qualche limitazione un più, soprattutto per quanto riguarda la sezione grafica: è solitamente la scheda video a dare qualche grattacapo in quanto non sempre viene riconosciuta a dovere e le sue prestazioni all’interno della VM sono generalmente scarse. Cosa vuol dire? Che in una VM sarà difficile poter giocare, mentre altri software non avranno problemi.

 

Il disco fisso della VM è costituito da un unico file le cui dimensioni vengono specificate al momento dell’installazione; per un sistema XP dedito al solo internet sarà così sufficiente una dimensione di pochi GByte, mentre per Seven ne serviranno molti di più.

Il fatto di risiedere su un unico file (quasi), ci semplifica molto le cose qualora dovessimo passarla da un computer ad un altro; sarà comunque possibile collegarlo ad un’altra VM con pochi click per poterne leggere il contenuto.

 

Perchè virtualizzare? E’ utile in casa o serve solo alle grandi aziende?

A mio avviso avere una VM sul pc di casa è molto utile in tantissimi casi: i bambini potranno averne una loro per imparare ad usare il pc, noi per utilizzare vecchi programmi che su Seven non funzionano o provarne altri senza toccare il sistema operativo host.

 

E’ utile per studiare nuove soluzioni, fare esperimenti e magari provare Linux senza essere costretti ad utilizzare un LiveCD perdendo ogni volta le impostazioni.

Io ad esempio ho installato una distribuzione Linux creata per fungere da NAS (una serie di dischi in rete per lo stoccaggio dei dati) creando ben 5 dischi virtuali: 1 per Linux e gli altri installati in RAID. Certo le prestazioni in un caso limite come questo sono pessime, ma il risultato è stato strabiliante e tutto ha funzionato a dovere.

Volendo imparare i principi di Active Directory mi sono creato un gruppo di macchine virtuali costituito da 3 XP e un Server 2003: tutto a meraviglia.

 

Sono configurazioni un po’ più complesse ma possibili grazie alla flessibilità delle macchine virtuali.

Microsoft in Seven Professional e Enterprise ha inserito la modalità XP Mode che permette di far funzionare programmi datati anche sul nuovo sistema operativo; in questo caso avrete la possibilità di scaricare un file apposito contenente Windows XP ed utilizzarlo come macchina virtuale in cui installare i programmi interessati.

 

L’ultima chicca che voglio illustrarvi sono le seamless windows. Immaginate di avere Linux come VM sul quale è installato un programma che vi serve; questo programma però vi piacerebbe averlo su Windows. Grazie alle seamless windows questo “è possibile”. In realtà Linux diventerà praticamente invisibile e voi avrete davanti agli occhi lo sfondo di windows ma, magicamente, il programma lanciato su Linux sarà anche lui davanti a voi come se stesse girando su windows.

In alto al monitor avrete la barra di Linux con cui potrete utilizzare il sistema guest, mentre in basso il menu start di windows in qualità di host.

 

Se volete avvicinarvi al mondo delle VM posso consigliarvi VMWare Player che, a dispetto del nome, permette anche la creazione di macchine virtuali: è molto semplice e soprattutto è gratis.

 

In un prossimo articolo vedremo come nella grande e piccola impresa le macchine virtuali siano arrivate ad illuminare il reparto IT con la loro potenza e la loro flessibilità.