Каковы функции JVM? Все, что я знаю:
- JIT-компилятор
- GC
- распределитель памяти
Какие шаги он выполняет при загрузке приложения Java?
Мне интересно, потому что, если я сравниваю время загрузки приложения Java с этими шагами:
InitializeNativeTarget
на LLVM
- некоторая инициализация GC
- немного Qt / GTK / что угодно init
- немного JIT / впереди компиляции частей приложения
- само приложение init
Мне кажется, что загрузка JVM занимает намного больше времени, чем выполнение шагов, перечисленных выше. Так что же он делает в дополнение к этому?