Incremental Dynamic Updates with First-class Contexts.

Erwann Wernli, Mircea Filip Lungu, Oscar Nierstrasz · The Journal of Object Technology · 2013

Highly available software systems occasionally need to be updated while avoiding downtime.Dynamic software updates reduce downtime, but still require the system to reach a quiescent state in which a global update can be performed.This can be difficult for multi-threaded systems.We present a novel approach to dynamic updates using first-class contexts, called Theseus.First-class contexts make global updates unnecessary: existing threads run to termination in an old context, while new threads start in a new, updated context; consistency between contexts is ensured with the help of bidirectional transformations.We show that for multi-threaded systems with coherent memory, first-class contexts offer a practical and flexible approach to dynamic updates, with acceptable overhead.

Read the paper · More papers on PaperTik