• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Overview of ArkTS Runtime
2
3ArkTS Runtime is the default language runtime for applications on OpenHarmony. It executes bytecode and standard libraries for ArkTS, TS, and JS languages, and supports the interpreter, Ahead-of-Time (AOT), and Just-In-Time (JIT) for efficient execution. It also provides [Node-API](../napi/napi-introduction.md) to enable multi-language hybrid development.
4
5ArkTS Runtime is primarily composed of four subsystems:
6
7- **Core subsystem**: consists of the foundational runtime libraries that are language-agnostic, including the File component that carries bytecode, the Tooling component that supports Debugger functionality, and the Base library component responsible for adapting system calls.
8
9- **Execution subsystem**: includes the interpreter for executing Ark bytecode, fast-path inline caches, and [file-based modular management for runtime execution](module-principle.md).
10
11- **Compiler subsystem**: includes the stub compiler, an IR-based compilation optimization framework, an AOT static compiler, and an experimental JIT dynamic compiler.
12
13- **Runtime subsystem**: includes the following modules related to the execution of ArkTS/TS/JS:
14
15  - Memory management: object allocator and [garbage collector](gc-introduction.md) (CMS-GC and Partial-Compressing-GC for concurrent marking and partial memory compression)
16
17  - Analysis tools: DFX, and profiling tools for CPU and heap analysis
18
19  - Concurrency management: Ark bytecode file manager in the actor model
20
21  - Standard libraries: standard libraries defined by ECMAScript, efficient container libraries, and object models
22
23  - Other: asynchronous work queues, and Node-API that interact with C++
24