Adquiere por un año todos los cursos, escuelas y certificados por un precio especial.

Antes: $249

Currency
$219/año

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Comprar ahora

Termina en:

0D
14H
44M
38S

Qué es la Java Virtual Machine

2/37

Lectura

¿Qué es una Java Virtual Machine?

Una virtual machine es una virtualización o simulación de un sistema operativo o de los procesos que ocurren dentro de este. En nuestro caso, la Java Virtual Machine pertenece al segundo tipo y se encarga de simular los procesos que ocurren dentro de un sistema operativo. A este tipo de máquinas virtuales se les llama Process Virtual Machines.

¿Qué ventaja nos da?

Nos ayuda a manejar los punteros y las referencias de memoria que en otros tipos de lenguaje como C o C++ hay que manejar manualmente. Para esto se utiliza un proceso llamado garbage collection. Este proceso se encarga de revisar qué referencia de memoria no se está utilizando para eliminarla y así reducir la cantidad memoria que puede consumir un programa.

¿Cómo funciona la JVM?

La JVM funciona como un punto medio entre el código que nosotros escribimos y lo que entiende el sistema operativo del ordenador. Dependiendo del sistema operativo que uses puede variar. La JVM nos ayuda a que nuestro código se ejecute en Linux, Windows y MacOS. Nuestro código es convertido por la JVM a un lenguaje que puede entender el sistema operativo llamado Java Bytecode.

En palabras más simples, nosotros ingresamos código de Kotlin y se transforma en Bytecode. Este proceso puede ocurrir con otros lenguajes como Java, esto hace que nuestro código de Kotlin pueda ser utilizado desde Java y el código de Java pueda ser utilizado en Kotlin.

Aportes 12

Preguntas 1

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

o inicia sesión.

Bytecode vs lenguaje ensamblador
Bytecode es similar a lenguaje ensamblador en que no es un lenguaje de alto nivel, pero todavía es algo legible, a diferencia del lenguaje de máquina. Ambos pueden considerarse “lenguajes intermedios” que se encuentran entre el código fuente y el código de máquina. La principal diferencia entre los dos es que el código de bytes se genera para una máquina virtual (programa.), mientras que el lenguaje ensamblador se crea para un CPU (hardware).



Perdone profe, pero la defincion en los ultimos 2 parrafos no es correcta.

Al realizar la compilacion de un fichero, el compilador (JAVAC) y no la JVM, se encarga de convertir el codigo a Bytecode. Los ficheros (.class) resultantes son ejecutados por la JVM y traducidos a codigo maquina, para que luego ese codigo maquina, sea ejecutado por el procesador.

Saludos!

La JVM interpreta el bytecode en algo que cada sistema operativo puede entender

Muy interesante como puede llegar al mismo punto desde diferentes lenguajes. Desde luego, es muy poderosa la JVM.

La similitud entre ambos lenguajes, hacen que kotlin sea la nueva actualización de java, uno de los códigos base en la programación de multiplataforma, kotlin nace como la alternativa o como un hijo de todo lo aprendido por java.

Kotlin potencializa el código, ayudándolo a simplificar una sintaxis algo robusta y rígida en la programación con java.
Mejora la compilación y los tiempos de respuesta en la virtualización del su código fuente.

![]

la JVM propicia la interoperabilidad entre distintos ecosistemas desde el punto de vista de sistemas operativos

Deberían por favor renovar este curso, haciendo una ruta de desarrollo movil y muchisima más profundización en el tema ¿porque aún no implementan nada de esto?

Sin la JVM nuestro código fuente no seria entendido por el sistema operativo de nuestras computadoras.

La JVM (Java Virtual Machine) se encarga de ejecutar el código de forma que funcione en cualquier dispositivo o sistema operativo.