跳到主要内容

10 OS / BSP / RTOS 与实时方案洞察

  • 章节编号:10
  • 所属层:S 系统软件层(与 13 章实时分域、04 安全岛、09 Driver 强耦合)
  • 关联 ADR:ADR-058(端侧 OS 架构:Linux+PREEMPT_RT + 安全岛)、ADR-059(BSP/设备树与 hw-spec SSOT)、ADR-060(安全启动与镜像形态)、ADR-061(生产 BSP:Yocto vs 参考 rootfs)
  • 上游依赖:04(安全岛 ASIL-D)、08(固件 ABI)、09(Driver/KMD)、13(实时 SLA/分域)、01(1kHz 控制)

学习目标

  • 前置知识:读过 13 章(实时调度语义:SCHED_FIFO/DEADLINE、p99/p999 延迟 SLA)与 04 章(功能安全岛、ASIL-D)。理解「操作系统内核」与「实时性」两个概念的基本关系——知道普通 Linux 为什么「平均快、最坏慢」;写过或读过一次设备树(Device Tree)片段即可。无需 Yocto 构建经验。
  • 学完产出:① 能画出端侧机器人本体的双域分层图(Linux+PREEMPT_RT 认知域 ‖ Zephyr/QNX 安全岛 1kHz 控制域),说清哪些负载放哪一域、为什么 1kHz 硬控制不得经 Linux DDS;② 能用「中断线程化 + 优先级继承 + 抢占点密化」三招讲清 PREEMPT_RT 把最大调度延迟从毫秒级压到百微秒级的内核根因,并知道它为何仍达不到安全岛的 10μs 级;③ 能对比 Zephyr(开源、可裁剪)与 QNX(微内核、车规认证齐全)的选型取舍,理解「认证证据包」这一隐性成本;④ 能说清 BSP 里设备树(DTS)为何必须与 00-hw-spec 做 SSOT(单一可信源)一致性校验,漂移会引发什么;⑤ 能读懂并解释 ADR-061 的 PREEMPT_RT defconfig 最小清单里每一项在干什么。
  • 阅读姿势:盯住一条主线——「实时不是『快』,而是『最坏情况可预测』」。整章所有的 OS 分域、内核裁剪、总线进岛,本质都在解决同一个问题:VLA 推理要的是吞吐(平均快就好),1kHz 伺服要的是确定性(最坏也不能超时)。这两种需求物理上无法用同一个调度器同时满足,于是才有了「分域」。

1. 范围与目标

本章定义端侧机器人本体的 操作系统选型、BSP 结构、与安全岛/RTOS 的分域方案,以及设备树与 00-hw-spec 的一致性约束。实时调度语义见 13 章;本章聚焦 OS/BSP 平台层

核心问题

  1. 端侧采用 Linux+PREEMPT_RT、纯 RTOS,还是 混合分域?
  2. BSP/设备树 如何与芯片 spec、Driver、ISS 仿真对齐?
  3. TOP 机器人芯片平台(Jetson Thor、Dragonwing IQ10)的 OS 方案?
  4. 量产镜像:参考 rootfs vs Yocto 定制?
  5. 与 Demo 08-os-bsp 的贯通路径?

2. 需求洞察(具身驱动)

2.1 具体场景

场景OS 诉求来源
1kHz 伺服/MPC硬实时 p999;不宜仅靠 Linux01/13 章
VLA/GR00T 推理Linux + 大内存 + PREEMPT_RT 软/准实时21 章
功能安全/车规ASIL-D 安全岛;认证 RTOS 可选04 ADR-015
OTA/ROS2/DevRel完整 Linux 生态25/26 章
现场总线控制ros2_control + EtherCAT/CAN 双总线;与 VLA 分域01/13 章
Fleet/5G 边界端侧自治;5G 仅 telemetry/OTA,非 1kHz 闭环25 章
定制载板可裁剪 BSP;设备树 per-board客户 POC

2.2 硬性指标

