Linux RT 分析
PREEMPT_RT 与主线内核的差异、性能影响与调优 · 聚焦 ARM64。基于 Linux 6.12.107(linux-6.12.y stable,主线首个内置 PREEMPT_RT 的 LTS)源码逐项对照,聚焦 ARM64(Cortex-A / Neoverse),x86 仅作对照。
6.12.107内核版本3个子分析18篇文档63张架构图
子分析索引
PREEMPT_RT 对内核性能的影响
聚焦 ARM64。以 Linux 6.12.107 源码为依据,按「总—分—总」组织:一句话结论 → 12 个差异点沿因果链层层展开(每点两层架构图,非 RT / RT 对照)→ 全文小结与决策。
案例分析
把 RT 内核上实际观测到的性能现象逐个拆到源码——现象 → 机制链 → 复现与确认 → 对策;第一篇:munmap 压测中的 rcuc。
内核参数深解
逐条拆解 RT 部署里最关键的内核参数:作用、解析与生效链路(路径:行号)、能达到的效果与代价;第一篇:isolcpus / nohz_full / rcu_nocbs / irqaffinity 四条隔离参数。
关于本站
这是一组围绕 Linux 6.12.y(主线首个内置 CONFIG_PREEMPT_RT 的 LTS) 的源码级分析,目标平台是 ARM64(Cortex-A / Neoverse,含 big.LITTLE SoC 与多路服务器);x86 只在需要对照时提及。所有结论都对照本仓库 linux/ 目录里的 6.12.107 源码给出 路径:行号,可以直接打开核对。
- 性能分析:PREEMPT_RT 相对非 RT 内核在 12 个差异点上的机制变化、延迟/吞吐影响与调优建议,加 housekeeping 与自动驾驶 SoC 落地两章。
- 案例分析:把实测现象拆到源码的单篇案例(第一篇:munmap 压测中的 rcuc)。
- 内核参数深解:逐条参数的作用、解析与生效链路、效果与边界(第一篇:isolcpus / nohz_full / rcu_nocbs / irqaffinity)。每个差异点提供两层架构图(第一层看结论,第二层看代码路径),每层都是「非 RT / RT」上下对照。
- 架构图用 Visio 风格(圆角框、泳道、直角连线、实心箭头)的 SVG 绘制,点击可放大查看。
- 数字类内容(cyclictest 延迟、吞吐退化比例)除特别注明外均为公开测试/文献的常见量级,不是本机实测——请按「基准与测量」一章的方法在目标硬件上复测。
仓库结构
linux-rt/
├── linux/ # 内核源码(linux-6.12.y 浅克隆,独立 git 仓库)
├── doc/ # 分析文档(Markdown)+ 架构图(SVG)
│ ├── performance/ # 子分析:性能影响(16 章)
│ ├── cases/ # 子分析:案例分析(munmap 与 rcuc …)
│ ├── params/ # 子分析:内核参数深解(隔离四参数 …)
│ ├── diagrams/ # 63 张架构图(src/ 为生成脚本)
│ └── tools/vsvg.py # Visio 风格 SVG 渲染器
└── site/ # 站点生成器与部署脚本(输出 site/dist)
重新生成
python3 doc/diagrams/src/render_all.py # 重绘全部 SVG
python3 site/build.py # 生成 site/dist
site/deploy.sh # 部署到 Cloudflare Pages(需授权)