In un mondo dove la tecnologia è sempre più alla portata di tutti, potremmo desiderare di avere a disposizione un sistema operativo diverso da quello che abbiamo normalmente in uso sul nostro PC: un particolare tipo di Linux o un Mac OS o una versione precedente di Windows per l’avvio di determinati software o per l’utilizzo di vecchie periferiche non più supportate dai sistemi operativi odierni.
Noi appassionati amiamo testare quintali di OS sulle nostre macchine anche solo per testare le effettive capacità degli hardware moderni.
Pratica che richiede una seconda memoria di massa per l’istallazione o la creazione di nuove partizioni su quella principale… e il tanto amato-odiato dual boot…
Per alcuni utenti non sono grandi magagne, basti pensare che ormai anche gli SSD hanno raggiunto prezzi accessibili.
Tuttavia, determinati OS a volte necessitano almeno 64gb di spazio e formattazioni totali con conseguenti perdite di dati (Deepin OS, per esempio); quindi non è sempre comodo affiancarli ad altri OS perché mangerebbero molto spazio.
Ma ogni complicanza porta a nuove soluzioni.
Ed è qui che ci vengono incontro le MACCHINE VIRTUALI, abbreviate: VM (Virtual Machine)
Cosa sono?
Le macchine virtuali sono software che permettono di virtualizzare Computer, Console, Client o Server direttamente sulla nostra macchina, prendendo in prestito da quest’ultima una porzione delle sue capacità computazionali, risorse di rete e memorie. Per fare ciò, le Macchine Virtuali fanno uso degli Hypervisor: software che gestiscono e condividono con i sistemi guest le risorse hardware della macchina ospitante.
Questi sono alcuni dei software di Macchine Virtuali più conosciuti:
– VirtualBox
Totalmente gratuito. Funziona anche con istanze VMware in esecuzione.
– VMware
Il più completo. Adatto ai neofiti. Funziona anche con istanze VirtualBox in esecuzione. Disponibili le versioni Free e a Pagamento.
– Hyper-V
Di proprietà di Microsoft, lo troviamo integrato in distro come Windows 10 Pro e successivi (sempre pro).
La sua peggior lacuna è il suo Hypervisor, che non è compatibile con altre Macchine Virtuali, causando loro degli errori se proviamo a eseguirle dopo di esso.
Pro e Contro delle Macchine Virtuali
Pro:
– Zero rischi di perdite di dati sulla macchina host.
– Possibilità di gestire molteplici OS nella stessa istanza del sistema principale. Per esempio possiamo virtualizzare MacOS insieme a Ubuntu (o chicchessìa) su una macchina che monta Windows come sistema ospitante, e passare da un OS all’altro in un click.
– Scalabilità delle risorse. Ogni macchina virtuale avrà con sé una dote di performance, che potrà essere registrata a piacimento dell’utente entro un range consigliato e quello massimo disponibile della macchina nativa ospitante (Comunque meglio non esagerare con le risorse affidate alla macchina guest, altrimenti ne perdi in stabilità).
– Sicurezza. Perché sulla macchina virtuale possiamo accedere a un archivio infettato da un virus, o testare un programma per scoprire se ne contiene, il tutto senza infettare la macchina ospitante.
– Compatibilità. Perché installando su Macchina Virtuale un OS datato potremmo avviare programmi che in alcune circostanze non sarebbero avviabili sulle macchine dotate di OS recenti.
– Tempi di preparazione solitamente più brevi.
– Testare nuove funzionalità di OS in BETA senza mille peripezie.
– Sistemi in finestra.
– Modalità Matrioska. Il sistema, dentro il sistema, dentro il sistema… (per scopi scentifici, certo.)
Contro:
– Risorse. Dobbiamo anche tenere conto delle risorse usate dal sistema ospitante.
– Overhead. I sistemi di virtualizzazione che virtualizzano anche l’hardware offrono performance non al pari di un’installazione diretta. Anzi, a volte decisamente peggiore. Questo perché gli Hypervisor hanno dei loro requisiti che pendono poi sulla macchina virtuale. Gli Hypervisor creano un bell’effetto collo di bottiglia.
– Incompatibilità. Purrtroppo, in casi rari, le Macchine Virtuali potrebbero non riconoscere le porte seriali/parallele, le porte USB e i moduli Bluetooth. L’accelerazione grafica potrebbe essere ROTTA e mostrare artefatti, o non funzionare affatto.
– Memoria. Quando l’Hypervisor assegna la porzione di memoria di massa alla macchina virtuale, crea un file delle rispettive dimensioni. Per esempio, se assegni 128gb di spazio a una macchina virtuale, rinuncerai a quella porzione di memoria anche se sulla macchina virtuale ne avrai occupati molti di meno. Naturalmente se cancelli la macchina virtuale quella memoria torna disponibile per la macchina ospitante.
– RAM. Bisogna tenere conto che avviare più sistemi contemporaneamente richiede un buon quantitativo di RAM (12 Gb di RAM per Windows che ospita Ubuntu sono consigliabili)
Per ora è tutto, l’appuntamento con noi di Bitretro è al prossimo articolo
Vi aspettiamo!