SCHOONER : une encapsulation orientée objet de supports d'exécution pour applications réparties - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Thèse Année : 1999

SCHOONER : an Object-Oriented Runtime Support for Distributed Applications

SCHOONER : une encapsulation orientée objet de supports d'exécution pour applications réparties

Résumé

In this thesis, we focus on the design of an object-oriented runtime support for distributed applications. One of the main goals is to make a clear distinction between the managment of the runtime support and the application itself. On the other hand, such a runtime support has to be portable to a wide number of platforms; in this respect, the programming interface has to be minimal while still being extensible. The design and implementation of a C++ library called Schooner is the main result of our work. Its programming model rests on the concepts of virtual computers and distributed entities communicating via active messages. We also provide a concurrent extension of this basic model which allows the use of lightweight processes. In order to validate the Schooner applications, debugging tools have also been built. One of the main features of our environment is that it is an open system: the user can choose to modify the behaviour of the runtime components according to the specific needs of an application in order to improve the performance. For example, the policies for message buffering between any two entities is completely under the control of the application. Likewise, in the concurrent version of Schooner, the scheduling policies can be controlled from the application. The Schooner environment has been validated through the development of 2 large applications: the distributed version of Prosit, an object-oriented environment for discrete event simulation programming, and C++//, a distributed and parallel extension of the C++ language.
Le sujet de cette thèse est la conception d'un support d'exécution orienté objet pour applications réparties. Un des principaux objectifs est de permettre de correctement isoler le code lié à la gestion du support d'exécution du code propre à l'application. D'autre part, un tel support se doit d'être portable sur le plus grand nombre de plate-formes ; pour cela son interface de programmation doit être minimale tout en restant extensible. La prise en compte de tels critères permet d'obtenir un support pour une grande variété d'applications réparties. Nous avons donc conçu et implémenté un support d'exécution sous la forme d'une bibliothèque de classes appelée Schooner. Le modèle de programmation de la bibliothèque s'articule autour des notions de machine virtuelle et d'entités réparties communiquant par messages actifs. En plus de ce modèle de base, nous avons également développé une extension multi-active permettant l'utilisation de processus légers. Afin de compléter et valider \schooner, des outils d'aide au développement et de mise au point d'applications réparties sont également fournis. Une des caractéristiques importantes de l'environnement fourni est d'être facilement personnalisable selon les besoins spécifiques d'une application en permettant par exemple une amélioration des performances. Dans ce contexte, nous proposons un mécanisme de bufferisation des messages entre deux entités communicantes, mécanisme entièrement paramétrable par l'utilisateur. Il est également envisageable dans le cadre de la version multi-active de modifier l'ordonnancement des entités actives. Cet environnement a pu être validé par le développement de deux applications de taille conséquente : la version répartie d'un simulateur à événements discrets orienté objet, Prosit et une extension répartie et parallèle du langage C++, C++//.
Fichier principal
Vignette du fichier
TU-0583.pdf (2.31 Mo) Télécharger le fichier

Dates et versions

tel-00142370 , version 1 (18-04-2007)

Identifiants

  • HAL Id : tel-00142370 , version 1

Citer

Nathalie Furmento. SCHOONER : une encapsulation orientée objet de supports d'exécution pour applications réparties. Réseaux et télécommunications [cs.NI]. Université Nice Sophia Antipolis, 1999. Français. ⟨NNT : ⟩. ⟨tel-00142370⟩
146 Consultations
631 Téléchargements

Partager

Gmail Facebook X LinkedIn More