Designing efficient algorithms for parallel computers
Designing efficient algorithms for parallel computers
Distributed snapshots: determining global states of distributed systems
ACM Transactions on Computer Systems (TOCS)
Communication and concurrency
Modeling Heterogeneous Real-time Components in BIP
SEFM '06 Proceedings of the Fourth IEEE International Conference on Software Engineering and Formal Methods
The algebra of connectors: structuring interaction in BIP
EMSOFT '07 Proceedings of the 7th ACM & IEEE international conference on Embedded software
Priority Scheduling of Distributed Systems Based on Model Checking
CAV '09 Proceedings of the 21st International Conference on Computer Aided Verification
From high-level component-based models to distributed implementations
EMSOFT '10 Proceedings of the tenth ACM international conference on Embedded software
Knowledge based scheduling of distributed systems
Time for verification
Systematic correct construction of self-stabilizing systems: a case study
SSS'10 Proceedings of the 12th international conference on Stabilization, safety, and security of distributed systems
Methods for knowledge based controlling of distributed systems
ATVA'10 Proceedings of the 8th international conference on Automated technology for verification and analysis
Automated distributed implementation of component-based models with priorities
EMSOFT '11 Proceedings of the ninth ACM international conference on Embedded software
Distributed implementation of systems with multiparty interactions and priorities
SEFM'11 Proceedings of the 9th international conference on Software engineering and formal methods
Priority scheduling of distributed systems based on model checking
Formal Methods in System Design
Modeling dynamic architectures using Dy-BIP
SC'12 Proceedings of the 11th international conference on Software Composition
Optimized distributed implementation of multiparty interactions with observation
Proceedings of the 2nd edition on Programming systems, languages and applications based on actors, agents, and decentralized control abstractions
Model-Based implementation of parallel real-time systems
FASE'13 Proceedings of the 16th international conference on Fundamental Approaches to Software Engineering
Hi-index | 0.00 |
The paper studies a distributed implementation method for the BIP (Behavior, Interaction, Priority) component framework for modeling heterogeneous systems.BIP offers two powerful mechanisms for describing composition of components by combining interactions and priorities. A system model is layered. The lowest layer contains atomic components; the second layer, describes possible interactions between atomic components; the third layer includes priorities between the interactions. The current implementation of BIP is based on global state operational semantics. An Engine directly interprets the operational semantics rules and computes the possible interactions between atomic components from global states.The implementation method is a translation from BIP models into distributed models involving two steps. The first translates BIP models into partial state models where are known only the states of the components which are ready to communicate. The second implements interactions in the partial state model by using message passing primitives.The main results of the paper are conditions for which the three models are observationally equivalent. We show that in general, the translation from global state to partial state models does not preserve observational equivalence. Preservation can be achieved by strengthening the premises of the operational semantics rules by an oracle. This is a predicate depending on the priorities of the BIP model. We show that there are many possible choices for oracles. Maximal parallelism is achieved for dynamic oracles allowing interaction as soon as possible. Nonetheless, these oracles may entail considerable computational overhead. We study performance trade-offs for different types of oracles. Finally, we provide experimental results illustrating the application of the theory on a prototype implementation.