最近,“人工智能+软件”正在从一个应用层话题,逐渐变成基础软件领域的新问题。

过去我们谈AI,更多是在讨论大模型、算法、推理框架、AI Agent,以及如何把AI能力嵌入办公、制造、设计、开发等软件。

但现在,一个更加底层的问题正在出现:

如果AI开始直接进入操作系统,那么操作系统应该如何管理AI?

尤其是在工业控制、机器人、边缘计算、飞控、实时仿真等场景中,这个问题并不是简单地“给CPU增加一点AI算力”。

因为这些系统往往同时存在两类完全不同的任务:

一类任务追求智能、灵活和高计算吞吐

例如视觉识别、路径规划、大模型推理、环境感知、数据分析、Agent决策等。

另一类任务追求的却是完全不同的指标:

确定性。

比如电机控制周期必须稳定执行,传感器数据必须及时响应,中断必须在规定时间内处理,控制任务不能因为某个AI任务突然占满CPU而产生不可预测的延迟。

这就产生了一个非常现实的矛盾:

AI希望操作系统更加灵活,而实时系统希望操作系统更加可控。

这可能会成为下一阶段实时Linux和实时操作系统需要解决的核心问题之一。


一、AI进入操作系统之后,最大的变化是什么?

传统的软件架构通常比较容易理解。

应用运行在操作系统之上,操作系统负责提供进程、线程、内存、文件系统、网络、设备驱动以及任务调度等基础能力。

AI也是其中的一个应用。

例如:

AI应用
   ↓
AI推理框架
   ↓
Linux操作系统
   ↓
CPU / GPU / NPU

AI需要计算资源,就向操作系统申请CPU、内存、设备和网络资源。

操作系统本身并不关心AI到底在做什么。

但AI Agent出现以后,情况开始发生变化。

Agent并不只是一个固定运行的程序。

它可能根据环境变化动态创建任务、调用工具、访问文件、发起网络请求、执行推理、启动其他程序,甚至根据新的结果不断改变下一步动作。

于是,操作系统面对的就不再只是:

“有一个AI程序正在运行。”

而可能变成:

“有一个智能体正在不断产生新的计算任务。”

这意味着操作系统开始需要理解更加复杂的任务关系。

例如:

Agent
 ├── 感知任务
 ├── 数据处理任务
 ├── AI推理任务
 ├── 网络通信任务
 ├── 规划任务
 └── 控制任务

这些任务的优先级、实时性、资源需求甚至运行时间都可能不同。

对于普通桌面系统而言,这并不一定是一个严重问题。

但对于机器人、工业控制和飞控系统来说,问题就来了。

假设一个机器人正在执行运动控制:

传感器采集
      ↓
状态计算
      ↓
运动控制
      ↓
执行器输出

与此同时,AI Agent突然开始进行一轮复杂推理。

如果AI任务恰好消耗大量CPU资源,甚至产生大量内存访问、I/O、中断和后台线程,那么控制任务的执行时间就可能发生抖动。

一次可能只是多了几十微秒。

但如果这种抖动无法预测,就会逐渐变成实时系统真正关心的问题:

最坏情况下到底会延迟多少?

这也是AI进入实时系统后,与普通AI应用最大的区别。


二、实时系统为什么特别害怕“不可预测”?

很多人理解实时系统时,会简单认为:

实时系统就是速度快。

实际上并不完全如此。

对于硬实时系统来说,真正重要的是:

任务能不能在规定的时间窗口内稳定完成。

举一个非常简单的例子。

假设一个控制任务要求:

每100 μs执行一次

如果它每次都在:

98 μs
101 μs
99 μs
100 μs

完成,那么系统可能是可以接受的。

但如果它平时:

80 μs
90 μs
100 μs

偶尔突然变成:

2 ms

那么平均性能再漂亮也没有意义。

因为控制系统真正关心的是:

最坏情况。

这就是实时系统和普通计算系统非常重要的区别。

普通系统通常更关注:

  • 平均响应时间

  • 吞吐量

  • 平均CPU利用率

  • 平均任务完成时间

而实时系统更加关注:

  • 最大响应延迟

  • 最大调度延迟

  • 中断响应时间

  • 抖动

  • 最坏执行时间

  • deadline是否能够满足

因此,AI进入实时系统之后,最大的挑战并不是“AI算得够不够快”。

而是:

AI产生的动态、不确定负载,会不会破坏原有实时任务的确定性?


三、为什么“给AI分配一个低优先级”还不够?

面对这个问题,很多人的第一反应可能是:

那就把AI任务优先级调低。

例如:

实时控制任务     高优先级
传感器任务       高优先级
通信任务         中优先级
AI推理任务       低优先级
普通应用         更低优先级

从调度策略上看,这确实是一个解决办法。

但它解决的只是问题的一部分。

