Issue No. 07 - July (2012 vol. 23)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TPDS.2011.258
Avinash Malik , IBM Research Dublin and Trinity College Dublin, Dublin
Alain Girault , INRIA Rhône-Alpes and LIG Laboratory, POP ART team, Grenoble
Zoran Salcic , University of Auckland, Auckland
The paper presents a programming language, DSystemJ, for dynamic distributed Globally Asynchronous Locally Synchronous (GALS) systems, its formal model of computation, formal syntax and semantics, its compilation and implementation. The language is aimed at dynamic distributed systems, which use socket based communication protocols for communicating between components. DSystemJ allows the creation and control at runtime of asynchronous processes called clock-domains, their mobility on a distributed execution platform, as well as the runtime reconfiguration of the system's functionality and topology. As DSystemJ is based on a GALS model of computation and has a formal semantics, it offers very safe mechanisms for implementation of distributed systems, as well as potential for their formal verification. The details and principles of its compilation, as well as its required runtime support are described. The runtime support is implemented in the SystemJ GALS language that can be considered as a static subset of DSystemJ.
GALS systems, distributed programming, dynamic reconfiguration, weak mobility, formal model of computation, semantics, CSP, \pi-calculus, SystemJ, DSystemJ.
Z. Salcic, A. Girault and A. Malik, "Formal Semantics, Compilation and Execution of the GALS Programming Language DSystemJ," in IEEE Transactions on Parallel & Distributed Systems, vol. 23, no. , pp. 1240-1254, 2011.