为了在Android、iOS的夹缝中求生存,华为HarmonyOS鸿蒙系统走了一条开放之路,以吸引开发者。
早在整整两年前,华为的方舟编译器(Open Ark Compiler)就正式开源,之后不断深入,编译器、引擎、调试器等均陆续开源,还加入了对C语言的支持。
现在,“方舟JS运行时”(Ark JS Runtime)也开源了。
方舟JS运行时,是在OpenHarmony上JavaScript应用使用的运行时,包含JS对象的分配器以及垃圾回收器(GC)、符合ECMAScript规范的标准库、用于运行Ark前端组件生成的方舟字节码(Aark Bytecode)的解释器、用于存储隐藏类的内联缓存、对外的函数接口(AFFI)等模块。
Runtime运行时组件是方舟运行时的公共组件,主要包括一些语言无关的基础运行库,包含承载字节码以及执行字节码所需要相关信息的Ark File、支持Debugger的Tooling、负责对应系统调用的Ark Base等。