指标目标依据
硬实时 WCET安全岛 <10–20μs 中断延迟QNX/Zephyr 行业文档
Linux 软实时PREEMPT_RT 30–150μs p99(调优后)Jetson Orin 案例
启动端侧 <5–15s 可接受(非 MCU)具身人形
BSP SSOTDTS 节点与 dsa_v0.yaml 字段一致Demo Gate
镜像端侧 ≥8GB rootfs+AI 栈19 章 INT4 VLA

2.3 端 / 边 / 中心

形态OS
端侧Linux(PREEMPT_RT)+ 安全岛(Zephyr/QNX)
边缘网关标准 Linux;可选 QNX Hypervisor
中心标准 Linux;不在本章

3. 技术现状与趋势(点名 + 来源)

3.1 机器人 OS 三条路线(承接 13 章 3.1)

路线描述WCET 量级典型用途
A. 分域混合(业界主流)Linux+AI(PREEMPT_RT) + 安全岛 RTOS岛 <10μs;Linux 30–200μsAutoware Safety Island;Figure/Hexagon 类架构
B. Linux PREEMPT_RT 单域主线内核 6.12+ 合并 PREEMPT_RT30–150μsJetson 感知+部分控制
C. 全 RTOS(QNX/VxWorks)微内核+认证<10μs车规域控;成本/生态高
D. 同芯片 mixed-criticality(Qualcomm 式)单 SoC:Linux AI 域 + 认证安全子系统域间 <10μsIQ10 Physical AI

判断:端侧具身 优先 A——最硬 1kHz 控制放 04 章安全岛(Zephyr 首选,车规旗舰 QNX),NPU+ROS2+VLA 跑 Linux+PREEMPT_RTD 为候选 G(见 4.1),与 A 在 Driver 分区 API 上兼容(09 章)。

3.2 TOP 级平台 OS/BSP 方案横向对比(2025–2026)

平台OS/BSP 栈实时/确定性机器人集成优势劣势
NVIDIA Jetson Thor/OrinJetPack 7.2: L4T Ubuntu 24.04 + kernel 6.8 + CUDA 13;官方 Yocto(OE4T);PREEMPT_RT;Thor MIGMIG 多工作负载隔离;RT kernel on ThorIsaac ROS;DeepStream;GR00T;Hexagon/Boston Dynamics 早期采用机器人事实 BSP;Yocto 量产路径成熟(2026)闭源 BSP;绑 NVIDIA
Qualcomm Dragonwing IQ10QIRP SDK 2.0: Yocto meta-qcom-robotics + ROS2 layers;QNX 协作(Safety)功能安全子系统;700 TOPSPhysical AI 全栈;VinMotion/Booster车规/安全;OpenEmbedded 机器人层文档较新;VLA 栈 building
Google / 自研定制 LinuxBoston Dynamics+Gemini不可复用
华为昇腾 310P/910参考 Ubuntu + CANN;BSP 随 Atlas/边缘盒非机器人导向π0 LeRobot demo国产机器人 BSP 弱
Autoware/Arm SOAFEELinux + Zephyr Safety Island + CycloneDDSBounded latency 岛自动驾驶模板分域参考非人形专用
Wind River / QNXQNX SDP + HypervisorASIL-D工业/车认证齐全授权费
我们(目标)Yocto 定制 + PREEMPT_RT + Zephyr 岛MIG 式 NPU QoS(13) + 岛硬实时IREE+ROS2+LeRobot可裁剪;SSOT DTS需自建 meta 层

横向规律:

  1. 2026 量产机器人 = Linux(Yocto)+ AI 栈 + 硬实时分域——NVIDIA JetPack 7.2 官方 Yocto、Qualcomm QIRP 同证。
  2. PREEMPT_RT 已主线化(6.12+)——软/准实时足够 VLA/ROS2,不能替代 1kHz 硬实时
  3. Thor MIG = GPU 侧确定性多租户;我们可对 NPU 做 QoS/分区(13 ADR-040) 对标。

