MiKi'S Home Page

Micaela Spigarolo

Dottorando di Informatica
presso l'Universita' degli Studi di Bologna, Italy
Laurea in Informatica Specialistica, 2004
Laurea in Scienze dell'Informazione, 2003
e-mail 1: spigarol [at] cs.unibo.it
e-mail 2: m.spigarolo [at] cineca.it
Office: Ufficio Dottorandi Lab A
Dipartimento di Scienze dell'Informazione
via Mura Anteo Zamboni, n.7
40127 Bologna
(Italy)
Phone: +39 051 2094871




Nell'ambito del mio dottorato, dal titolo "Virtualization applied to distributed and network systems: a structured approach", mi sono occupata di studiare la virtualizzazione a livello middleware in contesto distribuito (*).

Attualmente, sto collaborando con il team dell'Ing. Guidazzoli presso il Cineca per applicare a un caso di studio i risultati e il framework cognitivo individuati nel mio precedente lavoro di tesi.

In particolare, sto studiando l'impiego di Jboss come software per il supporto alla pipeline di produzione di assets 3D (three-dimensional historical scenarios per il progetto MDC ) e la condivisione degli stessi (progetto VMustNet).

Personal Interests

Assistenza alla Didattica
(Teaching Training)

Ph.D Work

(English)

Resource Virtualization



PhD work: studio della virtualizzazione a livello middleware distribuito

Si tratta di un livello piu' alto rispetto a quello del sistema operativo, ambito in cui la virtualizzazione e' nata nei lontani anni '70 e per cui ha fornito i risultati piu' maturi (ovvero, Macchine Virtuali, in cui il termine macchina e' inteso come piattaforma, nel significato comune di ambiente per l'esecuzione del software).

L'idea di partenza e' stata quella di applicare a tale livello soluzioni implementate per il sistema operativo. In particolare, nell'ottica di IT agility e Horizontal Scalability dei moderni sistemi di calcolo, potevano essere interessanti le idee alla base di tecnologie quali:

Si e' dovuti, tuttavia, presto affrontare un problema parallelo che rendeva difficile applicare in maniera effettiva al layer di interesse le idee ricavate da tali altri ambiti applicativi: la mancanza di una spiegazione alla virtualizzazione che non fosse strettamente connessa alle singole implementazioni. Una spiegazione, cioe', a partire da principi base indipendentemente dai meccanismi connessi a specifiche implementazioni.

La virtualizzazione non e', infatti, prerogativa del sistema operativo: qualsiasi parte di un computer puo' in realta' essere virtualizzato, il che sta scardinando l'assunzione di fisicita' per esso. Sfruttando il meccanismo di gestire la complessita' del computer suddividendone l'architettura in layer di astrazione separate da ben definite interfacce. la virtualizzazione introduce maggiore flessibilita' delle interfacce introducendo quello che si chiama `layer di reindirizzamento', ovvero uno strato (non necessariamente di astrazione) che funge da `traduttore'. Esso implementa un mapping tra le risorse di partenza e il software che ne realizza la virtualizzazione. In questo modo, e' possibile far funzionare codice Intel su di un processore Motorola 68000, per esempio.

Quello che manca e' pertanto un framework cognitivo che spieghi la virtualizzazione indipendentemente dal contesto applicativo, ovvero a partire dai principi base che caratterizzano questo bagaglio di conoscenza come una disciplina (modello mentale `viabile').

Per tale ragione, la prima parte del mio lavoro si e' rivolta a delineare questo framework cognitivo, testandone la viabilita' per spiegare gli esempi del sistema operativo presi in esame, cosi' come la virtualizzazione impiegata al livello middleware, oggetto di questa tesi (i.e. J2EE compliant application servers e Jboss).

E' opinione di questo lavoro che, sebbene la virtualizzazione a livello del sistema operativo possa gia' fornire rapidi e interessanti risultati al livello di interesse impiegandola come black box (si veda, per esempio, il cloud computing e le possibilita' offerte da Amazon EC2), una sua applicazione a grana piu' fine, ovvero mettendo mano alla sua implementazione, potrebbe meglio aderire alle esigenze specifiche del livello (p.e. IT agility).

In particolare, si vuole mostrare con un esempio applicativo come il framework cognitivo proposto consenta di individuare scenari che diversamente rischiano di rimanere nascosti cosi' come di applicare in maniera fattiva al layer di interesse risultati ottenuti da tecnologie che facciano impiego della virtualizzazione a layer differenti. Back