Virtualizzazione: come avere più sistemi operativi su un solo pc

Luca Paolucci
  • Laurea in Economia e Management
  • Laureato in Management Internazionale

La virtualizzazione è oramai una realtà di fatto. Analizziamone i vantaggi e vediamo in che modo ci permette di avere più sistemi operativi sullo stesso pc.

Un fenomeno che da un certo tempo ha preso piede e che sta assumendo sempre più importanza nel campo dell’IT è la virtualizzazione: in ambito enterprise e professionale, in genere, è oramai una realtà di fatto, grazie soprattutto agli innumerevoli vantaggi che comporta.

Vediamo insieme di cosa si tratta e in che modo permette di disporre di più sistemi operativi sullo stesso computer.

Virtualizzazione: di cosa si tratta?

Con il passare del tempo la potenza dei computer e la loro capacità è aumentata in modo esponenziale, spesso in modo eccessivo rispetto ai compiti richiesti. Grazie a questo, negli ultimi anni si stanno diffondendo alcuni programmi detti di “virtualizzazione”.

Per virtualizzazione si intende l’astrazione completa di una risorsa normalmente fornita fisicamente (es. un computer, un server) su di una virtuale adatta allo scopo. Essa crea un’interfaccia esterna che nasconde tutta la parte sottostante e permette l’accesso concorrente alle stesse risorse da parte di più istanze che funzionano in contemporanea.

Virtualizzazione: come avere più sistemi operativi?

Un’applicazione importante della virtualizzazione è quella che riguarda la possibilità di disporre di più sistemi operativi all’interno dello stesso computer. Nello specifico, su una singola risorsa hardware la virtualizzazione permette l’esecuzione contemporanea di più sistemi operativi, completamente slegati tra loro.

Che significa avere più sistemi operativi? Eravamo abituati ad avere un solo sistema operativo sul computer, perché per mettere due sistemi, per esempio Windows e Linux, si doveva partizionare il disco rigido (cioè creare una divisione hardware tra i due sistemi che, per antonomasia, sono molto diversi).

Attualmente questo problema è risolto. Nel Febbraio 1999, infatti, la società americana “VMware” introdusse il primo prodotto di virtualizzazione “VMware Virtual Platform“, basato su ricerche dei propri fondatori all’Università di Stanford.

Oggi anche Microsoft offre dei software di virtualizzazione, Microsoft Virtual PC e Microsoft Virtual Server, basati sulla tecnologia acquisita da Connectix.

Recenti ricerche hanno cercato di migliorare le performance della virtualizzazione attraverso l’utilizzo di un’interfaccia software per le macchine virtuali, che emula l’hardware. I sistemi operativi sono eseguiti su questa interfaccia, la quale non implementa i set di istruzioni difficili da virtualizzare. Questa tecnica è chiamata “paravirtualizzazione”.

Dove lo possiamo utilizzare?

Al momento della creazione di una macchina virtuale, ho a disposizione una scelta di opzioni hardware che consentono di creare un ambiente indipendente, noto, e sempre uguale.

I controller del disco, la VGA, la scheda di rete, tutto l’hardware virtuale è identico a prescindere dalla macchina fisica su cui è installato il programma di virtualizzazione, persino il BIOS è sempre lo stesso. In pratica, a parità di piattaforma software, un’immagine può essere spostata copiando semplicemente i file che la costituiscono su un PC completamente diverso, e da quello ripartire senza neppure accorgersi che il sistema operativo è cambiato.

Vediamo in quale contesti si può attuare tale processo.

1. In ambito personale

In ambito personale la virtualizzazione si usa per creare un ambiente dove far girare un’altra copia del sistema operativo, che può essere lo stesso della macchina ospite o meno, destinato all’esplorazione di caratteristiche che non vogliamo o non possiamo avere direttamente sulla macchina fisica.

Al termine della sessione si può decidere di non scrivere su disco le modifiche, mantenendo l’immagine sempre uguale a se stessa. In questo modo non ci si deve preoccupare di eventuali software “maligni” che potrebbero contagiarci. Semplicemente, alla chiusura della macchina virtuale spariranno con essa.

2. Negli ambienti di test, sviluppo e didattici

