La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 La machine virtuelle virtuelle utopie et/ou réalité ? Bertil Folliot Ian Piumarta Lionel Seinturier Carine Baillarguet LIP6 /CNRS - thème SRC, Université

Présentations similaires


Présentation au sujet: "1 La machine virtuelle virtuelle utopie et/ou réalité ? Bertil Folliot Ian Piumarta Lionel Seinturier Carine Baillarguet LIP6 /CNRS - thème SRC, Université"— Transcription de la présentation:

1 1 La machine virtuelle virtuelle utopie et/ou réalité ? Bertil Folliot Ian Piumarta Lionel Seinturier Carine Baillarguet LIP6 /CNRS - thème SRC, Université Paris 6 INRIA Rocquencourt - projet SOR www-sor.inria.fr/~vvm

2 2 Besoins des applications modernes Environnement d'exécution actif Adaptabilité/spécialisation : OS + langage Flexibilité/extensibilité pour ajouter/modifier des fonctionnalités, en fonction de l'application, de son utilisation ou des évolutions matérielles

3 3 Machines virtuelles Machines virtuelles classiques (ex : Java VM) En utilisation croissante pour résoudre les problèmes systèmes Applications portables, compactes, sures, (un peu) spécialisables Chargement de bytecode, interprétation, JIT MV classique MyAppli main() {} moteur d'exécution chargeur d'objets MAIS peu flexible (nouveau domaine => nouveau langage + nouvelle MV) pas adaptable (évolution du langage) pas intéropérable

4 4 Objectifs Construire une plate-forme d'exécution (minimale) dans laquelle chaque expert informatique d'un domaine construit son environnement d'exécution (OS, API, langage) sur lequel les programmeurs développent les solutions Adaptation et flexibilité et interopérabilité

5 5 Machine Virtuelle Virtuelle MVV = une plate-forme d'exécution (MV) dans laquelle on construit son environnement d'exécution (appelé MVlet) : langage, API, modules systèmes, … myPush {... } getList {... } def-ins myPush def-prim getList maVMlet interpréteur optimiseur générateur de code code natif ressource minimale mémoire, E/S, CPU MV d'environnement système MV d'environnement applicatif type: maVMlet main() {... } monAppli

6 6 MVV & AOP Programmation par aspects (AOP) + améliorer et augmenter la modularité des applications + gérer le code enchevêtré Un aspect + une unité de décomposition transverse[conception] aux fonctionalités de l'application + une structure logicielle[implantation] Transversalité des aspects + inhérente dans les applications complexes + traduit un besoin d'intégration de l'application dans son environnement + ne peut pas forcément être traitée par les approches habituelles

7 7 MVV & AOP Principe de la programmation par aspects aspect tresseur d'aspects Application augmentée par les aspects compilation/ interprétation application méta modèle méta modèle points de jonction points de jonction

8 8 MVV & AOP Gains escomptés performances (recompilation dynamique) + facilité d'écriture du tresseur (MVlet) Niveau langage Niveau environnement d'exécution méta-modèle tresseur accès réflexif au code d'une application reconfiguration dynamique d'applications

9 9 MVV & Distribution des connaissances Notion d'information active La MVV sert de base pour concevoir un environnement d'exécution actif pour la mobilité et le partage d'information Ajout dynamique de nouvelles connaissances (sous forme de règles, programmes,...) pour traiter l'information

10 10 Réalisation RVM et µ-MV Machines virtuelles à la Scheme Disponible (900Ko) sous licence GPL Générateur dynamique de code de MV Chargement dynamique de bibliothèque système Applications Réseaux actifs : PLANlet et ANTSlet Satellite PLERS reconfiguration logiciel pour le satellite COROT


Télécharger ppt "1 La machine virtuelle virtuelle utopie et/ou réalité ? Bertil Folliot Ian Piumarta Lionel Seinturier Carine Baillarguet LIP6 /CNRS - thème SRC, Université"

Présentations similaires


Annonces Google