OMR - 开源C和C++组件


Apache
跨平台
C/C++

软件简介

OMR项目由一个高度集成的开放源码C和c++组件,可用于构建大量的语言,运行时支持许多不同的硬件和操作系统平台。这些组件包括但不限于:内存管理,线程处理,平台端口(抽象)库,诊断支持,监控支持,垃圾收集和本地实时编译。

OMR项目的初始组件包括:

  • 端口:平台移植库

  • 线程:一个跨平台pthread-like线程库

  • 用途:通用工具用于构建跨平台的运行

  • OMR信号处理:信号处理兼容图书馆

  • OMR跟踪: 与IBM健康中心监控工具进行通信的跟踪库

  • 工具: 构建系统的代码生成工具

  • 垃圾收集: 垃圾回收堆管理框架

  • 虚拟机: api来管理每段口译和每段线程环境

  • 例子: 演示代码来展示语言运行时可能会消耗的一些OMR组件

  • fvtest:一种语言测试框架以便OMR组件以外的语言运行时也可以被测试

现有进行项目包括:

  • 文档: 代码注释是伟大的,但我们需要更多综述文档以便我们写作

  • 常见问题: 来自真实个人的常见问题(要求:问问题!)

  • OMR “滑块”: 相对简单但有用的工作项意味着人们新的项目

  • 诊断: 帮助开发人员和用户在语言运行时更多的诊断支持

  • 健康中心代理商: IBM健康中心代理商的核心代码连接到运行

  • 准时制:几个平台托管代码缓存的及时生成本机代码的编译器

  • gc: 加代和其他GC策略

构建独立OMR方法:

# Generate autotools makefiles with SPEC-specific presets
make -f run_configure.mk SPEC=linux_x86-64 OMRGLUE=./example/glue

# Build
make

# Run tests (note that no contribution should cause new test failures in "make test")
make test