La JVM
JAVA VIRTUAL MACHINE

WB01624_.gif (281 octets) RETOUR Justification

Problème : Incompatibilité des applications entre plateformes

Solution : Passer par une Machine Virtuelle : la J.V.M. (JAVA Virtual Machine)

Jeu d'instruction optimisé pour être petit et compact

Code source JAVA compilé et stocké dans un fichier class

Destiné à être véhiculé à travers le réseau Internet

Validité du code et sécurité des chargements réseau

Problème : assurer la sécurité et la robustesse du système client lors de l'exécution d'une classe

Vérification du byteCode lors du chargement de la classe :

     Vérification des droits d'accés

     Vérification de la non construction de pointeurs

     Vérification de la non existence de transtypages

     Vérification des paramètres dans les appels de méthodes

     Vérification du non dépassement de pile

Classes chargées dans des espaces mémoire distincts en provenance de leur provenances (local, machine X, machine Y) -> impossibilité qu'une classe distante écrase une classe locale

Vérification du non accès à des ressources protégées

Après toutes ces vérifications, traduction du ByteCode en langage machine puis exécution