roadmap 提示(以官方为准):PREEMPT_RT 的主线合并里程碑在 6.12 落地(PREEMPT_RT 不再需要外挂补丁集);ROS 2 长期支持版本已推进到 Lyrical Luth(2026-05 发布);Zephyr 仍在快速迭代其 SMP 与实时性子系统。上述版本号会随社区节奏变化,最终以内核 Kconfig、ROS 2 发布公告与 Zephyr release note 为准

3.3 BSP / 设备树 / 启动

组件业界做法我们
设备树Jetson .dts+ OE4T;Qcom .dts08-os-bsp: 与 00-hw-spec 1:1
BootU-Boot/UEFI + 安全启动(28 章)U-Boot stub → 正式 secure boot
RootfsJetPack 参考 / Yocto minimalM3 参考 Ubuntu;M5 Yocto 量产
内核配置PREEMPT_RT、CPU isolation、isolcpus认知核 vs 控制核分区
岛间通信OpenAMP/RPMsg、DDS(CycloneDDS)安全岛 ↔ Linux shared mem
中间件/总线Isaac ROS;ros2_controlros2_control + EtherCAT/CAN 双总线
DDS/发现CycloneDDS / FastDDSCycloneDDS 默认;Zenoh 作跨域/Fleet 备选(25 章)
感知 pipelineHoloscan/GXF;DeepStreamLinux 域;dmabuf 出图(09 章)

3.4 现场总线与 ros2_control(具身控制栈)

┌─────────────────────────────────────────────────────────┐
│ Linux 域: VLA/ROS2 认知 (PREEMPT_RT) │
│ · ros2_control: joint_trajectory / diff_drive 接口 │
│ · DDS: CycloneDDS (intra-robot) │
├─────────────────────────────────────────────────────────┤
│ 安全岛(Zephyr): 1kHz 伺服/MPC │
│ · EtherCAT 主站 或 CAN-FD 电机驱动 │
│ · RPMsg ← 目标 pose/torque │
└─────────────────────────────────────────────────────────┘
总线典型场景WCET与 OS 关系
EtherCAT人形/工业臂多轴<1ms 周期岛侧主站;Linux 仅下发轨迹
CAN-FD轮式/轻量关节1–4ms岛侧或 Linux+SocketCAN(非硬实时)
ros2_control统一关节 API依赖分域Linux 规划 + 岛执行

判断:1kHz 闭环不得经 Linux DDS;ros2_control 在 Linux 做 轨迹规划,硬实时 EtherCAT/CAN 进岛

3.5 双域 AMP:Linux+RTOS 的物理分工与启动流(新增)

上面 3.4 给的是「谁在哪一域」的逻辑分工;这一节把它落到硬件层——多核 SoC 如何用 AMP(Asymmetric Multi-Processing,非对称多处理) 把一批 CPU 核切给 Linux、另一批核切给 RTOS,以及它们如何共享内存 + 中断协作。

在具身 SoC 上,双域并不是「两颗芯片」,而是同一颗多核 SoC 内的核被静态划分:譬如 8 核里前 6 核跑 Linux(认知域),后 2 核用 isolcpus 从 Linux 调度器里「挖走」、交给 Zephyr 独占(控制域)。二者靠 OpenAMP/RPMsg 走一块共享内存(shared DRAM 环形缓冲区)通信,靠核间中断(IPI) 触发投递。下图是这套 AMP 的物理拓扑与启动接力:

四点要害:

  1. 静态分核不是「虚拟化」:AMP 里两域各自独占物理核,不经 Hypervisor 抢占调度——这正是控制域能保证确定性的根源(没有 hypervisor 引入的不可预测抢占)。若要更强隔离才上 QNX Hypervisor / Jailhouse 这类 partitioning hypervisor(候选 G)。
  2. 启动接力靠 remoteproc:Linux 侧的 remoteproc 框架负责把 Zephyr 固件加载进为它保留的那块内存、放行控制核,并通过 sysfs 管理其生命周期(start/stop)。
  3. 通信语义是「投递」不是「调用」:RPMsg 是异步消息投递,不是同步 RPC——Linux 下发目标 pose 后不阻塞等待,岛侧按自己的 1kHz 节拍消费。这保证了 Linux 的抖动不会传导进控制环。
  4. 内存布局一旦冻结即不可逆:共享内存的物理地址、vring 大小写死在设备树里,与岛侧固件的链接脚本必须一致——这是本章 §7「不可逆点」的由来。

