2026-07-10 · os
【操作系统百科】OS 的下一个十年
下一代 OS 应为 AI workload、异构计算、CXL、内核旁路做什么?加速器主导的调度、sched_ext + ML、分离执行、OS 与 runtime 的重新分工——以工程案例收束全系列。





























传统 OS 假设 CPU、内存、存储在同一台机器上。CXL 和 RDMA 打破了这个假设——内存可以在别的机器上。
flowchart TD
CPU[CPU 节点] -->|CXL| MEM[内存池<br/>共享/远程]
CPU -->|RDMA| STORAGE[存储节点]
CPU -->|网络| GPU[GPU 节点]
OS[传统 OS<br/>假设本地资源] --> QUESTION[如何管理<br/>远程资源?]
classDef local fill:#388bfd22,stroke:#388bfd,color:#adbac7;
classDef remote fill:#f0883e22,stroke:#f0883e,color:#adbac7;
class CPU local
class MEM,STORAGE,GPU remote
class OS,QUESTION remote
传统服务器:
CPU + 内存 + 存储 + 网卡 = 一台机器
解耦后:
CPU 池 + 内存池 + 存储池 = 按需组合
好处:资源利用率高 → 内存空闲的机器把内存”借”给别人。
CXL.mem → CPU 直接访问远程内存(load/store)
CXL.cache → 设备可以缓存主机内存
CXL.io → 类似 PCIe
// 新的内存层次
DRAM(本地)→ CXL 近端 → CXL 远端 → 持久内存OS 需要感知延迟差异 → 智能放置页面。
OSDI 2018 论文:
传统 OS → 拆分为:
pComponent(处理器管理)
mComponent(内存管理)
sComponent(存储管理)
每个组件独立运行在不同的硬件上 → 通过网络通信。
CPU 访问远程内存 → 页面错误 → 通过网络从 mComponent 获取页面
延迟:~1-10μs(RDMA)vs ~100ns(本地内存)。
zswap → 本地压缩
远程 swap → 通过 RDMA 到远程内存
Google 的 Far Memory 论文:用远程内存作为 swap → 比 SSD 快 10 倍。
CXL 内存 → OS 感知的第二层内存 → 自动迁移热页面。
# CXL 内存作为新 NUMA 节点
numactl --membind=2 ./my_app # 绑定到 CXL 内存CONFIG_MEMORY_TIER=y
内核自动将冷页面迁移到慢内存层 → 热页面保留在快内存。
mount -o dax /dev/pmem0 /mntCXL 持久内存直接 mmap → 绕过页缓存。
| 挑战 | 说明 |
|---|---|
| 延迟 | 远程内存 ~300ns vs 本地 ~100ns |
| 一致性 | 多主机共享内存的一致性协议 |
| 故障 | 远程内存节点故障 → 页面丢失 |
| 安全 | 共享内存的隔离和加密 |
Documentation/mm/memory-tiers.rstnumactlcxl-clidaxctl把当前热点继续串成多页阅读,而不是停在单篇消费。
2026-07-10 · os
下一代 OS 应为 AI workload、异构计算、CXL、内核旁路做什么?加速器主导的调度、sched_ext + ML、分离执行、OS 与 runtime 的重新分工——以工程案例收束全系列。
2026-04-30 · os
多路服务器里内存不再平等——本地访问和远程访问延迟差 2-3 倍。本文讲 NUMA 拓扑、mempolicy、AutoNUMA、NUMA balancing、CXL 带来的分级内存层次,以及 NUMA 感知的生产调优。
2026-04-27 · os
Linux 内存回收是 VM 最复杂的子系统之一。本文讲 active/inactive LRU、kswapd 与 direct reclaim、watermark 三线、swappiness 的真实含义、MGLRU 改造、memcg 回收与 PSI。
2026-04-28 · os
swap 还值得开吗?本文讲 swap area 基础、swap cache、zram 压缩内存、zswap 前端压缩池、swappiness 的真实含义、容器里的 swap 策略,以及为什么现代 Android 全靠 zram 不靠磁盘。
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。