stringtranslate.com

Максин Виртуальная Машина

Виртуальная машина Maxine — это виртуальная машина с открытым исходным кодом , разработанная в Манчестерском университете. [2] Ранее она была разработана Sun Microsystems Laboratories , [3] с тех пор переименована в Oracle Labs. Основное внимание в архитектуре программного обеспечения Maxine уделяется модульной конструкции и повторному использованию кода для гибкости, настраиваемости и производительности для промышленных и академических исследователей виртуальных машин. Это одна из растущего числа виртуальных машин Java, написанных полностью на Java в метациклическом стиле. Примерами служат Squawk и Jikes RVM .

Архитектура

Внутри виртуальной машины Maxine характеризуются агрессивным использованием расширенных языковых возможностей Java 1.5 и 1.6, модульными подсистемами, координируемыми через интерфейсы Java, отсутствием интерпретатора и тесно связанными отладчиком и инструментом визуализации для разработки виртуальной машины.

Совместимость

Maxine совместим с немодифицированным Java Development Kit (JDK). Maxine можно разрабатывать, собирать и запускать в стандартных интегрированных средах разработки Java (IDE), включая NetBeans , Eclipse и IntelliJ IDEA .

Системное программирование на Java

Второстепенной целью проекта является разработка методов и инструментов для «системного программирования на Java». Расширения компилятора , настроенные в исходном коде виртуальной машины с использованием аннотаций Java , позволяют использовать без потери производительности низкоуровневые операции, которые в противном случае были бы запрещены в Java. Эти расширения легли в основу компилятора Graal .

Максин Инспектор

Специализированная поддержка отладки для Maxine VM предоставляется Maxine Inspector: сопутствующим инструментом, который действует как объединенный браузер объектов, классов и методов, а также как отладчик на уровне машины и байт-кода. [4] Inspector работает вне процесса, не нуждается в активной поддержке VM и использует код, общий с VM, для специализированных служб разработчиков, которые используют подробные знания о структуре памяти и дизайне VM. [5] Известные службы включают в себя:

История

Maxine был создан Берндом Матиске в Sun Labs в начале 2005 года. Он руководил его разработкой среди растущей команды до конца 2008 года, когда он покинул Sun Microsystems и передал проект Дугу Саймону, который был первым инженером, присоединившимся к нему. Дуг Саймон продолжал выполнять эту роль на протяжении всего периода приобретения Sun корпорацией Oracle .

Статическая (инспектирование кучи) версия Maxine Inspector была создана Берндом Матиске в 2006 году. Майкл Ван де Вантер взял на себя разработку Inspector в 2007 году, добавив динамическую поддержку, когда виртуальная машина стала исполняемой и продолжала развиваться на протяжении всего периода приобретения Sun корпорацией Oracle .

Oracle продолжила разработку Maxine до выпуска Maxine 2.0. [16] Университет Манчестера разрабатывает Maxine с версии 2.1. [17]

Смотрите также

Ссылки

Примечания

  1. ^ «Maxine VM: метациркулярная виртуальная машина для Java на Java» . Гитхаб . 18 ноября 2021 г.
  2. ^ Виммер и др. 2013, стр. 1.
  3. ^ "Oracle Labs – О нас". Labs.oracle.com . Получено 2017-06-25 .
  4. ^ "Проект Максин: инспектор Максин". community.oracle.com . Получено 2019-04-08 .
  5. ^ "Введение в инспектора Максин (Демо)". youtube.com . 5 апреля 2010 г. Получено 08.04.2019 .
  6. ^ "Мини-демонстрация Maxine Inspector 6 из 10 (2008): Просмотры методов с несколькими кодами". youtube.com . 28 августа 2010 . Получено 08.04.2019 .
  7. ^ "Мини-демо Maxine Inspector 5 из 10 (2008): Дизассемблированный байт-код". youtube.com . 28 августа 2010 . Получено 2019-04-08 .
  8. ^ "Мини-демонстрация Maxine Inspector 4 из 10 (2008): Разобранный машинный код". youtube.com . 28 августа 2010 . Получено 08.04.2019 .
  9. ^ "Мини-демо Maxine Inspector 10 из 10 (2008): Точки останова". youtube.com . 28 августа 2010 . Получено 08.04.2019 .
  10. ^ "Мини-демо Maxine Inspector 7 из 10 (2008): Threads". youtube.com . 28 августа 2010 . Получено 2019-04-08 .
  11. ^ "Мини-демо Maxine Inspector 9 из 10 (2008): Stacks". youtube.com . 28 августа 2010 . Получено 2019-04-08 .
  12. ^ "Мини-демо Maxine Inspector 8 из 10 (2008): Регистры". youtube.com . 28 августа 2010 . Получено 2019-04-08 .
  13. ^ "Мини-демо Maxine Inspector 2 из 10 (2008): Память". youtube.com . 28 августа 2010 . Получено 2019-04-08 .
  14. ^ "Мини-демо Maxine Inspector 3 из 10 (2008): Heap Objects". youtube.com . 28 августа 2010 . Получено 2019-04-08 .
  15. ^ "Maxine Inspector Mini-Demo 1 of 10 (2008): Boot Image Configuration". youtube.com . 28 августа 2010 . Получено 2019-04-08 .
  16. ^ "Архивная копия". Архивировано из оригинала 2016-03-04 . Получено 2013-09-18 .{{cite web}}: CS1 maint: архивная копия как заголовок ( ссылка )
  17. ^ "Maxine-VM: Maxine VM: метациклическая исследовательская VM". GitHub. 21 июня 2017 г. Получено 25 июня 2017 г.

Библиография

Внешние ссылки