. 1 3 4 5 6 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z А Б В Г Д Е З И К Л М Н О П Р С Т У Х Ц Ч

JVM

JVM (Java Virtual Machine) – это виртуальная машина, которая выполняет Java байт-код. Она позволяет запускать Java программы на любой платформе без необходимости перекомпиляции исходного кода.
Существует несколько различных реализаций JVM, некоторые из них включают:
1. Oracle HotSpot JVM – самая популярная реализация JVM, которая разрабатывается и поддерживается компанией Oracle.
2. OpenJ9 – реализация JVM, разработанная и поддерживаемая компанией IBM.
3. GraalVM – инновационная реализация JVM, предлагающая новые возможности для оптимизации и выполнения Java приложений.
4. Zing JVM – коммерческая реализация JVM, разработанная компанией Azul Systems с акцентом на высокую производительность и масштабируемость.

5. SUN JVM – исторически первая реализация виртуальной машины Java.
Каждая из этих реализаций имеет свои особенности и преимущества, и выбор конкретной зависит от конкретной ситуации и требований проекта.

В 1996 году компания Sun выпустила первую версию документа «Голубая книга JVM», в котором описана спецификация виртуальной машины Java, ставшего де-факто отраслевым стандартом платформы Java. Благодаря этому документу появились альтернативные реализации JVM, являющиеся «разработками с чистого листа».

Начиная с версии J2SE 5.0, изменения в спецификации JVM вырабатываются в соответствии с формализованными пожеланиями заинтересованных сторон. Процесс внесения изменений в спецификации JVM называется Java Community Process.

JVM, доступная в исходных текстах на Си от фирмы Sun, называется KVM (Kilo Virtual Machine) и доступна на их сайте.

Программы, предназначенные для запуска на JVM, должны быть скомпилированы в стандартизированном переносимом двоичном формате, который обычно представляется в виде файлов «.class». Программа может состоять из множества классов, размещённых в различных файлах. Для облегчения размещения больших программ часть файлов вида «.class» может быть упакована вместе в так называемом «.jar»-файле (сокращение от «Java Archive»).

Виртуальная машина JVM исполняет файлы «.class» и «.jar», эмулируя данные в них инструкции следующими путями:

  • Интерпретирование;
  • Использование JIT-компилятора (например, такого как «HotSpot» от Sun Microsystems).

В наши дни JIT-компиляция используется в большинстве JVM для достижения большей скорости. Существуют также ahead-of-time компиляторы, позволяющие разработчикам приложений перекомпилировать файлы классов в родной для конкретной платформы код.

Как и большинство виртуальных машин, Java Virtual Machine имеет stack-ориентированную архитектуру, свойственную микроконтроллерам и микропроцессорам.

JVM — экземпляр JRE (Java Runtime Environment), вступающий в действие при исполнении программ Java; по завершении исполнения этот экземпляр удаляется сборщиком мусора. JIT — та часть виртуальной машины Java, которая используется для ускорения выполнения приложений; JIT одновременно компилирует те части байт-кода, функциональность которых аналогична, — что сокращает время, необходимое для проведения компиляции.

Обсуждение закрыто.