В этой статье мы разберём что такое JVM, виртуальная машина (BM) java и байт-код этого языка, для тех кото интересуется этим языком программирования java, будет интересно.
Также если вы интересуетесь языком программирования Rust, то рекомендую прочитать статью: «Что нового в Rust 1.49».
Что такое виртуальная машина (BM) java:
Виртуальная машина (ВМ) Java — среда виртуальной машины и способная выполнять байт-код Java. По оценкам различных компаний и авторов публикаций, количество устройств, оснащенных JVM, составляет 10 миллиардов, в том числе 1 миллиард компьютеров , а количество программистов, создающих программное обеспечение для этой платформы, — от 6,5 до 9 миллионов
Виртуальная машина Java — это набор приложений, написанных для традиционных устройств и операционных систем . Он предоставляет среду, в которой он может выполнять программу, скомпилированную в байт-код Java, предоставляя такие услуги, как сборка мусора или обработка исключений и стандартная библиотека. В зависимости от потребностей и количества доступных инструментов различают два основных дистрибутива:
- JRE (Java Runtime Environment) — содержит только инструменты, необходимые для запуска приложения, так называемые среда выполнения;
- JDK (Java Development Kit) — также включает инструменты разработчика для создания приложений для платформы JVM;
ВМ Java — это не конкретное название продукта. Общедоступная спецификация позволяет различным поставщикам программного обеспечения создавать свои собственные виртуальные машины, работающие под управлением различных сред и устройств.
Компания Oracle Corporation, создатель и владелец торговой марки Java, предоставляет вашу виртуальную машину, но другие компании также могут использовать ее в своих продуктах при условии строгого соблюдения официальных спецификаций и дополнительных настроек. Начиная с Java 7, эталонной реализацией JVM является Free Software OpenJDK.
Составные части:
ВМ Java включает в себя следующие компоненты:
- Интерпретатор — пошагово выполняет инструкции программы, записанные в виде байтового кода;
- JIT-компилятор — необязательный компонент, включенный в часть реализации, который компилирует наиболее часто выполняемые фрагменты кода в машинный код , благодаря чему они могут выполняться непосредственно процессором компьютера. Позволяет повысить эффективность;
- Диспетчер памяти — управляет кучей, в которой хранятся все объекты запущенного приложения, и обеспечивает автоматическое освобождение неиспользуемой памяти;
- Верификатор байтового кода — ключевым аспектом безопасности является проверка байтового кода перед его запуском, цель которой — проверить правильность всех ссылок и убедиться, что выполнение данного фрагмента не нанесет вред стабильности или безопасности системы, в которой запущена виртуальная машина. Это делается верификатором байт-кода;
- Java API — набор программных библиотек, которые предоставляют такие услуги, как обработка файлов или графический интерфейс, используемые исполняемыми приложениями. Большая часть стандартной библиотеки написана на Java, поэтому виртуальным машинам не нужно предоставлять собственную реализацию;
Эталонной реализацией JVM, начиная с Java 7, является OpenJDK , реализация с открытым исходным кодом, возникшая в результате постепенного открытия исходного кода исходной машины HotSpot, разработанной Sun Microsystems, и замены ее проприетарных компонентов. Закрытая версия HotSpot все еще разрабатывается Oracle. Независимые реализации включают Kaffe и IBM J9.
Вывод:
Теперь вы знаете что такое JVM, виртуальная машина (BM) java и байт-код этого языка, думаю всем было интересно.