Come far convivere Linux e Windows

Partiamo con il presupposto che le preferenze ed i gusti nell’ambito dei sistemi operativi desktop (come in qualsiasi altro ambito) non sono in alcun modo sindacabili. C’è chi si vede le sue esigenze pienamente soddisfatte da Windows, chi non vivrebbe senza un desktop con una mela morsicata sopra e chi ha trovato in GNU/Linux tutto quello che cercava. C’è poi una fascia intermedia, una zona grigia (in cui mi inserisco tranquillamente anche io) che rendendosi conto che nessuno dei tanti mondi è perfetto vorrebbe in qualche modo poter trarre il massimo da tutti.

Non essendo in possesso di hardware Apple e non avendo in nessun modo esperienza diretta su quello che andrei a dire a riguardo in questo articolo mi limiterò a vedere quali possibilità ci sono per conciliare il mondo GNU/Linux e quello Windows.

DUAL BOOT:

La scelta più classica è quella di avere una configurazione dual boot. Questa pratica consente di mantenere in due partizioni distinte i due sistemi operativi e scegliere all’accensione del pc attraverso un bootloader (GRUB è uno dei più utilizzati) quale sistema avviare. Il vantaggio di una soluzione del genere è sicuramente la possibilità di poter godere di due sistemi operativi che girano in maniera nativa sul proprio hardware.

Tutto questo però si paga in termini di flessibilità. Per utilizzare una applicazione di un sistema quando si è sull’altro bisogna riavviare la macchina e bisogna mantenere una qualche partizione di scambio per la condivisione dei dati (la scelta del file system ben digeribile da tutti e due gli OS spesso implica il dover ripiegare su soluzioni vecchie come fat32).

Inoltre amministrare un sistema in dual boot richiede una certa capacità di gestione quando ci si trova nella situazione di dover formattare o reinstallare uno dei due sistemi.
Una interessante alternativa è quella proposta da sistemi come Wubi per Ubuntu o Win32-loader per Debian.

In questo caso invece di andare a giocare con le partizioni di sistema possiamo installare e disinstallare la distribuzione GNU/Linux come se fosse un normale programma per Windows. La “magia” avviene attraverso l’utilizzo di un loop device che permette di vedere un file all’interno della partizione windows come un vero e proprio device fisico. Anche in questo caso abbiamo una distribuzione con prestazioni identiche ad una installazione nativa con l’unica eccezione del filesystem che ovviamente risente dell’ulteriore strato di astrazione aggiunto.

WINDOWS SU LINUX:

Come abbiamo detto in precedenza mantenere due sistemi operativi affiancati non è il massimo della vita in termini di flessibilità. Una possibile soluzione è quella di cercare di far girare in qualche maniera software non pensato per il sistema operativo che stiamo utilizzando. Per farlo su linux non può non essere citato il progetto WINE, (Wine Is Not an Emulator) vero e proprio layer di compatibilità che mappa le chiamate di sistema win32 su sistemi operativi GNU/Linux e non.

Wine permette con alcune accortezze e configurazioni di far girare diversi software nativi per Windows (uno degli ultimi arrivi è la compatibilità con photoshop CS2). Sul codice di wine sono inoltre basati alcuni programmi commerciali a pagamento come Crossover Linux e Cedega che facilitano l’installazione di software non nativo.

Per i videogiocatori inoltre vale la pena segnalare PlayOnLinux, utile programma gratuito sotto licenza GPLv3 che analogamente ai fratellastri commerciali appena citati permette di installare e configurare WINE per giochi e applicazioni Windows in maniera semplice grazie ad un deposito di script mantenuti da una ampia comunità.

LINUX SU WINDOWS:

Per utilizzare programmi GNU/Linux direttamente da Windows una possibilità è data dal progetto CoLinux. CoLinux non è nient’altro che un tentativo di far girare il kernel linux su Windows come un normale processo. L’approccio sembrerebbe interessante ma purtroppo si scontra con due problemi fondamentali.

Il primo è che le applicazioni grafiche fatte girare in questo modo in generale sono abbastanza lente. Il secondo in realtà non è un vero e proprio problema ma piuttosto la constatazione che la maggior parte degli applicativi che girano su GNU/Linux sono multi piattaforma ed hanno spesso e volentieri una controparte Windows. Basti pensare a progetti come cygwin o mingw che permettono addirittura di avere a disposizione tutti i tool GNU fondamentali in maniera nativa su Windows.

VIRTUALIZZAZIONE:

L’ultima soluzione (ma non ultima per importanza) è quella della virtualizzazione. Con l’aumento delle prestazioni dei computer consumer e la disponibilità di software gratuito di virtualizzazione di altissimo livello (per esempio Virtualbox, VMware player, qemu o kvm) ormai questa tecnologia è alla portata di tutti.

La virtualizzazione ci permette di far girare i due sistemi operativi contemporaneamente sulla stessa macchina con altissima flessibilità. Inoltre se un po’ di tempo fa non era sbagliato dire che le prestazioni ottenibili con macchine virtuali non erano entusiasmanti se comparate a soluzioni native, con l’avvento delle nuove istruzioni dedicate sulle CPU consumer e con la possibilità di sfruttare l’accelerazione grafica della macchina host sulla macchina virtuale questo divario di performance si va via via assottigliando.

Per quanto mi riguarda l’ultima volta che sono stato obbligato ad utilizzare Windows mi sono servito di una macchina virtuale ma non essendo il mio laptop una scheggia (ha circa tre anni e mezzo) credo che in caso di necessità in futuro sceglierò la vecchia e battuta strada del dual boot.

E voi? Quale soluzione utilizzate o preferite?

Press ESC to close