La
Máquina Virtual Java (JVM) es el entorno en el que se ejecutan los programas
Java, su misión principal es la de garantizar la portabilidad de las
aplicaciones Java. Define esencialmente un ordenador abstracto y especifica las
instrucciones (bytecodes) que este ordenador puede ejecutar. El
intérprete Java específico ejecuta las instrucciones que se guardan en los
archivos cuya extensión es .class.
Las tareas principales de la JVM son las siguientes:
- Reservar
espacio en memoria para los objetos creados
- Liberar
la memoria no usada (garbage collection).
- Asignar
variables a registros y pilas
- Llamar
al sistema huésped para ciertas funciones, como los accesos a los
dispositivos
- Vigilar
el cumplimiento de las normas de seguridad de las aplicaciones Java
Esta
última tarea, es una de las más importantes que realiza la JVM. Además, las
propias especificaciones del lenguaje Java contribuyen extraordinariamente a
este objetivo:
- Las
referencias a arrays son verificadas en el momento de la ejecución del
programa
- No
hay manera de manipular de forma directa los punteros
- La
JVM gestiona automáticamente el uso de la memoria, de modo que no queden
huecos.
- No
se permiten realizar ciertas conversiones (casting) entre distintos tipos
de datos.
Por
ejemplo, cuando el navegador encuentra una página web con un applet, pone en
marcha la JVM y proporciona la información que aparece en la etiqueta <APPLET
> </APPLET>. El cargador de clases dentro de la JVM ve que clases
necesita el applet. Dentro del proceso de carga, las clases se examinan
mediante un verificador que asegura que las clases contienen código válido y no
malicioso. Finalmente, se ejecuta el applet.
0 comentarios:
Publicar un comentario