Quali sono i diversi tipi di macchine virtuali?
Esistono due tipi principali di macchine virtuali. Uno, che si chiama una macchina virtuale di sistema, viene utilizzato per imitare tutti i processi e i componenti di un computer reale. L'altra, nota come macchina virtuale di processo, viene utilizzata per eseguire una sola applicazione e scompare quando viene chiusa.
Le macchine virtuali di sistema consentono a una persona di utilizzare un singolo server come se si trattasse di molti computer diversi. Utilizzando questo tipo di tecnologia, una macchina può essere riconfigurata in diversi modi. Ognuna di queste riconfigurazioni è completamente isolata dagli altri sistemi e può agire come un computer indipendente, anche se ciascuno di essi esiste sulla stessa macchina fisica. Questo isolamento significa che se un sistema si arresta in modo anomalo, è comunque possibile utilizzare le altre macchine virtuali.
L'uso delle macchine virtuali di sistema consente inoltre all'utente di eseguire più sistemi operativi sulla stessa macchina. Ciò consente a un utente di eseguire programmi disponibili solo su un tipo di sistema operativo. Inoltre, consente di testare un programma su più piattaforme senza cambiare macchina.
A seconda delle esigenze dell'utente, le macchine virtuali di sistema possono essere configurate per funzionare come se avessero una varietà di diversi tipi di hardware. All'interno di ogni macchina virtuale c'è una scheda madre virtuale, un processore virtuale, una scheda di accelerazione grafica video virtuale e tutti gli altri componenti trovati all'interno di un computer fisico. Il computer virtuale può anche essere configurato per utilizzare l'hardware sul sistema fisico come se fosse realizzato con specifiche diverse. Esistono tante diverse configurazioni di macchine virtuali di sistema quante sono le configurazioni di server fisici.
Le macchine virtuali di processo vengono utilizzate per eseguire un singolo programma in isolamento dal sistema operativo del computer fisico. Ciò consente a un utente di eseguire un programma che potrebbe altrimenti essere incompatibile con il normale sistema operativo. Ogni macchina virtuale di processo viene creata per eseguire un programma specifico ed esiste solo mentre il programma è in esecuzione. La chiusura del programma in esecuzione farà scomparire una macchina virtuale di processo e l'apertura di quel programma creerà una nuova macchina virtuale.