Una interessantissima visita al nuovo Museo Ctrl+Alt di Pavia
In un mondo dove la tecnologia è sempre più alla portata di tutti, noi appassionati amiamo testare quintali di OS sulle nostre macchine.
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 peggiore lacuna è il suo Hypervisor, che non è compatibile con altre Macchine Virtuali, causando loro degli errori se proviamo ad eseguirle dopo di esso.
Pro e contro delle Macchine Virtuali
Pro:
– Zero rischi di perdite di dati.
– 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, 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:
– 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.
(Se cancelli la macchina virtuale quella memoria torna disponibile per la macchina ospitante)
– Avviare più sistemi contemporaneamente richiede un buon quantitativo di RAM (16Gb di RAM per Windows che ospita Ubuntu sono consigliabili)