Machine virtuelle Java

Ajouter à la bibliothèque

H1588 V1 Archive

Machine virtuelle Java

Auteur(s) : Jean-Michel DOUIN

Date de publication : 10 août 2000

Ajouter à la bibliothèque Ajouter à la bibliothèque

Logo Techniques de l'Ingenieur Cet article est réservé aux abonnés
Pour explorer cet article plus en profondeur Consulter un extrait gratuit

Déjà abonné ?

Présentation

RÉSUMÉ

Le succès de Java l'a promu langage de programmation sur internet. Cet article présente une architecture synthétique et idéale de la machine virtuelle, ainsi que le format du fichier compilé et un sous-ensemble du jeu d'instructions. Les instructions de la machine sont regroupées par famille et leur description est associée aux codes sources Java les ayant engendrées. Les avantages de cette solution sont connus et multiples, l’inconvénient majeur restant le surcoût en temps d’exécution.

Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.

Lire l'article

AUTEUR(S)

  • Jean-Michel DOUIN : Docteur en informatique - Maître de conférences au Conservatoire national des arts et métiers (CNAM)

 INTRODUCTION

La popularité du web a promu Java comme langage de programmation sur Internet. Ce succès vient principalement de l’intégration d’une machine virtuelle Java au sein de tout navigateur. Le code intermédiaire engendré par la compilation d’un code source Java est chargé et exécuté par la machine dans une fenêtre du navigateur. L’exécution du même code intermédiaire quelle que soit la plate-forme offre aux développeurs en Java une large diffusion de leurs programmes. La machine virtuelle et les librairies associées garantissent une exécution du code Java indépendante du système d’exploitation et d’une architecture matérielle. Les composantes de la machine virtuelle Java et le format du code intermédiaire permettent l’accès aux objets distants et la migration de codes à travers le réseau. Ces caractéristiques sont essentielles dans un environnement distribué et contribuent au succès actuel du langage et de la machine virtuelle. La machine est également intégrée au sein de systèmes embarqués, comme une plate-forme équipée d’un microcontrôleur avec peu de mémoire centrale.

La machine Java est un programme interprétant les instructions transmises par le réseau ou les instructions extraites d’un fichier local. Les avantages de cette solution éprouvée sont connus et multiples :

  • le code est portable quelle que soit la plate-forme, car il suffit que chaque plate-forme possède un interpréteur de ce code et les librairies d’accès aux ressources de la machine hôte ;

  • le code chargé peut être vérifié au chargement. La vérification du code est facilitée et primordiale dans un environnement ouvert comme Internet ;

  • le code est en général plus compact. L’architecture de la machine Java est de type machine à pile, les opérandes des instructions devenues implicites engendrent une taille de code moins importante qu’une machine traditionnelle à registres.

L’inconvénient majeur réside dans le surcoût en temps d’exécution dû à cette couche logicielle supplémentaire.

L’architecture de la machine est liée aux concepts de la programmation en langage orienté objet, mais la machine reste indépendante du langage de programmation. Le seul type en entrée admis par la machine est le type du fichier compilé. Le format de ce fichier a permis des extensions conséquentes du langage Java sans aucune modification de la machine.

Cet article présente une architecture synthétique de la machine, le format du fichier compilé et le jeu d’instructions. Le format du fichier compilé est détaillé et accompagné d’un exemple concret de code source Java. Les instructions de la machine sont regroupées par famille, leur description est associée...

Cet article est réservé aux abonnés
Logo Techniques de l'Ingenieur

Cet article est réservé aux abonnés. Il vous reste 92 % à découvrir.

Cet article est réservé aux abonnés Consulter un extrait gratuit

Déjà abonné ?


MOTS-CLÉS

architecture   |  

VERSIONS

Il existe d'autres versions de cet article :

DOI (DIGITAL OBJECT IDENTIFIER)

https://doi.org/10.51257/a-v1-h1588

Lecture en cours
Machine virtuelle Java

Article inclus dans l'offre

"Technologies logicielles Architectures des systèmes"

( 408 articles )

Une base complète d’articles

Actualisée et enrichie d’articles validés par nos comités scientifiques.

Services

Quiz, médias, tableaux, formules, vidéos, etc.

Des modules pratiques

Opérationnels et didactiques, pour garantir l'acquisition des compétences transverses.

Des avantages inclus

Un ensemble de services exclusifs en complément des ressources.

Voir le détail de l'offre

Dans les ressources documentaires

Plate-forme .NET

Le .NET Framework, qui permet la création et l’exécution d’applications modernes conçues autour des stand...

Développement pour mobiles avec Android

La plate-forme Android est un système d'exploitation dédié au développement d'application pour mobiles, P...

Tous les livres blancs
Article L’ombre des pirates sur les élections ?
6 janvier 2017
L’ombre des pirates sur les élections ?

Avant de céder son fauteuil à M. Trump, M. Obama a publié les déclarations fracassantes selon lesquelles des pirates russes auraient réussi à influencer les vot...

Toutes les actualités

Inscrivez-vous aux newsletters !

Contactez-nous