Per gli ambienti di test, sviluppo e didattici i benefici sono sempre gli stessi, ma l’utilizzo avviene in ambito professionale, spesso in fase di sviluppo e creazione di applicazioni.

La virtualizzazione consente di avere molte macchine identiche ma separate, tutte disponibili, magari con versioni diverse dell’applicativo in fase di sviluppo. Anche per l’utilizzo di reti di computer per test o per scopi didattici si ottengono grandi benefici dall’utilizzo di queste tecniche.

Ad esempio, gli istruttori dei corsi e dei workshop di Microsoft utilizzano un singolo PC portatile sul quale funziona un’intero dominio completamente virtuale, con uno o più domain controller e client che “girano” contemporaneamente. Al termine delle sessioni, l’istruttore non aggiorna le immagini su disco e tutti i client e server sono pronti come nuovi per la giornata successiva (senza la necessità di ripetere le installazioni).

3. Nelle perizie forensi

Nelle perizie forensi si predispone di un pacchetto di tutte le versioni di Windows, dal primo sistema 3.1 all’ultimo. Con la macchina virtuale posso ristabilire l’ambiente di lavoro per esempio di “Windows 98”senza dover ricorrere ad un’installazione spesso difficile per il reperimento del software.

Virtualizzazione: quali sono i vantaggi?

Il vantaggio principale della virtualizzazione consiste nella possibilità di liberarsi completamente dall’hardware da parte delle risorse normalmente utilizzate. Le macchine virtuali saranno simulate con hardware standard, ciò significa che saranno totalmente estranee al reale hardware su cui gira il sistema di virtualizzazione.

Generalmente la migrazione di un vecchio server richiede intere giornate di lavoro per il salvataggio di dati e configurazioni e per il ripristino della normale attività aziendale. Con gli strumenti messi a disposizione dalla virtualizzazione bastano poche ore per migrare completamente la risorsa, in alcun casi anche in maniera del tutto trasparente.

Un altro vantaggio strategico fornito dalla virtualizzazione delle risorse è quello di snellire drasticamente le procedure di backup e disaster recovery. Avendo copia giornaliera delle immagini virtualizzate delle risorse, sarà possibile un ripristino rapidissimo in caso di malfunzionamenti dovuti ai più disparati motivi.

Le principali piattaforme per la virtualizzazione

Esistono diversi prodotti e versioni per la realizzazione di un’infrastruttura di virtualizzazione. I principali concorrenti attualmente sono :
  • Vmware. Vanta una presenza di diversi anni sul mercato della virtualizzazione. Vmware è il software commerciale più utilizzato dal mercato e offre diverse soluzioni. Da alcuni mesi ha rilasciato una versione liberalmente scaricabile di Vmware Server.
  • Xen. Soluzione libera e integrata nel kernel di Linux, supportata da una vasta comunità di sviluppatori e da Intel stessa.
  • Virtual Pc. Originariamente sviluppato dalla Connectix, attualmente il prodotto Virtual PC è distribuito da Microsoft, ed è destinato – nelle intenzioni della casa in questione – soprattutto a consentire l’uso di vecchie applicazioni non più supportate dai moderni sistemi operativi.
  • Virtual Box. È open source, disponibile per Windows, Mac e Linux, ed è in italiano (con manuale). Molto completa, simula tutti i sistemi operativi in tutte le versioni.

Ultima frontiera per la virtualizzazione on line è EasyVMX. Questo servizio è stato definito come “il miglior servizio di creazione di macchine virtuali online” da Virtualization.info, ha già creato oltre 190.000 macchine virtuali per i suoi visitatori e ci permette di creare una macchina virtuale seguendo 3 strade:

  • EasyVMX: questo metodo è la versione standard, permette di configurare svariati parametri, ma richiede un minimo di conoscenza di informatica.
  • SuperSimple: questa versione è la più semplice, permette di impostare ben pochi parametri, lasciando tutto il resto a standard.
  • ExpertForm: di gran lunga il tool più adatto a chi vuole cimentarsi con la configurazione nel dettaglio di ogni aspetto della sua macchina virtuale. Molto potente ma richiede conoscenze adeguate.