what functions are included in a JVM
What are the functions of the JVM? All I know are:
- JIT compiler
- GC
- memory allocator
What are the steps it does when you load a Java application?
I am wonder开发者_C百科ing because if I compare the loading time of a Java application with these steps:
InitializeNativeTarget
on LLVM- some GC initialization
- some Qt/GTK/whatever init
- some JIT/ahead compilation of parts of the app
- the app init itself
It seems to me that the JVM takes much longer to load than it would take to do the steps I listed above. So what does it do in addition to that?
That's actually a very interesting question - to see for yourself, run a Hello World program giving the option -XX:-TraceClassLoading to the java executable.
It bootstraps the whole JVM from scratch. That takes a while.
精彩评论