10
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 [email protected] [email protected] www-sor.inria.fr/~vvm

La machine virtuelle virtuelle utopie et/ou réalité ?

  • Upload
    quilla

  • View
    36

  • Download
    0

Embed Size (px)

DESCRIPTION

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 [email protected] [email protected] www-sor.inria.fr/~vvm. - PowerPoint PPT Presentation

Citation preview

Page 1: La machine virtuelle virtuelle utopie et/ou réalité ?

1

La machine virtuelle virtuelleutopie et/ou réalité ?

Bertil Folliot Ian PiumartaLionel Seinturier Carine Baillarguet

LIP6 /CNRS - thème SRC, Université Paris 6INRIA Rocquencourt - projet SOR

[email protected]@lip6.frwww-sor.inria.fr/~vvm

Page 2: La machine virtuelle virtuelle utopie et/ou réalité ?

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

Page 3: La machine virtuelle virtuelle utopie et/ou réalité ?

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

MyApplimain() {}

moteur d'exécutionchargeur d'objets

MAIS peu flexible (nouveau domaine => nouveau langage + nouvelle MV) pas adaptable (évolution du langage) pas intéropérable

Page 4: La machine virtuelle virtuelle utopie et/ou réalité ?

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é

Page 5: La machine virtuelle virtuelle utopie et/ou réalité ?

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 myPushdef-prim getList

maVMlet interpréteur

optimiseur

générateurde code

code natif

ressource minimalemémoire, E/S, CPU

MV d'environnement système

MV d'environnement applicatif

type: maVMletmain() { ... }

monAppli

Page 6: La machine virtuelle virtuelle utopie et/ou réalité ?

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

Page 7: La machine virtuelle virtuelle utopie et/ou réalité ?

7

MVV & AOP

Principe de la programmation par aspects

aspectaspect

tresseurd'aspects

Applicationaugmentéepar les aspects

compilation/interprétation

application

métamodèle

métamodèle

points dejonction

points dejonction

Page 8: La machine virtuelle virtuelle utopie et/ou réalité ?

8

MVV & AOP

Gains escomptés

performances (recompilation dynamique) facilité d'écriture du tresseur (MVlet)

Niveaulangage

Niveau environnementd'exécution

méta-modèle

tresseur

accès réflexif au coded'une application

reconfigurationdynamique d'applications

Page 9: La machine virtuelle virtuelle utopie et/ou réalité ?

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

Page 10: La machine virtuelle virtuelle utopie et/ou réalité ?

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