Что такое HotSpot и как он связан с JVM и OpenJDK? Это библиотека? Что именно он делает?
Кроме того, в чем разница между OpenJDK и HotSpot?
Что такое HotSpot и как он связан с JVM и OpenJDK? Это библиотека? Что именно он делает?
Кроме того, в чем разница между OpenJDK и HotSpot?
Определение виртуальной машины Java находится в так называемой Спецификации виртуальной машины Java
JVM по определению представляет собой виртуальную машину которая является программным аппаратом, который имитирует то, что делает настоящая машина. Как и в реальных машинах, он имеет набор инструкций , архитектуру виртуального компьютера и модель исполнения. Он способен запускать код, написанный с помощью этого набора виртуальных команд, в значительной степени похожий на реальный компьютер, который может запускать машинный код.
HotSpot - это реализация концепции JVM, первоначально разработанной Sun и теперь принадлежащей Oracle. Существуют и другие реализации спецификации JVM, такие как JRockit, IBM J9, среди многих других.
См. Список реализации виртуальной машины Java
OpenJDK - это проект, в рамках которого реализация HotSpot с открытым исходным кодом (и многое другое, например, компилятор, API JDK и т.д.),.
OpenJDK (Open Java Development Kit) - это бесплатная и открытая реализация Java Platform, Standard Edition (Java SE). Openjdk - это проект, запущенный Sun Microsystems, в настоящее время ухаживающий за многими компаний и сообщества для создания Java Development Kit абсолютно в open source. Согласно официальной документации .
OpenJDK - это версия с открытым исходным кодом спецификаций Java Platform, Standard Edition (Java SE). В мае 2007 года Sun выпустила полностью готовый вариант Java Development Kit (JDK) для Java SE для сообщества OpenJDK как бесплатное программное обеспечение в соответствии с GNU General Public License, версия 2 (GPLv2). Sun объявила Временный совет по управлению сообществом OpenJDK. Sun также объявила, что реализация на основе OpenJDK может использовать набор технической совместимости Java SE 6 (JCK) для обеспечения совместимости с спецификацией Java SE 6.
Проект OpenJDK состоит из нескольких компонентов - HotSpot (виртуальная машина), библиотеки классов Java и java-компилятора Java. Для получения дополнительной информации посетите его сайт.
Текущая JVM, предоставляемая Sun/Oracle, называется HotSpot, поскольку она ищет горячие точки использования кода (места, где код более интенсивно используется) для оптимизации "точно в момент времени". Из wikipedia HotSpot, выпущенный как "Java HotSpot Performance Engine", является виртуальной машиной Java для настольных компьютеров и серверов, поддерживаемой и распространяемой корпорацией Oracle.
HotSpot, как уже упоминалось выше, представляет собой кросс-платформенную реализацию концепции виртуальной машины Java (JVM) и распространяется вместе с OpenJDK (Java Developer Kit) под лицензией GNU General Public License. HotSpot написан в основном на С++ и был первоначально разработан под Sun Microsystems. В настоящее время он разрабатывается в рамках проекта OpenJDK на сайте www.java.net. HotSpot JVM был доступен как дополнение для Java 1.2, а позже использовался как Sun JVM по умолчанию в Java 1.3. JVM в настоящее время находится в версии 7, Build b147 и имеет за собой активное сообщество разработчиков.
Для получения дополнительной информации перейдите к: https://www.java.net/
Счастливое кодирование!
JVM - абстрактная машина (спецификации). HotSpot, OpenJDK и JRockit, а также реализации JVM.
Свободные и с открытым исходным кодом
HotSpot, основная реализация Java VM
OpenJDK. Открытый Java Development Kit - это бесплатная версия с открытым исходным кодом, лицензированная в соответствии с GNU General Public License (GNU General Public License) GPL) с исключением ссылки.
Собственные реализации
для более реализаций
объясняет различия между HotSpot и JRocket
HotSpot - это расширенная форма взлома С++, чтобы использовать его, вы должны строить против него, чтобы скомпилировать даже самые простые вещи. Если вы не настраиваете компиляторы и не записываете их с нуля. HotSpot - это в основном способ преобразования исходного кода в код на С++, а затем компиляция его в собственный код, поэтому скомпилированный термин jit.