Reconfiguration and life-cycle distributed components : asynchrony, coherence and verification / par Marcela Rivera ; sous la direction de Ludovic Henrio

Date :

Editeur / Publisher : [S.l.] : [s.n.] , 2011

Type : Livre / Book

Type : Thèse / Thesis

Langue / Language : anglais / English

Reconfiguration ( informatique)

DCOM (architecture des ordinateurs)

Systèmes adaptatifs (technologie)

Henrio, Ludovic (1976-.... ; informaticien) (Directeur de thèse / thesis advisor)

Université de Nice (1965-2019) (Organisme de soutenance / degree-grantor)

Université de Nice-Sophia Antipolis. Faculté des sciences (Organisme de soutenance / degree-grantor)

École doctorale Sciences et technologies de l'information et de la communication (Sophia Antipolis, Alpes-Maritimes) (Organisme de soutenance / degree-grantor)

Résumé / Abstract : En programmation orientée à composants, mais particulièrement dans des environnements distribués, les composants ont besoin d’être adaptatifs. Une majeure partie de cette adaptation repose sur la reconfiguration dynamique. Dans cette thèse, nous introduisons une nouvelle approche pour la reconfiguration des modèles de composants distribués, avec l’objectif de faciliter le processus de reconfiguration et d’assurer la consistance et la cohérence du système. Avant d’exécuter une reconfiguration, il est nécessaire que les composants soient dans un état cohérent et stable, afin d’éviter des incohérences dans le processus de reconfiguration. Pour ceci, nous concevons un algorithme pour l’arrêt d’un composant d’une manière sécurisée et atteignant un état stable. Cela a été réalisé en mettant en œuvre un mécanisme de marquage et d’interception qui permet d’ajouter des informations aux requêtes et de manipuler leurs flux, afin de décider lesquelles doivent être servies avant d’arrêter le composant. Nous avons conçu un ensemble de primitives de reconfiguration de haut niveau qui permettent de réaliser des opérations de reconfiguration plus complexes. Nous fournissons un contrôleur supplémentaire à notre modèle de composant qui implémente ces primitives. Pour le déclenchement des tâches de reconfiguration, nous avons étendu le langage FScript pour lui permettre d’exécuter des reconfigurations distribuées, en déléguant certaines actions à des composants. Pour ceci, nous avons défini un contrôleur additionnel à l’intérieur de la membrane des composants. Nous avons testé notre approche sur deux applications basées sur GCM/ProActive : CoCoME et TurnTable.

Résumé / Abstract : For component programming, but even more specifically in distributed and Grid environments, components need to be highly adaptive. A great part of adaptativeness relies on dynamic reconfiguration of component systems. We introduce a new approach for reconfiguring distributed components with the main objective to facilitate the reconfiguration process and ensure the consistency and coherence of the system. First, before executing a reconfiguration it’s necessary that the components are a coherent and quiescent state. This is done to avoid inconsistency in the reconfiguration process. To achieve this, we design an algorithm for stopping a component in a safe manner and reach this quiescent state. This was realized by implementing a tagging and interception mechanisms that adds information to the requests and manipulates their flow in order to decide which of them must be served before stopping the component. Next, we designed a set of high-level reconfiguration primitives to achieve more complex reconfiguration operations. These primitives include : add, remove, duplicate, replace, bind, and unbind. We provide an additional controller to our component model which implements these primitives. Additionally, for triggering the reconfiguration tasks, we extended the FScript language to give it the capability of executing distributed reconfiguration actions, by delegating some actions to specific components. To achieve this objective, we defined an additional controller inside the membrane of the components. We tested our implementation over two GCM/Pro Active based applications : the CoCoME example and the TurnTable example.