跳到主要内容

ArkTS运行时概述

ArkTS运行时是HarmonyOS上应用的默认语言运行时,支持ArkTS、TS和JS语言的字节码及相关标准库。它提供解释器、AOT和JIT高效执行方式,并通过Node-API实现完善的跨语言调用接口,支持多语言混合开发。

ArkTS Runtime主要由四个子系统组成:

  • Core Subsystem:主要由与语言无关的基础运行库组成,其中包括承载字节码的File组件、支持Debugger的Tooling组件以及负责适配系统调用的Base库组件等。

  • Execution Subsystem:包含执行方舟字节码的解释器、快速路径内联缓存以及文件模块化管理运行

  • Compiler Subsystem:包含Stub编译器、基于IR的编译优化框架、AOT静态编译器以及JIT动态编译器(实验中)。

  • Runtime Subsystem:包含以下ArkTS/TS/JS运行相关的模块。

    • 内存管理:对象分配器与垃圾回收器(并发标记和部分内存压缩的CMS-GC和Partial-Compressing-GC)。
    • 分析工具:DFX工具、CPU和heap的profiling工具。
    • 并发管理:Actor并发模型中的方舟字节码文件管理器。
    • 标准库:ECMAScript规范定义的标准库、高效的container容器库与对象模型。
    • 其他:包括异步工作队列和C++交互的Node-API接口等功能。