Soutien efficace pour créer des systèmes «conscient des ressources» sur des environnements d'exécution gérés
Auteur / Autrice : | Inti Yulien Gonzalez Herrera |
Direction : | Olivier Barais, Johann Bourcier |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique |
Date : | Soutenance le 14/12/2015 |
Etablissement(s) : | Rennes 1 |
Ecole(s) doctorale(s) : | École doctorale Mathématiques, télécommunications, informatique, signal, systèmes, électronique (Rennes) |
Partenaire(s) de recherche : | PRES : Université européenne de Bretagne (2007-2016) |
Laboratoire : Institut de recherche en informatique et systèmes aléatoires (Rennes) - Diverse |
Mots clés
Mots clés contrôlés
Résumé
Aujourd'hui, les systèmes logiciels sont omniprésents. Parfois, les applications doivent fonctionner sur des dispositifs à ressources limitées. Toutefois, les applications nécessitent un support d'exécution pour faire face à de telles limitations. Cette thèse aborde le problème de la programmation pour créer des systèmes "conscient des ressources" supporté par des environnements d'exécution adaptés (MRTEs). En particulier, cette thèse vise à offrir un soutien efficace pour recueillir des données sur la consommation de ressources de calcul (par exemple, CPU, mémoire), ainsi que des mécanismes efficaces pour réserver des ressources pour des applications spécifiques. Dans les solutions existantes, nous trouvons deux inconvénients importants. Les solutions imposent un impact important sur les performances à l'exécution des applications. La création d'outils permettant de gérer finement les ressources pour ces abstractions est encore une tâche complexe. Les résultats de cette thèse forment trois contributions : Un cadre de surveillance des ressources optimiste qui réduit le coût de la collecte des données de consommation de ressources ; une méthodologie pour sélectionner les le support d'exécution des composants au moment du déploiement afin d’exécuter la réservation de ressources ; un langage pour construire des profileurs de mémoire personnalisées qui peuvent être utilisés à la fois au cours du développement des applications, ainsi que dans un environnement de production.