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.