Automatic Distributed Code Generation from Formal Models of Asynchronous Processes Interacting by Multiway Rendezvous - Archive ouverte HAL Accéder directement au contenu
Article Dans Une Revue Journal of Logical and Algebraic Methods in Programming Année : 2017

Automatic Distributed Code Generation from Formal Models of Asynchronous Processes Interacting by Multiway Rendezvous

Résumé

Formal process languages inheriting the concurrency and communication features of process algebras are convenient formalisms to model distributed applications, especially when they are equipped with formal verification tools (e.g., model checkers) to help hunting for bugs early in the development process. However, even starting from a fully verified formal model, bugs are likely to be introduced while translating (generally by hand) the concurrent model ---which relies on high-level and expressive communication primitives--- into the distributed implementation ---which often relies on low-level communication primitives. In this paper, we present DLC, a compiler that enables distributed code to be generated from models written in a formal process language called LNT, which is equipped with a rich verification toolbox named CADP, and where processes interact by value-passing multiway rendezvous. The generated code uses an elaborate protocol to implement rendezvous, and can be either executed in an autonomous way (i.e., without requiring additional code to be defined by the user), or connected to external software through user-modifiable C functions. The protocol itself is modeled in LNT and verified using CADP. We present several experiments assessing the performance of DLC, including the Raft consensus algorithm.
Fichier principal
Vignette du fichier
Evrard-Lang-16-auteur.pdf (1.07 Mo) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01412911 , version 1 (09-12-2016)

Identifiants

Citer

Hugues Evrard, Frédéric Lang. Automatic Distributed Code Generation from Formal Models of Asynchronous Processes Interacting by Multiway Rendezvous. Journal of Logical and Algebraic Methods in Programming, 2017, 88, pp.33. ⟨10.1016/j.jlamp.2016.09.002⟩. ⟨hal-01412911⟩
320 Consultations
218 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More