An efficient abstract machine for Safe Ambients

https://doi.org/10.1016/j.jlap.2007.02.003Get rights and content
Under an Elsevier user license
open archive

Abstract

Safe Ambients (SA) are a variant of the Ambient Calculus (AC) in which types can be used to avoid certain forms of interferences among processes called grave interferences.

An abstract machine, called GcPan, for a distributed implementation of typed SA is presented and studied. Our machine improves over previous proposals for executing AC, or variants of it, mainly through a better management of special agents (the forwarders), created upon code migration to transmit messages to the target location of the migration. Well-known methods (such as reference counting and union-find) are applied in order to garbage collect forwarders, thus avoiding long – possibly distributed – chains of forwarders, as well as avoiding useless persistent forwarders.

We present the proof of correctness of GcPan w.r.t. typed SA processes. We describe a distributed implementation of the abstract machine in OCaml.

More broadly, this study is a contribution towards understanding issues of correctness and optimisations in implementations of distributed languages encompassing mobility.

Keywords

Mobile Ambients
Abstract machine
Forwarders
Garbage collection
Bisimulation

Cited by (0)

An extended abstract of this paper has appeared in the proceedings of COORDINATION’05. This work has been supported by the EU project SENSORIA, by the Italian MIUR Project no. 2005015785, “Logical Foundations of Distributed Systems and Mobile Code” and by the French project ANR ARASSIA “Modularité Dynamique Fiable”.