1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/mirrors-omr

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 13 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 29.11.2024 01:31 668fed1

Eclipse OMR

Проект Eclipse OMR представляет собой набор компонентов с открытым исходным кодом на языках C и C++, которые можно использовать для создания надёжных сред выполнения языков, поддерживающих множество различных платформ оборудования и операционных систем.

Наши текущие компоненты:

  • gc: Фреймворк сборки мусора для управляемых куч;
  • compiler: Компоненты для создания технологий компиляторов, таких как JIT-компиляторы;
  • jitbuilder: Простая в использовании высокоуровневая абстракция поверх технологии компилятора;
  • port: Библиотека портирования платформы;
  • thread: Кроссплатформенная библиотека, подобная pthread, для работы с потоками;
  • util: Универсальные утилиты, полезные для создания кроссплатформенных сред выполнения;
  • omrsigcompat: Библиотека совместимости обработки сигналов;
  • omrtrace: Библиотека трассировки для взаимодействия с инструментами мониторинга IBM Health Center;
  • tool: Инструменты генерации кода для системы сборки;
  • vm: API для управления контекстами интерпретатора и потока;
  • example: Демонстрационный код, показывающий, как среда выполнения языка может использовать некоторые компоненты Eclipse OMR;
  • fvtest: Независимая от языка тестовая среда, позволяющая тестировать компоненты Eclipse OMR вне среды выполнения языка.

Статус сборки

Сборка Статус
Windows x86-64 Windows x86-64 Status
Linux x86 Build Status
Linux x86-64 Linux x86-64 Status
Linux AArch64 (ARM 64-bit) Build-linux_aarch64 Status
Linux ARM 32-bit Build-linux_arm Status
OSX x86-64 Build Status
Linux Power 64-bit Build-linux_ppc-64_le_gcc Status
AIX Power 64-bit Build-aix_ppc-64 Status
Linux Z (s390x) 64-bit Build-linux_390-64 Status
z/OS (s390x) 64-bit Build-zOS_390-64 Статус

Какова цель?

Долгосрочная цель проекта Eclipse OMR — создать открытую экосистему разработчиков языковых сред выполнения, чтобы они могли сотрудничать и совместно работать над инновациями с разработчиками аппаратных платформ, операционными системами, а также разработчиками инструментов и фреймворков. Также целью является создание надёжной технологической платформы для сред выполнения языков, чтобы разработчики языков могли быстрее и легче создавать более полнофункциональные языки и обогащать возможности, доступные программистам.

Наше сообщество стремится активно вносить свой вклад, улучшать и постоянно использовать результаты своей работы.

Кто использует Eclipse OMR?

  • Наиболее полный потребитель технологии Eclipse OMR – это виртуальная машина Eclipse OpenJ9 Virtual Machine: высокопроизводительная, масштабируемая реализация виртуальной машины Java корпоративного класса, представляющая собой сотни человеко-лет усилий, построенная на основе основных технологий, предоставляемых Eclipse OMR.
  • В предварительном просмотре технологии Ruby+OMR использовались компоненты Eclipse OMR для добавления JIT-компилятора в реализацию CRuby и для экспериментов по замене сборщика мусора в CRuby.
  • Среду выполнения SOM++ Smalltalk также модифицировали для использования компонентов Eclipse OMR.
  • Экспериментальная версия CPython с использованием компонентов Eclipse OMR также была создана, но пока не доступна для открытого использования. (Наше внимание было сосредоточено на том, чтобы этот код стал открытым!)

Какая лицензия?

Все материалы проекта Eclipse OMR доступны под лицензией Eclipse Public License 2.0 и лицензией Apache 2.0. Вы можете выбрать, какой лицензией вы хотите следовать. Подробнее см. в нашем файле LICENSE.

Как взаимодействовать с сообществом?

Мы работаем в соответствии с Кодексом поведения Eclipse, чтобы способствовать справедливости, открытости и инклюзивности.

  • Присоединяйтесь к сообществу Eclipse OMR в Slack workspace. Вы можете присоединиться к интересующим вас каналам, задавать вопросы и получать ответы от экспертов.
  • Присоединитесь к списку рассылки сообщества разработчиков Eclipse OMR. Сообщество в основном использует этот список для объявлений о проектах и административных обсуждений между коммиттерами. Здесь также приветствуются вопросы.
  • Задайте вопрос или начните обсуждение через GitHub issue.

Внесение вклада

Если вы хотите внести свой вклад в OMR, ознакомьтесь с руководством по внесению вклада для получения дополнительной информации. Мы также подготовили набор хороших первых задач для новичков.

Как использовать?

Как собрать автономный Eclipse OMR

Лучший способ получить первоначальное представление о технологии Eclipse OMR — это посмотреть на «автономную» сборку, которая связывает Eclipse OMR только с его системой тестирования.

Базовая конфигурация и компиляция

Чтобы собрать автономный Eclipse OMR, выполните следующие команды из корня исходного дерева. Более подробные инструкции см. в BuildingWithCMake.md.

# Создайте каталог сборки и перейдите в него
mkdir build
cd build

# Сгенерируйте систему сборки с помощью cmake
cmake -Wdev -C ../cmake/caches/Travis.cmake ..

# Соберите (вы можете дополнительно скомпилировать параллельно, добавив -j<N> к команде make) ### Запуск тестов (обратите внимание, что никакие изменения не должны приводить к новым сбоям в тестах).

Используйте опцию -V для подробного вывода результатов тестов.

ctest [-V]

Сборка Eclipse OMR на Windows с использованием Visual Studio

Следующие инструкции демонстрируют шаги по сборке Eclipse OMR на Windows с использованием Visual Studios. В примере используется Visual Studio 11 2012 Win64. Вы можете легко заменить эту версию на ту, которую вы хотели бы использовать.

# Создайте каталог сборки и перейдите в него
mkdir build
cd build

# Сгенерируйте систему сборки с помощью cmake
cmake -G "Visual Studio 11 2012 Win64" ..

# Соберите проект
cmake --build .

# Запустите тесты (обратите внимание, что никакие изменения не должны вызывать новые сбои в «make test»)
ctest

Где я могу узнать больше?

Презентации о Eclipse OMR

  • Выступление Марка Стодли на JVM Languages Summit в августе 2015 года: «A VM is a VM is a VM: The Secret Path to High Performance Multi-Language Runtimes»
  • Слайд-шоу Дэрила Майера с Java One в октябре 2015 года: «Beyond the Coffee Cup: Leveraging Java Runtime Technologies for the Polyglot»
  • Слайд-шоу Чарли Грейси с Java One в октябре 2015 года: «What's in an Object? Java Garbage Collection for the Polyglot»
  • Презентация Анджелы Лин, Роберта Янга, Крейга Леманна и Сяоли Ляна на CASCON Workshop в ноябре 2015 года «Building Your Own Runtime»
  • Выступление Чарли Грейси на FOSDEM в феврале 2016 года: «Ruby and OMR: Experiments in utilizing OMR technologies in MRI»
  • Слайд-шоу Чарли Грейси из jFokus в феврале 2016 года «A JVMs Journey into Polyglot Runtimes»
  • Слайд-шоу Марка Стодли из EclipseCON в марте 2016 года «Eclipse OMR: a modern toolkit for building language runtimes»

Блог-посты об OMR технологиях

Copyright IBM Corp. 2016

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/mirrors-omr.git
git@api.gitlife.ru:oschina-mirror/mirrors-omr.git
oschina-mirror
mirrors-omr
mirrors-omr
master