• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Programming Language Runtime<a name="EN-US_TOPIC_0000001124628397"></a>
2
3-   [Introduction](#section15963162310012)
4-   [Directory Structure](#section971210485617)
5-   [Constraints](#section119744591305)
6-   [Usage](#section1312121216216)
7-   [Repositories Involved](#section1371113476307)
8
9## Introduction<a name="section15963162310012"></a>
10
11This subsystem provides the compilation and execution environment for programs developed with JavaScript, and C/C++, basic libraries that support the runtime, and the runtime-associated APIs, compilers, and auxiliary tools. Modules in this subsystem are classified based on the currently supported programming languages: JavaScript, and C/C++. Each module can be compiled independently and can be combined and separated based on development scenarios.
12
13**Figure  1**  Subsystem architecture<a name="fig4166312527"></a>
14![](figures/subsystem-architecture-1.png "subsystem-architecture-1")
15
16This subsystem consists of the runtime, libraries, and compilers that support the running of  JavaScript, and C/C++ programs, and provides the basic libraries, API , JavaScript engine capability, and a toolchain that supports language compilation.
17
18## Directory Structure<a name="section971210485617"></a>
19
20```
21/prebuilts/mingw-w64/ohos/linux-x86_64     # cross-compilation toolchain for Linux platform
22    └── clang-mingw
23        ├── bin
24        ├── lib
25        ├── libexec
26        ├── NOTICE
27        ├── share
28        └── x86_64-w64-mingw32
29```
30
31## Constraints<a name="section119744591305"></a>
32
331.  You are not allowed to add or modify the APIs without permission.
342.  The implementation of the JavaScript engine is restricted by the subsystem. There is no configuration item for external systems.
35
36## Usage<a name="section1312121216216"></a>
37
38Basic language capabilities are supported through library files. Some capabilities are integrated into Native, and JavaScript SDKs and integrated into DevEco Studio releases. For details about the usage, see the readme file of each module.
39
40The following list shows the repositories of third-party software and precompilation toolchains that are referenced.
41
42/third\_party/boost
43
44/third\_party/quickjs
45
46/third\_party/jerryscript
47
48/third\_party/mingw-w64
49
50## Repositories Involved<a name="section1371113476307"></a>
51
52**Programming language runtime subsystem**
53