IPC === 概述 ------ IPC 为核间通信模块,提供不同内核间消息收发功能。 功能特性 ------------------- **IPC 基础核间通信,提供以下功能:** - 基础核间消息,使用 soft irq + share memory。 - ipc mailbox 地址申请。 - share memory malloc。 - share memory free。 - 所有 ipc 均为单向发送,ipc 本身不支持同步方式。 资源依赖 --------------- - 总开启核数量(使用 ipc 的核)。 - share memory 的管理 core(Master core)。 用法流程 --------- - master core 初始化 ipc 及 in mailbox(根据开启的 core 数量)。 - 注册入 mailbox 地址区域, 将控制区域地址传参到其他 core。 - 其他 core 启动后,检查 master core 是否有 in box,如有,说明已开启 ipc 功能。 - 向 master core 发送 ipc,申请 mailbox。 - master 根据开启 core 数量申请 share memory 空间,并将其挂载至 ipc 控制区域中。 - 如有多个 core,则重复 3-5 流程。 参考示例 --------- :: /examples/ipc_demo API 介绍 ------------ .. doxygenfile:: ipc.h