ax-api 技术文档
路径:
os/arceos/api/arceos_api类型:库 crate 分层:ArceOS 层 / ArceOS 公共 API/feature 聚合层 版本:0.5.0文档依据:当前仓库源码、Cargo.toml与 未检测到 crate 层 README
ax-api 的核心定位是:Public APIs and types for ArceOS modules
1. 架构设计分析
- 目录角色:ArceOS 公共 API/feature 聚合层
- crate 形态:库 crate
- 工作区位置:子工作区
os/arceos - feature 视角:主要通过
alloc、display、dma、dummy-if-not-enabled、fs、ipi、irq、multitask、net、paging控制编译期能力装配。 - 关键数据结构:可直接观察到的关键数据结构/对象包括
AxTimeValue、DMAInfo、AxTaskHandle、AxWaitQueueHandle。
1.1 内部模块划分
macros:内部子模块imp:内部实现细节与 trait/backend 绑定
1.2 核心算法/机制
- 该 crate 的实现主要围绕顶层模块分工展开,重点在子系统边界、trait/类型约束以及初始化流程。
2. 核心功能说明
- 功能定位:Public APIs and types for ArceOS modules
- 对外接口:从源码可见的主要公开入口包括
ax_get_cpu_num、ax_terminate、ax_monotonic_time、ax_wall_time、ax_alloc、ax_dealloc、ax_alloc_coherent、ax_dealloc_coherent。 - 典型使用场景:主要作为仓库中的专用支撑 crate 被上层组件调用。
- 关键调用链示例:按当前源码布局,常见入口/初始化链可概括为
ax_alloc()->ax_alloc_coherent()->ax_spawn()->ax_open_file()->ax_open_dir()-> ...。
3. 依 赖关系图谱
3.1 直接与间接依赖
ax-allocaxconfigax-displayax-dmaax-driverax-errnoax-featax-fsax-halaxioax-ipiax-log- 另外还有
5个同类项未在此展开
3.2 间接本地依赖
ax-arm-pl011ax-arm-pl031axaddrspaceax-allocatoraxbacktraceax-config-genax-config-macrosax-cpuax-driver-baseaxdriver_blockaxdriver_displayaxdriver_input- 另外还有
48个同类项未在此展开