Virtual Atomicity (was: purse deposit and the Cambio)

Mark S. Miller markm@caplet.com
Thu, 24 Jun 1999 17:41:43 -0700


At 01:42 PM 6/24/99 , Mark S. Miller wrote:
>One can similarly define E's semantics in terms a hierarchy of such units of 
>operation.
>...
>* The unit of operation for concurrent distributed computation is the Turn.  
>...
>Because a Turn only has synchronous access within its own Vat, one may 
>faithfully describe overall distributed computation as a globally 
>serializable sequence of atomic Turns, ...

[-] Not in the face of infinite Turns.

If Turns really were equivalent to a serializable sequence, no more than one 
Turn could ever go into an infinite loop, and no Turns could be in the 
causal future of that Turn.  A single infinite Turn would use up the 
universe's capacity for further computation.  In fact, an infinite Turn does 
use up its Vat, but not the universe.  Asynchronous messages sent by an 
infinite Turn are delivered and processed as long as their recipient lives 
in another Vat.  These other Turns are, by serialization order, "after" an 
infinite atomic Turn.

This is all as it should be.  In fact, the block-the-universe consequences of 
true serializability would be pathologically stupid.  However, it means more 
formal hair to describe the kind of Turn serializability E provides.