3.6 Holoscan/GXF 与感知 pipeline(交叉引用)

NVIDIA Holoscan = GXF 图调度 + 零拷贝 sensor graph;我们不对标闭源 GXF,但 拓扑等价:

Holoscan 概念我们映射
GXF graph + entityROS2 composable nodes / 自研 sensor graph
NvBufSurfacedmabuf + HAL import(09 ADR-051)
多传感器 syncPTP + hardware trigger(04 章)

3.7 5G / Fleet 边界

流量端侧处理网络
1kHz 控制本地闭环禁止
VLA chunk本地 NPU可选远程(π0 云)
OTA/日志/FleetLinux5G/WiFi
跨机器人发现Zenoh/DDS bridge(边侧)

3.8 与 13/09 章接口

  • CPU 侧:SCHED_FIFO/DEADLINE + PREEMPT_RT(13 ADR-038)。
  • NPU 侧:Driver 优先级队列(09 ADR-052);非 OS 调度。
  • 安全岛:Zephyr 跑 1kHz 伺服;通过 RPMsg 收 VLA 目标 pose。

3.9 趋势

  1. Yocto 从"社区"变"官方"(JetPack 7.2、QIRP)——量产必选技能。
  2. Agent 辅助 BSP(Jetson BSP Skills 2026)——可纳入 30 章 AI-Native。
  3. 混合关键性标准化:SOAFEE、ISO 26262 向机器人渗透。
  4. PREEMPT_RT 主线化后生态外溢:发行版默认可选 RT 内核,门槛降低,但**「主线 RT ≠ 硬实时认证」**的认知差仍普遍存在(见思考题 1)。

3b. 由演进反推的诉求

演进BSP/OS 响应
多模型 VMLinux cgroups + NPU QoS
功能安全认证QNX 岛或 Zephyr + 证据包
定制载板Yocto machine layer + DTS overlay
中心 Fleet同 Yocto distro,不同 packagegroup

4. 候选方案与对比矩阵

4.1 端侧 OS 架构

候选确定性生态成本可驾驭度小结
A. Linux PREEMPT_RT + Zephyr 安全岛5444建议方案
B. Linux PREEMPT_RT 单域3555M1–M3 简化;量产升级 A
C. QNX 全栈5322车规旗舰可选
D. 纯 Zephyr5132无法跑 VLA
G. Qualcomm 式同芯片 mixed-criticality4433单 KMD 多分区;IQ10 参考

倾向:A;研发早期可用 B,Tape-out 前切 A;G 作车规客户可选拓扑,与 A 共享 Driver 分区 API。

4.2 量产镜像

候选可裁剪reproducible维护小结
E. Yocto 定制(meta-dsa)553M5 量产
F. Ubuntu L4T 式参考235M1–M3 开发

5. 关键权衡、风险与依赖

  • 分域复杂度:两 OS 调试、岛间协议 —— 用 OpenAMP 标准 降风险。
  • PREEMPT_RT 误用:以为可跑 1kHz —— 硬控制必须进岛(13 章红线)。
  • DTS 漂移:硬件改 spec 未改 DTS —— CI check_dts.sh(Demo)。
  • 依赖:04(安全岛)、09(驱动节点)、28(secure boot)、25(ROS2)。

Demo 贯通(08-os-bsp)

  • Gate: check_dts.sh00-hw-spec 一致。
  • 量产:Yocto recipe 生成相同 DTS。

6. 结论与待决项

