2009-03-06 20 views
12

Desidero conoscere i componenti interni della JVM, il suo rendimento e i dettagli importanti. Puoi suggerire qualsiasi risorsa o miglior libro disponibile per questo?Informazioni su JVM Better

risposta

5

La maggior parte di ciò che so della JVM proviene dai documenti Sun. Ci sono alcuni ottimi white paper sul HotSpot VM: http://java.sun.com/javase/technologies/hotspot/index.jsp

Lei ha parlato di prestazioni, quindi forse si sarebbe interessato nella documentazione performance Sun: http://java.sun.com/docs/performance/

per una più mani sul metodo, prova a guardare Kaffe. Questo ti mostrerà ciò che una macchina virtuale fa, ma non necessariamente come codice Java funziona in JVM di Sun:

Kaffe è un'implementazione stanza pulita della macchina virtuale Java, più le librerie di classi associate necessario per fornire un runtime Java ambiente.

E l'OpenJDK è un ottimo posto per capire come la piattaforma Java è implementato: http://openjdk.java.net/

0

Se la motivazione è quella di trovare il modo di scrivere codice che funziona più veloce o usa meno memoria la specifica VM non aiuterà troppo.

Le specifiche VM non sono progettate per fornire informazioni al riguardo, sono progettate per consentire agli sviluppatori di VM di sapere, in modo approssimativo, come implementare la VM.

Detto questo non può permettergli di leggerlo.

Il modo migliore per scoprire i problemi di velocità/memoria è molto più elevato, ci sono molti libri che ti aiuteranno a ottenere un codice più veloce/più snello.

Un profiler è uno strumento inestimabile per testare il codice per vedere cosa è più veloce/usa meno memoria. Profilo, guarda cosa è lento/usa molta memoria, cambialo, profilo, vedi quali sono le modifiche.

0

Qui di seguito è un link al mio corso di Java on-line di approfondimento su piattaforma Udemy. Ha un intero capitolo completo su JVM con circa 3 ore di video. Copre tutto da Lifetime di un tipo, aree dati di runtime, riflessione, garbage collection, heap & stack e set di istruzioni. "All'interno della Java 2 Virtual Machine" il libro online menzionato in una delle risposte è usato come uno dei libri di riferimento.

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