|
|
1. Introduzione Al fine di realizzare computer sempre più scuri e potenti, molte architetture FT sono state adottate negli ultimi anni; esse si posso suddividere in 2 categorie: "blandamente accoppiate" in cui ogni processore ha le sue risorse private e comunica con gli altri processori attraverso un protocollo a messaggi "strettamente accoppiate" in cui ogni processore ha accesso a tutta la memoria e risorse di I/O e comunica con gli altri processori attraverso memoria condivisa Nella prima categoria, un metodo per il FT è lesecuzione simultanea di copie dello stesso processo (es. Tandem e Targon/32) . Nella seconda tipologia di architettura si utilizza un memoria con cache non write-through per ogni processore, il che permette ad ogni processore di fare più scritture prima che la cache centrale sia aggiornata (es. Sequoia). Qui si vuole introdurre un nuovo tipo di approccio: la STM (stable transactional memory), la quale contiene alcune strutture proprie delle transazioni [10]. 2. STM La prima STM progettata non è altro che una veloce e stabile memoria utilizzata per realizzare un efficiente protocollo di commit. Il secondo stadio di sviluppo porta allapplicazione della STM ad unarchitettura "blandamente accoppiata" (sistema GOTHIC) con struttura multiprocessore con OS distribuito. Le caratteristiche in questo caso sono: autonomia: la STM può prendere alcune decisioni in proprio, ad esempio se un processore è caduto incominciare una riconfigurazione autoprotezione: la STM deve potersi proteggere da leventuale caduta di un processore transazioni atomiche: le azioni sono atomiche
Il risultato è illustrato nella figura seguente:
Al terzo livello di sviluppo, si è pensato alla STM per unarchitettura "strettamente accoppiata". Il risultato è mostrato in figura: Infine si è utilizzata la STM nel sistema operativo FTM (FT Multiprocessor, sviluppato dallautore dellarticolo), il cui scopo è quello di un sistema "general purpose", nel quale i guasti hardware e di sistema operativo sono mascherati allutente. Per ogni sottosistema (memoria, dischi, ecc..) si hanno accessi ridondanti. Il prototipo (come mostrato in figura) è costituito da due multiprocessori "blandamente accoppiati" interconnessi da un FT Link. In questo SO, i maggiori aspetti del kernel sono la protezione, la veloce ripartenza e la portabilità. Prima di accedere ad ogni oggetto "stabile", il programmatore deve inviare un comando alla STM che manda loccorrenza al kernel ed allora listanza fa partire una transazione, che gestirà tutte le operazioni connesse. Come nota conclusiva, bisogna dire che allo stato attuale del progetto FTM, si è completato il design dellarchitettura hardware e si sta cercando di rendere FT lintegrazione della STM con il kernel attuale. |