6.1 初步结论

  1. 端侧 OS = Linux(PREEMPT_RT)+ Zephyr 安全岛(硬 1kHz);对标 Autoware/SOAFEE 分域 + Jetson 生态。
  2. M1–M3:Ubuntu/参考 rootfs + DTS stub;M5:Yocto meta-dsa 量产镜像。
  3. BSP SSOT:设备树字段与 00-hw-spec 对齐;CI 门禁。
  4. 对标 JetPack 7.2 Yocto + Thor RT/MIG;差异化在 NPU QoS + 开放 Yocto 层
  5. 岛间通信用 OpenAMP/RPMsg;ROS2 仍在 Linux 域。
  6. ros2_control + EtherCAT/CAN 双总线:Linux 规划,岛侧 1kHz 执行;DDS(CycloneDDS) 域内、Zenoh 跨域/Fleet
  7. PREEMPT_RT defconfig 清单 纳入 ADR-061;感知 pipeline 对标 Holoscan 拓扑,实现走 dmabuf 标准路径
  8. 5G 仅 OTA/telemetry;控制与 VLA chunk 默认本地闭环。

6.2 待决项

  • 安全岛选 Zephyr vs QNX(成本/认证,28 章)。
  • PREEMPT_RT 是否 M2 即启用 vs M4。
  • 是否与 Wind River/Advantech 等 BSP 伙伴合作(26 章)。

6.3 ADR 候选

  • ADR-058 OS 架构:端侧 Linux(PREEMPT_RT)+ 安全岛 RTOS(Zephyr 默认);1kHz 硬实时 不得仅依赖 Linux;VLA/ROS2/IREE 在 Linux 域。
  • ADR-059 BSP/设备树 SSOT:DTS00-hw-spec 字段 1:1;check_dts.sh CI;Yocto 从同一源生成。
  • ADR-060 安全启动与镜像:M3 参考 rootfs;M5 Yocto reproducible;secure boot 预留(28);A/B 分区预研。
  • ADR-061 生产 BSP 路线:对标 JetPack/OE4T 与 QIRP meta-qcom;自建 meta-dsa;PREEMPT_RT defconfig 清单(见下) + CPU isolation 模板;ros2_control + EtherCAT recipe 预置。

ADR-061 附录:PREEMPT_RT defconfig 清单(最小集)

  • CONFIG_PREEMPT_RT=y
  • CONFIG_NO_HZ_FULL + isolcpus= 隔离认知核(NPU/ROS2)
  • CONFIG_IRQ_FORCED_THREADING=y
  • CPU freq: performance governor 或禁用 C-states(认知核)
  • 禁止在隔离核跑非 RT 线程;1kHz 控制仍进 Zephyr 岛

深入思考

下面三题每题先给题干,再用 <details> 折叠一份图文并茂的参考答案。建议先合上答案自己想 3 分钟,再展开对照。

思考题 1:PREEMPT_RT 凭什么把最大调度延迟压到百微秒级?

标准 Linux 的最坏调度延迟可达毫秒级,而 PREEMPT_RT 调优后能稳定在 30–150μs 的 p99。结合 3.2/3.8 节,论证 PREEMPT_RT 到底改了内核里的什么机制,让「最坏情况」而非「平均情况」变可控;并说明为什么它仍然达不到安全岛 <10μs 级、必须把 1kHz 硬控制放进 Zephyr 岛。

展开参考答案(含中断线程化时序图 + 算一遍)

结论:PREEMPT_RT 靠三招把「内核里不可抢占的临界区」逐个消灭——中断线程化、自旋锁换成可睡眠的优先级继承锁、抢占点密化——从而把最坏调度延迟从毫秒级(取决于最长临界区)压到百微秒级(取决于剩余的极少数原子上下文);但它没有形式化 WCET 证明,残余抖动源(SMI、缓存/TLB miss、DVFS)依旧存在,所以硬 1kHz(周期 1000μs、可用裕度仅几十微秒)只能交给经认证、路径可静态分析的安全岛。

