Arquitectura JVM
La arquitectura interna de Java Virtual Machine consta de tres partes principales.
1. Cargador de clases
2. Área de memoria
3. Motor de ejecución
Aquí hay una representación visual de la arquitectura JVM.
Debajo de todas las partes de Java Virtual Machine se explican en detalle.
Cargador de clases
Un cargador de clases en JVM se refiere a un subsistema responsable de cargar archivos. Carga un programa Java cada vez que ejecutamos un programa Java. Java proporciona los siguientes cargadores de clase.
a. Cargador de clases de bootstrap
Una superclase de cargador de clases de extensión que es responsable de cargar el RT.archivo jar
b. Cargador de clases de extensión
Un niño de Bootstrap ClassLoader y el padre del Sistema/ClassLoader de aplicaciones, Extension ClassLoader carga archivos JAR que se guardan en el directorio.
C. Cargador de clases de sistema/aplicación
Este cargador de clase carga archivos de clase de classpath y es un hijo de cargador de clases de extensión.
Área de memoria
Un área de memoria JVM consta de las siguientes partes.
a. Área de método
El propósito del área del método es guardar la estructura de clases como datos de métodos o datos de campo, grupo de tiempo de ejecución y código para métodos.
b. Montón
Heap es un área de datos de tiempo de ejecución donde se asignan los objetos.
C. Pilas
Stack es responsable de almacenar marcos, variables locales y resultados parciales. Desempeña un papel importante en la invocación del método y el retorno del método. Cada vez que se crea un hilo, una pila JVM privada para ese hilo en particular se crea simultáneamente y se crea un nuevo marco cada vez.
d. Registros de PC
Es responsable de mantener las direcciones mientras se ejecutan las instrucciones de JVM.
mi. Pilas de métodos nativos
Es responsable de mantener todos los métodos nativos requeridos en una aplicación.
Motor de ejecución
Un motor de ejecución consta de lo siguiente.
a. Intérprete
Ejecuta instrucciones después de leer la transmisión de bytecode.
b. Compilador justo en el tiempo (JIT)
JIT mejora el rendimiento al compilar partes del bytecode con funcionalidades similares al mismo, en adelante, reduciendo el tiempo general de compilación.
C.Recolector de basura
Se usa para recopilar objetos a los que no se hace referencia y eliminarlos para liberar la memoria.
Interfaz de método nativo
Ayuda a comunicarse con aplicaciones escritas en diferentes idiomas como C, C ++, etc. También es responsable de ayudar al código Java que se ejecuta en JVM para llamar a bibliotecas y aplicaciones nativas.
Bibliotecas de métodos
Consiste en bibliotecas nativas (C, C ++) que son necesarias para el motor de ejecución.
Conclusión
Java Virtual Machine (JVM) es una máquina abstracta que está construida para ejecutar programas Java. La arquitectura de JVM comprende tres partes principales que son cargador de clases, área de memoria y un motor de ejecución. El área de memoria y el motor de ejecución consisten aún más en algunas partes que tienen diferentes funcionalidades. Este tutorial explica la arquitectura de Java Virtual Machine (JVM) que destaca las funciones de sus diferentes componentes.