JVM - Tensho97/Aprende-a-Aprender GitHub Wiki
Los lenguajes de programación de alto nivel como Java , sirven para comunicarse con un ordenador mediante algo más fácil de entender para un humano que el "lenguaje máquina" o el "lenguaje ensamblador" , que está muy cercano a la máquina.
Tradicionalmente, el compilador de un lenguaje de alto nivel se encargaba de traducir ese lenguaje "sencillo" en lenguaje máquina.
Sin embargo, Java lo que hace es un paso intermedio entre estos dos estados: entre el código de alto nivel en el que escribimos las aplicaciones y el de bajo nivel que sale del proceso de compilación.
Cuando compilas una aplicación Java, se compila en un lenguaje intermedio denominado Byte Code.
Entre el Byte Code y el sistema operativo se coloca un componente especial llamado Máquina Virtual que es el que realmente va a ejecutar el código.
JVM (Java Virtual Machine) toma el código Byte Code resultante de compilar tu aplicación Java y lo compila a su vez a código nativo de la plataforma en la que se está ejecutando.
Autor: Julián