关于鸿蒙系统的方舟公共组件相关介绍

风在云颠
发布于 2021-9-16 17:57
浏览
0收藏

简介

Runtime组件是方舟运行时的公共组件,主要包括一些语言无关的基础运行库,包含承载字节码以及执行字节码所需要相关信息的ARK File、支持Debugger的Tooling、负责对应系统调用的ARK Base等。

目录

/ark/runtime_core
├── assembler             # 汇编器,将文本格式的方舟字节码文件(*.pa)转换为二进制格式的字节码文件(*.abc),具体格式见:docs/assembly_format.md和docs/file_format.md
├── cmake                 # cmake脚本,包含工具链文件和用于定义构建和测试目标的常用cmake函数
├── CMakeLists.txt        # cmake主入口文件
├── disassembler          # 反汇编器,将二进制格式的方舟字节码文件(*.abc)转换为文本格式的方舟字节码文件(*.pa)
├── docs                  # 包含语言前端、方舟文件格式和运行时的设计文档。
├── dprof                 # 用于ARK运行时搜集profile数据
├── gn                    # GN模板和配置文件
├── isa                   # 字节码ISA描述文件YAML,和ruby脚本和模板
├── ldscripts             # 包含链接器脚本,用于在非PIE可执行文件中放置4GB以上的ELF section。
├── libpandabase          # ARK运行时基本库,包含:日志、同步原语、公共数据结构等
├── libpandafile          # 二进制格式的方舟字节码文件(*.abc)源码仓
├── libziparchive         # 提供读取和使用miniz的ZIP压缩文件的API。
├── panda                 # CLI工具,用于执行方舟字节码文件(*.abc)文件
├── pandastdlib           # 通过方舟汇编编写的标准库
├── resources             # CI jobs描述文件
├── runtime               # ARK运行时公共组件
├── scripts               # CI脚本
├── templates             # ruby模板和脚本,处理包括:命令行选项、记录器组件、错误消息、事件等
├── tests                 # UT用例
└── verification          # 字节码验证器,具体可以参考 docs/bc_verification

使用说明

汇编器工具概述

工具名称为ark_asm,用于将文本格式的方舟字节码文件转换为二进制格式的方舟字节码文件。

命令行格式:

ark_asm [选项] 输入文件 输出文件
选项 描述
–dump-scopes 将结果保存到json文件中,以支持在VS Code中的debug模式
–help 帮助提示
–log-file 使能log打印后,指定log文件输出路径
–size-stat 统计并打印出转换后方舟字节码信息
–verbose 使能log打印

输入文件:文本格式的方舟字节码

输出文件:二进制格式的方舟字节码

反汇编器工具概述

工具名称为ark_dissam,用于将二进制格式的方舟字节码文件转换为可读的文本格式的方舟字节码文件。

命令行格式:

ark_dissam [选项] 输入文件 输出文件
选项 描述
–debug 使能调试信息
–debug-file 调试信息输出文件路径,默认为std::cout
–help 帮助提示
–verbose 增加输出汇编文件的注释信息

输入文件:二进制格式的方舟字节码

输出文件:文本格式的方舟字节码

相关仓

方舟运行时子系统

ark/runtime_core

ark/js_runtime
ark/ts2abc

ark_runtime_core-master.zip 2.86M 17次下载
已于2021-9-16 17:57:54修改
收藏
回复
举报
回复
    相关推荐