InfoQ

The Async Multiprocessing Has Sound Foundations in Linux, But Further Testing Is Needed

8.5内容质量
The Async Multiprocessing Has Sound Foundations in Linux, But Further Testing Is Needed

TL;DR · AI 摘要

Linux异步多处理(AMP)基础稳固但需更多测试,现有模块如SCMI和remoteproc存在贡献者覆盖不足问题。

核心要点

  • SCMI通信需双向确认路径,当前实现可能缺失该机制
  • remoteproc核心提交从Linux 5.0的175次增至1550次,但仅4位开发者贡献超5个补丁
  • 硬件自旋锁(hardware spinlocks)在AMP中表现突出,但测试覆盖不足

结构提纲

按章节快速跳转。

  1. Linux AMP堆栈基础稳固但存在测试碎片化问题

  2. SCMI双向通信需四通道实现,现有固件可能缺失确认路径

  3. remoteproc提交量5年增长8倍,但开发者集中度高

  4. 硬件自旋锁等关键模块需要更全面的测试覆盖

思维导图

用一张图看清主题之间的关系。

查看大纲文本(无障碍 / 无 JS 友好)
  • Linux AMP架构
    • 通信机制
      • SCMI双向通道需求
      • 单向邮箱限制
    • 关键模块
      • remoteproc发展数据
      • 硬件自旋锁测试
    • 挑战
      • 贡献者覆盖不足
      • 测试碎片化

金句 / Highlights

值得收藏与分享的关键句。

#Linux内核#异步多处理#SCMI#remoteproc
打开原文

异步多处理在 Linux 中具有坚实基础,但需要进一步测试 - InfoQ

InfoQ 首页 News 异步多处理在 Linux 中具有坚实基础,但需要进一步测试

开发

在线 InfoQ AI 安全与隐私工程认证(10 月 26 日):在受监管环境中部署 AI?

异步多处理在 Linux 中具有坚实基础,但需要进一步测试

2026 年 10 月 7 日 2 分钟阅读

作者

  • Olimpiu Pop

#### 关注我们

YouTube

232K 粉丝

LinkedIn

26K 粉丝

Instagram

新

RSS

19K 读者

X

57.1k 粉丝

Facebook

21K 喜欢

Bluesky

收听本文 -

0:00

音频准备播放

您的浏览器不支持音频元素。

正常

1.25x

1.5x

喜欢

新下拉阅读列表

  • 阅读列表

在 2026 年欧洲嵌入式 Linux 会议(Embedded Linux Conference Europe 2026)上,Linux 内核开发者兼 Linux I2C 子系统维护者 Wolfram Sang 分析了 Linux 异步多处理(AMP)的构建模块。他的评估认为,这些基础足够稳固可以继续构建,但薄弱的贡献者覆盖范围和碎片化的测试需要关注。

他的演讲基于尝试将硬件自旋锁驱动程序上游化的工作,这项工作促使他审视更广泛的 AMP 堆栈的健康状况。他专注于 Linux 方面,并引导与会者关注其他会议演讲,涉及 Zephyr、可信固件和设备树细节。

在基本的 AMP 系统中,Linux 应用 CPU 和较小的实时核心在同一片系统级芯片(SoC)中运行。邮箱用于通知信息可用;共享 SRAM 或 DDR 存储数据。更复杂的系统还必须协调共享资源的所有权。Sang 将 SCMI 描述为 Linux 与专用系统控制处理器通信的一种方式,用于管理时钟等资源,而不是单独管理每个资源。

这种通信比邮箱图示所暗示的要复杂得多。门铃通常单向发送信号。Sang 展示了如何通过两个单向邮箱形成一个请求-响应通道,而完全双向的 SCMI 安排可能需要四个。固件可能采用不同的配置:在他的 Keystone 示例中,现有固件使用两个单向邮箱实现双向 SCMI 通信,导致通知没有对应的确认路径。

其他层级具有不同功能。remoteproc 负责加载固件并启动或停止远程核心;其固件二进制文件可以描述所需资源。给定共享内存和一个驱动回调,该回调可以“触发”另一侧,从而启用 RPMsg 消息传递。Virtio 定义了使用共享内存 virtqueues 的开放通信标准,并在有工作时发出通知。Sang 区分了 RPMsg(处理器间通信)和提议的 virtio-over-message 传输(通过消息通道承载 virtio 通信,但尚未上游化)。

Sang 的子系统调查发现,remoteproc 核心提交量从 Linux 5.0 的 175 次增长到约 1,550 次,尽管在早期激增后增长放缓。邮箱提交和驱动程序的增长更为近期,但只有约四名作者贡献了超过五次补丁。硬件自旋锁表现突出:核心提交量在约七年时间里从 19 次增加到 30 次,而驱动程序数量基本保持稳定。Sang 并未得出这些组件存在缺陷的结论,他呼吁更多审阅者和测试者参与。

他的自旋锁驱动程序工作展示了维护负担:看似微小的更改扩展到了头文件和生命周期问题,而一个提出的调试改进却遇到了已弃用的API。测试可能还需要修改固件和U-Boot,仅仅为了测试驱动程序。OpenAMP提供了构建说明和测试用例,但其示例在支持的开发板上尚未能统一运行。对于Sang来说,减少这种摩擦是维持现在正在构建的更复杂AMP系统的关键。

作者部分的主要容器

关于作者

部分标题

每个作者的主要容器

#### Olimpiu Pop

显示更多

显示更少

#### 此内容属于AMP主题

##### 相关主题:

  • 开发
  • 开源峰会欧洲
  • Linux
  • AMP
  • 异步架构
  • 相关编辑
  • 相关赞助商 工程领域人工智能采用规模扩展(由O'Reilly提供)- 立即下载
  • 相关赞助商 找出测试遗漏的缺陷。Antithesis通过确定性模拟探索数千种故障场景,在缺陷进入生产环境前发现难以复现的缺陷。了解其工作原理。

InfoQ新闻通讯

每周五内容精选,每周二发送。加入超过25万名高级开发者的社区。查看示例

我们保护您的隐私。