因为CPU调度并不是实时系统唯一的干扰来源。

例如,一个低优先级AI任务可能仍然涉及:

  • 内存访问

  • 文件系统

  • 网络通信

  • 中断

  • DMA

  • 驱动程序

  • 内核线程

  • I/O操作

  • 锁竞争

  • cache竞争

甚至某些硬件中断也可能打断实时任务。

所以:

“AI优先级低”≠“AI不会影响实时任务”。

这也是为什么在复杂实时系统里,仅仅依靠传统的进程优先级和CPU affinity往往是不够的。


四、真正关键的问题:能不能把实时任务和AI任务隔离开?

这时候就会涉及一个越来越重要的技术思路:

核心隔离。

假设一台多核处理器拥有8个CPU核心。

一种普通的运行方式可能是:

CPU0 ─┐
CPU1 ─┤
CPU2 ─┤
CPU3 ─┤── Linux + AI + 控制任务
CPU4 ─┤
CPU5 ─┤
CPU6 ─┤
CPU7 ─┘

所有任务都共享整个系统。

即使我们通过调度策略尽量提高控制任务优先级,系统中依然存在各种共享资源和后台活动。

而核心隔离的思路则完全不同。

例如:

┌───────────────────────────────┐
│          多核CPU              │
├───────────────┬───────────────┤
│ 实时核心      │ 通用计算核心  │
│ CPU0          │ CPU4          │
│ CPU1          │ CPU5          │
│ CPU2          │ CPU6          │
│ CPU3          │ CPU7          │
├───────────────┼───────────────┤
│ 控制任务      │ AI推理        │
│ 实时任务      │ Agent         │
│ 关键中断      │ 普通应用      │
└───────────────┴───────────────┘

实时任务主要运行在指定的实时核心上。

AI、Agent、普通应用等计算任务运行在另外的核心上。

这样做的价值,并不仅仅是“给实时任务留几个CPU”。

更重要的是:

把不可预测的计算活动与关键实时路径尽可能隔离。

这就是核心隔离真正重要的地方。


五、核心隔离解决的到底是什么?

核心隔离并不是简单意义上的“CPU绑核”。

两者有明显区别。

CPU affinity更多是在告诉系统:

这个任务尽量在哪些CPU上运行。

而真正面向实时性的核心隔离,需要进一步考虑:

哪些任务可以进入这个核心?
哪些中断可以进入?
哪些内核线程可以进入?
哪些后台活动应该被排除?
哪些资源仍然可能产生干扰?

例如:

实时核心
│
├── 实时控制线程
├── 传感器处理
├── 关键中断
└── 必要内核活动

        ×

├── AI Agent
├── 大模型推理
├── 普通网络任务
├── 后台服务
└── 非关键I/O

这样形成的是一个更加明确的实时执行域

这对于AI+实时计算融合场景尤其重要。

因为未来很多系统并不是“AI或者实时控制”二选一。

而是:

AI负责更复杂的决策,实时系统负责把决策稳定地执行出来。

例如机器人:

视觉感知
   ↓
AI推理
   ↓
路径规划
   ↓
运动控制
   ↓
电机执行

AI可以负责:

“机器人下一步应该怎么走?”

实时控制系统负责:

“电机必须在什么时候、以什么周期、按照什么控制参数动作。”

两者的任务属性完全不同。

所以更合理的架构不是让AI和实时控制争夺同一套资源,而是:

让它们在同一个系统中协同,同时保持必要的资源边界。


六、这可能正是“AI原生操作系统”真正需要解决的问题

工信部近期发布的“人工智能+软件”专项行动,把AI原生软件作为重要方向,并明确提出推动基础软件智能化升级。

这里有一个值得关注的变化:

过去的软件智能化,更多是在讨论:

如何在现有软件里加入AI。

而AI原生的思路更加进一步:

软件从底层架构开始,就考虑AI如何参与运行、调度和决策。

如果这个趋势继续向操作系统层面发展,那么未来的操作系统可能需要同时理解几类不同的任务。

例如:

实时任务
│
├── 硬实时控制
├── 传感器采集
└── 安全关键任务

智能任务
│
├── AI推理
├── Agent
└── 自主决策

通用任务
│
├── 网络
├── 文件系统
└── 普通应用

传统操作系统主要解决的是:

如何让这些任务共享计算资源。

而AI时代的操作系统可能需要进一步解决:

如何根据任务性质,对这些任务进行不同等级的调度、隔离和资源管理。

这实际上已经开始接近一个新的问题:

面向异构任务的操作系统资源治理。


七、对于机器人和工业控制,这个问题会更加明显

为什么具身智能、机器人、智能制造等领域会特别需要这种能力?

因为这些系统本身就是“AI+实时控制”的结合体。

