开源虚拟机

时间:2010-08-20 13:41:57

标签: c++ garbage-collection jit vm-implementation

我正在寻找一个开源虚拟机:

  • 快速尽可能轻量级
  • 支持一组最小字节码(如LLVM IR)
  • 可以从C ++应用程序轻松嵌入
  • 跨平台(Linux,Windows和OS X)
  • x86支持

4 个答案:

答案 0 :(得分:6)

Lua以易于嵌入C / C ++而闻名。它的VM是开源和跨平台的,非常小(exe大小和字节码指令集)并且同时非常快。但它的字节码可能不适合您的语言。 The bytecode format is documented here.

答案 1 :(得分:5)

NekoVM是一种编程语言和轻量级虚拟机,设计为编译器编写者的通用目标。 The documentation使得在VM或C ++应用程序中嵌入VM似乎非常容易,但似乎VM API尚未记录。

答案 2 :(得分:4)

为什么过滤出LLVM?这是a set of C libraries

我想它并不像Lua那么容易嵌入,但LLVM非常强大,可能会克服集成它的麻烦。请参阅this SO question,它有帮助吗?

答案 3 :(得分:2)

其他可能的答案:为什么不输出汇编程序呢?它快速轻巧,您根本不需要VM。由于你只针对x86,它可能是有意义的,这取决于你想要做什么。