Execution support for multi-threaded active objects : design and implementation

Abstract : In order to tackle the development of concurrent and distributed applications, the active object programming model provides a high-level abstraction to program concurrent behaviours. Active objects are independent entities that communicate by mean of asynchronous messages. Very few of the existing active object frameworks consider a multi-threaded execution of active objects. Introducing a controlled parallelism enables removing some latency induced by remote method invocations. In this thesis, we take interest in the challenges of having multiple threads inside an active object, and in their safe coordination to execute tasks in parallel. We enhance this programming model by adding language constructs that control the internal scheduling of tasks. We then show its expressiveness in two ways: first with a classical approach, by developing and analysing the performance of several applications, and secondly, by compiling another active object language with different synchronisation primitives into our programming model. Also, we make multi-threaded active objects resilient in a distributed context through generic engineering constructs, and by using our programming abstractions. Finally, we develop a peer-to-peer application that shows multi-threaded active objects and their features in action. Overall, we design a thorough framework for the development and execution of high performance distributed applications. We reinforce our programming model by formalising our work and the model’s properties
Document type :
Theses
Complete list of metadatas

https://tel.archives-ouvertes.fr/tel-01441662
Contributor : Abes Star <>
Submitted on : Friday, January 20, 2017 - 9:00:06 AM
Last modification on : Saturday, December 8, 2018 - 1:20:51 AM
Long-term archiving on : Friday, April 21, 2017 - 1:22:32 PM

File

2016AZUR4062.pdf
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-01441662, version 1

Collections

Citation

Justine Rochas. Execution support for multi-threaded active objects : design and implementation. Other [cs.OH]. Université Côte d'Azur, 2016. English. ⟨NNT : 2016AZUR4062⟩. ⟨tel-01441662⟩

Share

Metrics

Record views

780

Files downloads

221