用具体数字算一遍(为什么 1kHz 交给岛而非 Linux):

  1. 1kHz 控制环周期 = 1 / 1000 = 1000μs,每拍要「读传感器 → 算 MPC → 下发力矩」。
  2. 假设计算本身占 600μs,则留给「被调度、抢占、中断」的抖动裕度 = 1000 − 600 = 400μs
  3. PREEMPT_RT 的 p99 抖动约 30–150μs,看似 < 400μs 够用;但它是 p99 而非 p99999——1kHz 一天跑 8640 万拍,p99 意味着每天约 86 万次超时,任何一次超时都可能让力矩失控。
  4. 安全岛(Zephyr/QNX)的中断延迟是有界的 <10μs(可静态分析、可认证),即使按最坏 10μs 计,占周期比例仅 1%,且是上界保证而非统计分位。
  5. 结论落地:「平均快」不等于「最坏可控」;硬实时要的是后者,所以 1kHz 进岛。

PREEMPT_RT vs 安全岛 关键差异对比:

维度Linux + PREEMPT_RT安全岛(Zephyr/QNX)
延迟指标性质统计分位(p99),有长尾有界上界(WCET),可静态分析
典型量级30–150μs p99<10–20μs 中断延迟
残余抖动源SMI、缓存/TLB miss、DVFS、大内核极小内核、无 MMU 抖动、路径确定
功能安全认证无(主线内核不做 ASIL 证据)QNX 有 ASIL-D;Zephyr 可配证据包
适配负载VLA/ROS2/感知(软/准实时)1kHz 伺服/MPC(硬实时)

回链:这正是 §3.1 路线 A「分域混合」与 §6.3 ADR-058「1kHz 不得仅依赖 Linux」的内核级依据,也解释了 §3.5 双域 AMP 为何要把控制核 isolcpus 挖给 Zephyr 独占。

思考题 2:双域 AMP 里 Linux 与 RTOS 到底怎么分工?

给定一颗 8 核 SoC,要同时跑 VLA 推理(要吞吐)和 1kHz 伺服(要确定性)。结合 3.5 节的 AMP 拓扑,论证「哪些核/负载归 Linux、哪些归 Zephyr」的划分依据,以及为什么二者之间只能用 RPMsg 异步投递、绝不能让控制环反过来同步等 Linux

展开参考答案(含负载—域映射图 + 对比表)

结论:分工的唯一准则是「延迟需求的性质」——要吞吐(平均快)的负载归 Linux 认知域,要确定性(最坏可控)的负载归 Zephyr 控制域;二者用 isolcpus 静态分核物理隔离,只经 RPMsg 单向异步投递目标指令,这样 Linux 侧的任何抖动(GC、缺页、调度长尾)都被拦在共享内存这道墙外,传导不进 1kHz 控制环。

为什么控制环绝不能同步等 Linux:若把「读取 Linux 侧规划结果」做成同步阻塞调用,那么 Linux 一旦发生缺页、cgroup 限流或调度长尾(几十毫秒),控制环就会跟着阻塞,1kHz 立刻塌方。异步投递则把二者时间解耦:Linux 什么时候写、写多快都无所谓,岛侧只在自己的 1kHz 节拍到点时读最新一份目标 pose(旧的就用上一份 + 本地插值),控制环节拍永远不被外部拖慢。

双域职责对比:

维度Linux 认知域Zephyr 控制域
核分配核 0-5(共享调度)核 6-7(isolcpus 独占)
调度器PREEMPT_RT,SCHED_FIFO/OTHER 混合静态优先级 + 无抖动 tick
典型任务VLA 推理、ros2_control 轨迹规划、DDS1kHz 伺服、MPC、EtherCAT/CAN 主站
内存大页 + swap(GB 级)静态分配,无 MMU 抖动
对外通信5G/WiFi(OTA/telemetry)仅现场总线 + RPMsg,禁上网
失效影响认知降级(可重启)安全相关(须 fail-safe)

回链:此分工是 §3.4「1kHz 闭环不得经 Linux DDS」与 §3.5 AMP 物理拓扑的合并落地,也是 §6.3 ADR-058 的核心;RPMsg/共享内存布局的不可逆性见 §7。

思考题 3:安全岛选 Zephyr 还是 QNX?认证与生态怎么权衡?

§6.2 把「Zephyr vs QNX」列为待决项。结合 3.1/3.2 节与 3b 表,分析在「授权成本」「功能安全认证」「生态/可裁剪性」三个维度上二者的取舍,并说明为什么「认证证据包」是一项容易被低估的隐性成本、它如何决定车规客户与非车规客户的不同选择。

