previous up next top index
Précédent : Spécificationpreuve détaillée, mise en Remonter : Mémoire partagée persistante : Larchant Suivant : Mesure et caractérisation d'applications réparties


Environnement de programmation pour Larchant

 

Participants : Eberhard Osthus, Fabrice Le Fessant, Marc Shapiro

L'un des objectifs principaux de Larchant est de simplifier la distribution d'applications existantes avec une modification minimale du code. Pour cela, nous avons développé un outil capable d'analyser statiquement les fichiers de code binaire des programmes utilisateurs pour en extraire toutes les informations dont le ramasse-miettes de Larchant aura besoin dynamiquement [11].

Cet outil généralise l'outil OCI Object Class Information, précédemment développé. Il permet de récupérer l'ensemble des informations relatives aux types, et en particulier la position et le type des pointeurs dans un objet. Le nouvel outil est adaptable à tout compilateur C++, et à toute application ayant besoin d'informations sur le type des objets ; il génère de façon complète toutes les informations sur la signature des objets.

Nous avons développé un mécanisme d'emballage-déballage générique, c'est-à-dire capable de transmettre un objet de n'importe quel type sur un canal de transmission, sans génération statique de code. L'algorithme d'emballage tient compte des cycles, de l'héritage (simple et multiple), des tableaux, et des objets emboîtés.