2009-03-06 14 views
12

Quiero conocer las funciones internas de la JVM, cómo funciona y los detalles que importan. ¿Puede sugerir algún recurso o el mejor libro disponible para esto?Comprensión de JVM Better

Respuesta

5

La mayor parte de lo que sé de la JVM proviene de los documentos de Sun. Tienen algunos documentos técnicos sobre el HotSpot VM: http://java.sun.com/javase/technologies/hotspot/index.jsp

Usted mencionó rendimiento, así que tal vez estaría interesado en la documentación de rendimiento Sun: http://java.sun.com/docs/performance/

Durante más enfoque en las manos, intente buscar en Kaffe. Esto le mostrará lo que hace una máquina virtual, pero no necesariamente la forma en código Java funciona en la máquina virtual Java de Sun:

Kaffe es una implementación de sala limpia de la máquina virtual de Java, además de las bibliotecas de clases asociados necesaria para proporcionar un tiempo de ejecución de Java ambiente.

Y el OpenJDK es un gran lugar para aprender acerca de cómo se implementa la Plataforma Java: http://openjdk.java.net/

0

Si su motivación es averiguar cómo escribir código que funciona más rápido o usa menos memoria de la especificación VM no ayudará demasiado.

La especificación de VM no está diseñada para brindarle información al respecto, sino que está diseñada para que el desarrollador de VM sepa, más o menos, cómo implementar la VM.

Dicho esto, no puede leerlo.

La mejor manera de averiguar acerca de los problemas de velocidad/memoria es a un nivel mucho más alto, hay una cantidad de libros que le ayudarán a obtener un código más rápido/más simple.

Un generador de perfiles es una herramienta invaluable para probar su código y ver qué es más rápido/utiliza menos memoria. Perfil, vea qué es lento/usa mucha memoria, cámbielo, perfil, vea qué hicieron los cambios.

0

A continuación se muestra un enlace a mi profundo curso de Java en la plataforma en línea Udemy. Tiene un capítulo entero completo sobre JVM con alrededor de 3 horas de video. Cubre todo, desde Lifetime de un tipo, áreas de datos en tiempo de ejecución, reflexión, recolección de basura, pilas de acumuladores & y conjunto de instrucciones. "Dentro de la máquina virtual Java 2", el libro en línea mencionado en una de las respuestas se usa como uno de los libros de referencia.

https://www.udemy.com/java-in-depth-become-a-complete-java-engineer/