Virtme: un solo container per tanti Kernel

0

I programmi possono essere divisi in due grandi categorie, quelli che lavorano a livello di Kernel (e richiedono dei privilegi per essere invocati), e quelli che rimangono a livello utente. La seconda categoria è definita userland e gran parte dei programmi disponibili (compresi quelli del sistema operativo) ricade in questa.

Su queste pagine abbiamo parlato spesso di container, una tecnologia usata per usare una specifica userland mantenendo lo stesso Kernel. Insieme alle capacità di segregazione delle risorse del Kernel stesso (memoria, disco, rete, etc…) l’effetto è molto simile ad un cambio di sistema operativo, tanto che, stiracchiando un poco il concetto, qualcuno considera i container una forma di virtualizzazione.

Sfruttando quelle stesse capacità Andy Lutomirski, sviluppatore del kernel, si è chiesto se non era possibile fare il contrario: usare uno specifico Kernel mantenendo la stessa userland. Questo gli sarebbe risultato comodo nel lavoro, perché l’alternativa è usare una macchina virtuale completa nella quale installare un nuovo Kernel ad ogni modifica di codice: francamente, scomodo.

Il risultato è virtme, che è stato rilasciato alla versione 0.1 qualche giorno fa: indicando all’avvio un file immagine del Kernel, o una directory con tutti i file necessari, e il comando virtme creerà un ambiente virtualizzato minimo per l’avvio e il test del nuovo Kernel.

Questa funzionalità è sicuramente interessante per gli sviluppatori del Kernel, ma potrebbe risultare utile anche agli amministratori: testare nuove funzioni o la compatibilità del Kernel con programmi già esistenti senza riavvii o dover creare una macchina apposita. Interessante, non trovate?

Ho coltivato la mia passione per l’informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.