Conception et implémentation d'un langage de programmation concurrente modulaire

Johan Grande 1
1 INDES - Secure Diffuse Programming
CRISAM - Inria Sophia Antipolis - Méditerranée
Abstract : Shared-memory concurrency is a classic concurrency model which, among other things, makes it possible to take advantage of multicore processors that are now widespread in personal computers. Concurrent programs are prone to deadlocks which are notoriously hard to predict and debug. Programs using mutexes, a very popular synchronization mechanism, are no exception. In this thesis we studied deadlock avoidance methods with the aim of making programming with mutexes easier. We first studied a method that uses a static analysis by means of a type and effect system, then a variation on this method in a dynamically typed language. We developed more the second method. It mixes deadlock prevention and avoidance to provide an easy-to-use and expressive deadlock-free locking function. We implemented it as a Hop (dialect of Scheme) library. This lead us to develop a starvation-free algorithm to simultaneously acquire an arbitrary number of mutexes, and to identify the concept of asymptotic deadlock. While doing so, we also developped an optimization of exceptions(finally blocks). Our performance tests seem to show that using our library has negligible impact on theperformance of real-life applications. Most of our work could be applied to other structured programming languages such as Java.
Document type :
Theses
Complete list of metadatas

Cited literature [50 references]  Display  Hide  Download

https://tel.archives-ouvertes.fr/tel-01246636
Contributor : Abes Star <>
Submitted on : Thursday, January 7, 2016 - 11:32:20 AM
Last modification on : Thursday, January 11, 2018 - 4:48:00 PM
Long-term archiving on : Friday, April 8, 2016 - 1:18:49 PM

File

2015NICE4067.pdf
Version validated by the jury (STAR)

Identifiers

  • HAL Id : tel-01246636, version 2

Collections

Citation

Johan Grande. Conception et implémentation d'un langage de programmation concurrente modulaire. Autre [cs.OH]. Université Nice Sophia Antipolis, 2015. Français. ⟨NNT : 2015NICE4067⟩. ⟨tel-01246636v2⟩

Share

Metrics

Record views

636

Files downloads

918