以机器人为例:

                 AI
        ┌────────┼────────┐
        ↓        ↓        ↓
     视觉识别  路径规划  行为决策
        │        │        │
        └────────┼────────┘
                 ↓
             控制系统
                 ↓
          实时运动控制
                 ↓
              电机

如果整个系统完全采用通用计算思路,AI任务的动态负载可能对底层控制造成干扰。

但如果把AI和控制完全拆成两台机器,又会增加:

  • 硬件成本

  • 通信链路

  • 系统复杂度

  • 软件维护成本

  • 数据同步问题

因此,一个非常有吸引力的方向就是:

在同一个计算平台上,同时承载AI和硬实时任务。

但是前提是操作系统必须能够提供足够强的:

调度能力 + 隔离能力 + 安全能力 + 确定性。

这也是未来实时操作系统面临的重要机会。


八、从实时Linux到“实时+AI”的系统架构

传统实时Linux的发展,已经解决了大量关于实时调度和低延迟的问题。

但如果进一步进入AI时代,关注点可能需要从:

“Linux能不能做到低延迟?”

逐渐转向:

“Linux能不能在复杂动态负载下持续保证关键任务的确定性?”

这两个问题并不完全一样。

例如:

传统实时优化

降低调度延迟
      ↓
降低中断延迟
      ↓
减少内核干扰
      ↓
优化实时调度

而AI+实时场景可能进一步变成:

动态AI负载
      ↓
任务识别
      ↓
资源分类
      ↓
核心隔离
      ↓
实时调度
      ↓
关键任务保护
      ↓
运行状态监测

这意味着未来的实时操作系统不仅需要“跑得快”,还需要:

知道什么任务绝对不能被影响。


九、望获OS为什么需要强调“核心隔离”?

对于望获OS这样的国产嵌入式硬实时操作系统来说,这恰恰是一个值得长期强化的技术方向。

因为如果只强调:

“我们是实时Linux。”

其实很容易陷入一个非常同质化的竞争。

很多Linux实时方案都可以讨论低延迟、实时调度、CPU affinity等技术。

但对于工业控制、机器人、飞控和高可靠嵌入式系统来说,真正有价值的问题是:

如何把关键任务从复杂系统的不确定性中保护出来?

这也是核心隔离的价值所在。

望获OS强调的并不只是“让任务跑得更快”,而是通过包括核心隔离在内的系统级机制,构建更加明确的实时执行环境。

尤其当一个系统同时存在:

  • AI计算

  • 实时控制

  • 网络通信

  • 图像处理

  • 数据采集

  • 人机交互

  • 边缘计算

等多种任务时,系统真正需要的是:

让不同类型的任务各司其职。

例如:

┌─────────────────────────────────┐
│           应用层                │
│ AI / Agent / 控制 / 通信 / HMI  │
├─────────────────────────────────┤
│           系统服务层            │
│ 资源管理 / 网络 / 文件系统      │
├─────────────────────────────────┤
│        实时调度与隔离层         │
│ 调度 / 核心隔离 / 中断隔离等    │
├─────────────────────────────────┤
│             内核                │
├─────────────────────────────────┤
│ 国产CPU / ARM / RISC-V 等硬件   │
└─────────────────────────────────┘

这种架构思路的核心不是把AI排除在系统之外。

恰恰相反:

是让AI能够进入系统,同时又不会轻易破坏实时任务的确定性。


十、未来的实时操作系统,可能不再只是“实时”

AI的发展正在改变操作系统面对的任务类型。

过去,一个嵌入式系统可能主要运行:

控制任务
+
通信任务
+
设备驱动

未来的智能设备可能变成:

感知
+
AI推理
+
Agent决策
+
实时控制
+
通信
+
数据处理
+
安全管理

任务数量更多,负载变化更复杂,软件栈也更加庞大。

因此,下一代实时操作系统需要解决的核心问题可能会逐渐从:

“如何把实时任务做快?”

变成:

“如何在复杂软件生态中,让实时任务始终保持确定性?”

这其实也是AI进入工业、机器人、边缘计算之后,一个非常关键的底层问题。

因为AI可以允许系统“更聪明”。

但工业控制、飞控和机器人执行系统不能因此变得“不可预测”。

真正成熟的AI+实时系统,应该是:

AI负责让机器更聪明,实时操作系统负责让机器稳定地执行。

而操作系统真正的价值,就在于把这两种完全不同的计算逻辑放进同一个系统里,同时建立清晰的资源边界和可靠的运行秩序。

从这个角度来看,核心隔离、实时调度、安全隔离以及国产软硬件协同适配,很可能会成为AI进入工业控制、机器人和嵌入式系统之后越来越重要的底层能力。

未来的操作系统,或许不再只是“管理硬件的软件”。

它更像是:

智能任务与确定性任务之间的协调者。

这也可能是“AI原生操作系统”真正值得关注的地方。

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