Logiciel installé dans un ordinateur et permettant de simuler le fonctionnement d'un dispositif matériel qui, normalement,
ne pourrait pas fonctionner avec cet ordinateur. Grâce à une machine virtuelle, on peut, par exemple, simuler l'utilisation
d'un processeur, ou d'une console de jeux sur un PC. On pourra ainsi développer et tester de nouveaux jeux pour la
console sans la posséder réellement. L'idée de virtualiser l'environnement d'exécution d'un programme ne date pas
d'hier. On se souviendra qu'au cours des années 1980 certains grands systèmes IBM tournaient sous VM (Virtual Machine), ce qui permettait à leurs utilisateurs de faire cohabiter "virtuellement" plusieurs sytèmes d'exploitation sur une même machine.
Plus près de nous, c'est sur ce principe de machine virtuelle que repose la portabilité du langage Java. En effet, pour
qu'il soit compréhensible par tout type de processeur, la langage Java est interprété par une machine virtuelle, la JVM.
Ce logiciel convertit le langage intermédiaire de Java (bytecode) en langage machine et l'exécute. La JVM originale a été créée par la division JavaSoft de Sun Microsystems.
Ensuite, d'autres fournisseurs ont développé leurs propres JVM ; par exemple, la machine virtuelle de Microsoft est
l'interprète Java de Microsoft.
|