26) Come viene affrontato praticamente il problema della migrazione in alcuni sistemi operativi?
MOS è un sistema operativo con facility di migrazione e processi preemptable
garantisce stabilità ed efficienza
CHARLOTTE è un sistema operativo con processi preemptable e diverse politiche
meccanismi di supporto forniti dal Kernel: primitive di migrazione e di raccolta statistiche locali
il sistema riqualifica automaticamente i link
garantisce stabilità, flessibilità e molteplicità
EMERALD è un sistema ad oggetti (intesi come ambiente confinato di esecuzione) che prevede computazione intesa come richieste di operazioni sincrone tra oggetti
un oggetto può ospitare più di un’attività per volta (concorrenza inter-oggetto)
una richiesta si muove negli oggetti che l’interessano andando a sviluppare processi localmente agli oggetti interessati
la migrazione avviene per interi oggetti
migrazione esplicita: se un oggetto migra
- determina un meccanismo di migrazione; stato composto di riferimenti ad altri oggetti
- produce effetti sia sui potenziali nuovi invocati sia sulle chiamate ancora pendenti.
migrazione implicita: passaggio di parametri, che sono a loro volta oggetti., tra oggetti. I parametri quindi migrano implicitamente. L’operazione remota può:
- a sua volta generare chiamate remote (ai parametri)
- forzare lo spostamento temporaneo (call by-visit) o definitivo (call by-move) di alcuni parametri che possono essere acceduti solo durante l’operazione
in sostanza, EMERALD lega la politica di migrazione alla strutturazione ad oggetti individuata