mercoledì 29 agosto 2007

SVS: virtualizzazione, come funziona (2a parte)

Dopo aver visto nel mega-post "SVS: virtualizzazione, come funziona (1a parte)" il funzionamento del cuore di SVS, l'SVS File System Filter Driver (brevemente, Filter), continueremo il nostro viaggio nell'architettura interna di SVS analizzando i VSP (Virtual Software Package).

Virtual Software Package (VSP) è in realtà un termine generico per indicare 2 componenti diversi dell'architettura interna di SVS (fig. 1):

- Virtual Software Layer;
- Virtual Software Archive.

Fig. 1 - SVS - schema Virtual Software Package (VSP)
fig. 1

Il primo, il Virtual Software Layer, è il layer di cui abbiamo sempre parlato finora.

Esso contiene tutti i file dell'applicazione, i suoi settaggi, le voci del registro di Windows, i documenti prodotti dall'applicazione; ogni applicazione ha il suo layer, ma un layer può catturare più applicazioni. Dato che ogni layer è gestito come una singola entità, nel caso che al suo all'interno vengano catturate più applicazioni, queste saranno gestite tutte insieme: non è possibile ad esempio disattivarne una sola, ma solo tutte oppure nessuna.

Ma dove vengono immagazzinati i layer sul vostro disco rigido? Date un'occhiata al vostro disco C: troverete una cartella di nome fslrdr. Ne avevo già parlato nel post “SVS: attivazione - disattivazione di un layer”, seguite il link e guardate fig. 3: ecco, è qui che vengono immagazzinati tutti i vostri layer come sottocartelle di fslrdr.

Che cosa succede di preciso?
Riprendete un attimo il post della volta scorsa, "SVS: virtualizzazione, come funziona (1a parte)": quando voi guardavate la cartella in C:\Programmi\NomeCartellaProgramma dell'applicazione virtualizzata, sappiamo che il Filter vi ridirigeva al layer. Ora finalmente sappiamo esattamente dove: in una cartella di nome C:\fslrdr\1\[_B_]PROGRAMFILES[_E_]\NomeCartellaProgramma.

Il secondo componente dell'architettura interna di SVS è il Virtual Software Archive.

Si tratta dei file .vsa prodotti dalla funzione Esporta layer di SVS (Export layer nella versione inglese descritta tempo fa nel post "SVS: import - export di un layer"). Permettono di salvare il layer e trasportarlo ovunque vogliamo, o semplicemente archiviarlo, così da ripristinarlo in caso di reinstallazione di Windows.

Quando il layer viene importato con l'apposita funzione (descritta sempre nel post "SVS: import - export di un layer"), non si fa altro che leggere il file .vsa dalla posizione in cui è stato archiviato e rimetterlo al suo posto nella cartella fslrdr.

Come potete notare tutto ruota intorno alla cartella fslrdr. E' lì che il Filter redirige ogni chiamata ad un'applicazione virtualizzata, è lì che viene posizionato un layer importato, è da lì che viene prelevato un layer da archiviare in un file .vsa; tutto viene redirezionato da/verso quest'area che viene appunto detta “SVS redirection area”.

Infine, vi accenno brevemente anche un'ulteriore tipologia di file, i .vra.
Il loro scopo, legato ad una particolare modalità di funzionamento di SVS detta Runtime Mode, è quello di fornire all'utente un'applicazione già virtualizzata e funzionante senza che questi abbia SVS; per il momento non approfondiamo ulteriormente l'argomento, non aggiunge nulla alla comprensione del funzionamento di SVS.

Bene, questa volta ci manteniamo brevi fermandoci qui.
Il discorso teorico oramai volge al termine, e nel prossimo post lo chiuderemo vedendo come è fatto un layer al suo interno. A quel punto nulla vi potrà più fermare: la configurazione e le opzioni più avanzate di SVS saranno nelle vostre mani, potrete così
saggiarne finalmente tutta la potenza e l'elasticità d'uso.

@:\>