Структура, архитектура JVM(внутреннее устройство), от .java до .jar?
Здравствуйте, Возникла необходимость и желание понять внутреннее устройства JVM.
То как создаётся байт код и то что он является входной информацией JVM машины, я понимаю.
Но после того, как он поступает в JVM, для меня глухой лес.
Как я нагуглил, там имеется верификатор байт-кода, сборщик мусора, менеджер безопасности, интерпретатор /JIT компилятор.
Как они работают, в какой последовательности, и как взаимодействую мне не понятно.
Гуглил, искал, читал по частям, но нигде не нашёл схемы или сути того как это выглядит по шагам всё вместе.
Буду вам благодарен, если объясните, расскажите.
Также если имеются какие либо статьи с описанием этого процесса или книги, буду вам благодарен за наводки.
Спасибо за внимание.
Не факт, что я прав, но возможно вам поможет информация из книг The Java language Specification и The Java Virtual Machine Specification. Они доступны на сайте оракла. Ссылка тыц
Кроме того рекомендую посмотреть доклады с JavaPoint и других русскоязычных конференций. К примеру интересный для вас доклады могут быть у Романа Елизарова, Алексея Шипилева.
Я не требую чего-то фундаментального(ваши ссылки на спецификацию), мне хватит и 10 предложений описывающих по шагам краткую суть внутренностей jvm. Пример: jvm получает байт код, первым делом с ним встречается верификатор, который делает, тото, после запускается второй поток сборщика, и т.д