Diferencia entre JVM y JRE

Diferencia entre JVM y JRE

JVM vs JRE

Java es un lenguaje de programación multiplataforma. También se adhiere al principio de "escribir una vez, ejecutar en cualquier lugar". El programa escrito en Java puede ser compilado en Java Bytecode por el compilador Java. Luego, el Bytecode se puede ejecutar en cualquier plataforma que ejecute el JRE (entorno de tiempo de ejecución de Java). JRE incluye el JVM (Java Virtual Machine), las bibliotecas base (que implementa la API Java) y otros archivos de soporte. JVM es una máquina informática abstracta que actúa como mediador entre las plataformas específicas JRE y el código Java.

Que es jvm?

JVM es un tipo de máquina virtual que utiliza máquinas para ejecutar Java Bytecode. Según Sun Microsystems (que desarrolló Java hasta que fue comprado por Oracle, muy recientemente), hay más de 4 mil millones de dispositivos habilitados para JVM en el mundo. Más específicamente, Java Virtual Machine es una máquina informática abstracta implementada en el hardware estándar y el sistema operativo. Una de las funcionalidades importantes proporcionadas por el JVM es el manejo automatizado de excepciones. Por lo general, una colección de bibliotecas estándar acompañan al JVM. De hecho, JRE es un paquete que contiene el JVM y las clases que implementan la API Java. JVM es un componente muy importante, que acomoda la naturaleza de "compilar una vez, ejecutar en cualquier lugar" del lenguaje de programación Java. Mientras el JVM se esté ejecutando, su código Java puede ejecutarse encima, independientemente de la plataforma utilizada en la máquina. Es por eso que Java se llama lenguaje multiplataforma o multiplataforma.

Que es jre?

JRE es el entorno de ejecución en el que se ejecuta el código Java. Por lo general, JRE está compuesto por JVM, clases base estándar (que implementan la API Java base) y otros archivos de soporte. Tipo y estructura de JRE varía según el sistema operativo y la arquitectura de la CPU. Cuando se ejecuta el código Java, el JRE se comunicará con el sistema operativo, que a su vez hablará con los componentes de hardware correspondientes. Tener JRE instalado en su sistema es imprescindible para ejecutar cualquier código Java en su máquina. Sin embargo, JRE no incluye un compilador, depurador o cualquier otra herramienta necesaria para el desarrollo de programas Java (como AppletViewer y Javac). Si necesita desarrollar programas en Java, debe tener el JDK (Java Development Kit), que también incluye el JRE también.

¿Cuál es la diferencia entre y jvm y jre??

Aunque, en el uso diario, los términos JVM y JRE se usan indistintamente, tienen sus diferencias. JVM es una máquina virtual que se ejecuta en la parte superior del sistema operativo, mientras que JRE es el entorno de ejecución de tiempo de ejecución. JVM es parte del JRE. La especificación JVM actúa como el enlace entre la implementación JRE específica de la plataforma y las bibliotecas Java estándar. Por lo tanto, JVM es la entidad que proporciona la abstracción de los detalles de implementación interna al programador. Y es responsable de interpretar el bytecode compilado. Sin embargo, JVM necesita las bibliotecas base y otros archivos de soporte para ejecutar el Bytecode Java. Pero a veces, JRE se identifica simplemente como una implementación de JVM.