展开参考答案(含选型决策图 + 三维对比表)

结论:Zephyr 胜在开源零授权费、可深度裁剪、贴合我们自建 meta-dsa 的开放路线,适合非车规与研发默认;QNX 胜在微内核成熟、ASIL-D 认证证据齐全、出问题有商业兜底,适合车规旗舰客户——而决定性的隐性成本是「功能安全认证证据包」:自己用 Zephyr 从零攒 ISO 26262 证据的人力,往往比 QNX 的授权费更贵,这才是两者真正的分水岭。

为什么「认证证据包」是隐性成本:功能安全(ISO 26262 / ASIL-D)要求的不是「代码没 bug」,而是一整套可审计的证据——需求追溯、覆盖率报告、失效模式分析(FMEA)、工具链认证(qualified compiler)、独立评审记录。QNX 把这套证据作为产品的一部分交付,客户买的其实是「认证风险被外包」;而 Zephyr 虽有 Zephyr Safety 工作组和 IEC 61508 路线,但用它做 ASIL-D 量产,证据包大头要自己攒——这部分人力(安全工程师 + 数月工时)常被初算漏掉,实际可能远超 QNX 授权费(通常按项目/出货量计,量级在数十万美元区间)。

三维选型对比:

维度ZephyrQNX
授权成本开源,0 美元 授权费商业授权,按项目/出货量,常见数十万美元级
功能安全认证IEC 61508 路线在建;ASIL-D 证据多需自建ASIL-D / IEC 61508 证据包现成
生态/可裁剪高:模块化 Kconfig,贴合 meta-dsa;社区活跃中:微内核成熟稳定,但栈相对封闭
内核形态RTOS(可配 SMP)微内核 + 消息传递
商业支持社区为主 + 少数商业发行完整商业支持与兜底
我们的定位研发默认 + 非车规量产车规旗舰客户可选

回链:这对应 §4.1 候选 A(Zephyr 默认)与 C(QNX 全栈)、§6.2 待决项与 §6.3 ADR-058「Zephyr 默认」;3b 表「功能安全认证 → QNX 岛或 Zephyr + 证据包」正是此权衡的浓缩,而 28 章 secure boot 会进一步放大认证链的整体成本。


7. 端→边→中心演进影响

  • 边/中心:纯 Linux 即可;端侧保留分域。
  • 不可逆点:安全岛与 Linux 的 RPMsg/共享内存布局 随硬件冻结。

附:信息来源

区分公开/估计;参考时间 2026-06。

  • PREEMPT_RT 主线 6.12+;SCHED_DEADLINE;WCET 30–150μs:13 章;ProteanOS/AESTECHNO 2026;Robotics Architecture Authority。[公开]
  • QNX vs Zephyr vs Linux 2026:Promwad;BirJob embedded OS 2026。[公开]
  • Autoware/Arm SOAFEE Safety Island:13 章引用。[公开]
  • NVIDIA JetPack 7.2 Yocto/PREEMPT_RT/MIG/Thor RT:NVIDIA Technical Blog 2026;Jetson Linux 39.2;OE4T。[公开]
  • Qualcomm QIRP SDK 2.0 / meta-qcom-robotics:Qualcomm docs 80-70015-265;CES 2026。[公开]
  • ros2_control + EtherCAT:ROS2 Control docs;IgH EtherCAT master。[公开]
  • OpenAMP / RPMsg / remoteproc:OpenAMP project docs;Linux Documentation/staging/remoteproc.rst。[公开]
  • ROS 2 Lyrical Luth(2026-05):ROS 2 releases;以官方发布公告为准。[公开]
  • CycloneDDS / Zenoh:Eclipse CycloneDDS;ZettaScale Zenoh robotics。[公开]
  • NVIDIA Holoscan/GXF:NVIDIA Holoscan SDK docs。[公开]
  • Demo 08-os-bsp;04 章安全岛 ADR-015。[内部/公开]