Fabrice Bellard 发布最新开源项目 MicroQuickJS,面向嵌入式系统的 JavaScript 引擎
著名开源开发者 Fabrice Bellard(因 QEMU、TinyCC、FFmpeg 和 QuickJS 等项目而知名)开源了一个全新 JavaScript 引擎:MicroQuickJS,特点是极低的资源占用,专为嵌入式系统和受限内存环境设计。
开源地址:https://github.com/bellard/mquickjs
根据介绍,MicroQuickJS(又名 MQuickJS)是一款面向嵌入式系统的 JavaScript 引擎。它仅需 10kB 的 RAM 即可编译和运行 JavaScript 程序。整个引擎(包括 C 库)大约需要 100kB 的 ROM(ARM Thumb-2 代码),其运行速度与 QuickJS 相当。
MQuickJS 支持简化版 JavaScript 语言子集,类似 ES5 范围,但比标准 ES5 更严格,也不包括 JavaScript 中所有现代大型特性,目的是减少运行时内存压力和复杂性。
尽管 MQuickJS 与 QuickJS 共享许多代码,但为了减少内存消耗,其内部机制有所不同。具体而言,它依赖于追踪式垃圾回收器,虚拟机不使用 CPU 堆栈,并且字符串以 UTF-8 编码存储。
