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
Résumé : La programmation concurrente à mémoire partagée est un modèle classique de concurrence qui permet notamment de tirer parti des processeurs multicoeurs aujourd'hui très répandus dans les ordinateurs personnels. Les programmes concurrents sont sujets au problème des interblocages, notoirement difficiles à prévoir et à éliminer, en particulier dans le cas de l'utilisation du mécanisme de synchronisation très populaire que sont les mutex. Dans cette thèse nous avons travaillé à rendre plus aisée la programmation avec des mutex en étudiant des méthodes d'évitement des interblocages. Nous avons d'abord étudié une méthode utilisant une analyse statique par un système de types et d'effets, puis une variante de cette méthode dans un langage à typage dynamique. La seconde méthode est celle que nous avons le plus développée. Elle combine prévention et évitement des interblocages pour fournir une fonction de verrouillage sans interblocages expressive et utilisable. Nous l'avons implémentée sous forme d'une bibliothèque Hop (dialecte de Scheme). Ce faisant, nous avons développé un algorithme sans famine pour l'acquisition simultanée d'un nombre arbitraire de mutex, et identifié le concept d'interblocage asymptotique. Nous avons également été amenés à proposer une optimisation des exceptions (blocs finally). Nos tests de performances semblent indiquer un impact négligeable de l'utilisation de notre bibliothèque sur des applications concurrentes réelles. La majeure partie de notre recherche pourrait être appliquée à d'autres langages de programmation structurée tels que Java.
Type de document :
Thèse
Autre [cs.OH]. Université Nice Sophia Antipolis, 2015. Français. 〈NNT : 2015NICE4067〉
Liste complète des métadonnées

Littérature citée [50 références]  Voir  Masquer  Télécharger

https://tel.archives-ouvertes.fr/tel-01246636
Contributeur : Abes Star <>
Soumis le : jeudi 7 janvier 2016 - 11:32:20
Dernière modification le : jeudi 11 janvier 2018 - 16:48:00
Document(s) archivé(s) le : vendredi 8 avril 2016 - 13:18:49

Fichier

2015NICE4067.pdf
Version validée par le jury (STAR)

Identifiants

  • 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〉

Partager

Métriques

Consultations de la notice

599

Téléchargements de fichiers

850