Java Virtual Machine

Java Virtual Machine

Java Virtual Machine - Área para compilar programas

maquina virtual

En actualidad debido a la existencia de distintos tipos de procesadores y ordenadores llevó a los ingenieros de Sun a la conclusión de que era muy importante conseguir un software que no dependiera del tipo de procesador utilizado. Se planteó la necesidad de conseguir un código capaz de ejecutarse en cualquier tipo de máquina. Una vez compilado no debería ser necesaria ninguna modificación por el hecho de cambiar de procesador o de ejecutarlo en otra máquina. La clave consistió en desarrollar un código “neutro” el cual estuviera preparado para ser ejecutado sobre una “máquina hipotética o virtual”, denominada Java Virtual Machine (JVM). Es esta Java Virtual Machine (JVM) quien interpreta este código neutro convirtiéndolo a código particular de la CPU utilizada se evita tener que realizar un programa diferente para cada CPU o plataforma.

ventajas de la jvm

Ventajas de la JVM

La JVM es el intérprete de Java ejecutando los bytecodes que son ficheros compilados con extensión *.class creados por el compilador de Java (javac.exe). Dentro de las numerosas opciones entre las que destaca la posibilidad de utilizar el denominado JIT (Just-In-Time Compiler), que puede mejorar entre 10 y 20 veces la velocidad de ejecución de un programa.
La gran ventaja de la máquina virtual java es aportar portabilidad al lenguaje, de manera que desde Sun Microsystems se han creado diferentes máquinas virtuales java para diferentes arquitecturas, y, así, un programa .class escrito en Windows puede ser interpretado en un entorno Linux. Tan solo es necesario disponer de dicha máquina virtual para dichos entornos. De ahí el famoso axioma que sigue a Java: "escríbelo una vez, ejecútalo en cualquier parte", o "Write once, run anywhere".

capas en todas las versiones de la jvm

Versiones de la JVM

Pero los intentos de la compañía propietaria de Java y productos derivados de construir microprocesadores que aceptaran el Java bytecode como su lenguaje de máquina fueron más bien infructuosos. Existen varias versiones, en orden cronológico, de la máquina virtual de Java. En general la definición del Java bytecode no cambia significativamente entre versiones, y si lo hace, los desarrolladores del lenguaje procuran que exista compatibilidad hacia atrás con los productos anteriores; pero muchas veces esto no es adecuado, y por ello al intentar aprender de manera autonoma te encuentras con diversos obstaculos, por ello te recomendamos que alguien te guien como en este curso java presencial donde te llevaran de la mano para tu aprendizaje.

funcion de la jvm perfeccionada

Perfeccionamiento de la JVM

A partir de J2SE 5.0 hubieron cambios en la especificación de la Java Virtual Machine (JVM) que han sido desarrollados bajo el auspicio de la Java Community Process (JCP) y especificada en la JSR 924.1. Al igual en el año 2006 surgieron cambios en la especificación para soportar las modificaciones del formato del fichero de clases (JSR 2022), el cual, se llevaron a cabo en una versión de mantenimiento en la JSR 924. Las especificaciones para la JVM están publicadas en lo que se conoce como "el libro azul". El prefacio reza así, esperamos que esta especificación documente suficientemente la Máquina Virtual de Java para hacer posibles implementaciones desde cero. Sun proporciona pruebas que verifican que las implementaciones de la Máquina Virtual de Java se ejecuten correctamente así como Kaffe que es un ejemplo de una implementación de JVM desde cero. Sun se mantiene como la propietaria de la marca registrada "Java", que usa para certificar aquellas implementaciones que se ajustan y son totalmente compatibles con sus especificaciones; para aprender a utilizarla te recomendamos este curso de java donde aprenderás desde cero.

Articulos Relacionados a la tecnología Java

Seguridad de Java Java para Android Applets Java Juegos en Java Web Services Java Servidor Java Java 8 Fundamentos de Java 8 Variable Path
Diplomado Java

Diseño de paginas Web Grupo Codesi