Files
yh 703135e9f2 initmd
Co-Authored-By: Agent
Reviewed-by: yh
Signed-off-by: yh <yanghao236@huawei.com>

AI[0%] Human Fixed[0%] Human[100%] AI Adopted[0%]
2026-07-24 17:18:39 +08:00

2.3 KiB
Raw Permalink Blame History

Module: ace_adapter

返回: 索引

Overview

ace_adapter 模块负责 ACEArkUI Cross-platform Engine)的适配工作,包括 ArkUI 应用的 checkpoint/镜像进程管理、命令解析和 DFX 预加载。该模块通过 Hook 机制集成到 appspawn 的孵化流程中。

Source Location

  • Directory: modules/ace_adapter/
  • Files: 4 C/C++ 源文件, 1 头文件
  • Estimated LOC: ~1,313

Dependencies

  • Depends on: modulemgr_engine
  • Used by: 通过 Hook 被 standard 模块调用

KP-1: ACE 适配主流程

Priority: P1

Summary

ace_adapter.cpp (~524行) 是 ACE 适配的主文件,负责模块注册和 Hook 挂载。它在 MODULE_CONSTRUCTOR 中注册各孵化阶段的处理函数。


KP-2: Checkpoint/镜像进程管理

Priority: P1

Summary

appspawn_checkpoint.c (~573行) 实现镜像进程(image process)的创建和管理。镜像进程是预先 fork 的进程快照,通过 checkpoint 机制加速后续应用启动。

Key Data Structures

// modules/module_engine/include/appspawn_msg.h:128
#define APP_CHECKPOINT_NAME_LEN 256
typedef struct {
    pid_t imgPid;                           // 镜像进程 PID
    uint64_t checkPointId;                  // checkpoint ID
    char imgName[APP_CHECKPOINT_NAME_LEN];  // 镜像进程名
} AppSpawnCheckpointInfo;

AppSpawnMgr 中维护了 checkPointIdQueue 链表来跟踪所有镜像进程。


KP-3: 命令解析器与 DFX 预加载

Priority: P2

Summary

  • command_lexer.cpp (~103行): 解析命令行参数
  • dfx_preload.cpp (~68行): DFX 预加载功能

Cross-Module Interactions

Interaction With Module Mechanism Direction
Hook 注册 modulemgr_engine MODULE_CONSTRUCTOR Outgoing
checkpoint 队列 standard checkPointIdQueue Shared

Module Relationship Link
modulemgr_engine depends_on module_modulemgr_engine.md
standard used_by module_standard.md

另见: 本模块与上述模块存在依赖关系。具体交互细节请参考 系统架构 中的跨模块关系章节。