14) Quali sono le principali caratteristiche di Sprite?

Sprite è un sistema operativo distribuito sperimentale basato su workstation con alta capacità di memoria e cache (ma spesso senza disco locale)

Necessità di caricare e mantenere in memoria interi file system (ipotesi 500Mbyte di memoria)

Si usa un’unica struttura UNIX: trasparenza dell'allocazione mantenendo efficienza dell’implementazione

Lo Sprite kernel realizza l’integrazione della memoria virtuale con il FS

memoria virtuale realizzata con file (backing file)

uso di thread come processi leggeri

per ottenere il bilanciamento uso di migrazione dei processi e dei file

Naming a parziale condivisione: c’è un unico file system logico suddiviso su più domini, ossia sottoalberi memorizzati interamente su più server

Ogni macchina mantiene mappa dei server, prefix table, per raggiungere la directory di più alto livello di ogni domain

Il client seleziona il server dalla propria tabella; se la richiesta fallisce, il client manda un messaggio broadcast con il nome del file

Il server con il file risponde con il proprio prefix, ed il client aggiorna la table

in generale

uso di hint rappresentato dalla tabella

uso di messaggi broadcast

limiti di scalabilità

 

Semantiche di condivisione UNIX

metodo ibrido per convalida cache

l’apertura in scrittura incrementa la versione del file

Il client confronta la propria versione con il server: se differenti, il client aggiorna il file e lo ricarica dal server

server di tipo stateful

se il server ha memorizzato un file obsoleto, aperto in scrittura da un utente che non ha ancora aggiornato la copia, forza il flushing

 


Back
Index
Next