RT_PREEMPT 是什么?它与抢占 rt 有何不同?这些是否意味着对 linux 的实时补丁相同?

Iam*_*Ans 6 linux real-time

我目前正在研究hardrealtime linux。当我搜索有关主题 RT_PREEMPT 的文档时。不同的站点以不同的名称出现,例如 preempt-rt、rt-preempt。

有人可以告诉我确切的链接或任何可以帮助我查看 RT_PREEMPT 的资源吗?

sup*_*esk 10

您正在寻找 RT_Preempt 补丁,该补丁记录在此处。该补丁使内核完全可抢占,还包括一些 RT 调度程序。它包括安装方法。如果您熟悉构建内核,那应该很容易。

我在这里记录了我在 Ubuntu 机器上的安装。

很难找到有关补丁的最新信息,部分原因是它在过去几年中已成为主线(拥有多个名称也无济于事)。例如,3.14 内核具有用于“低延迟”安装的配置选项。

Steven Rostedt 在 2013 年的嵌入式 Linux 大会上做了一个很好的概述演讲,可在linuxgizmos.comyoutube 上找到。幻灯片在这里(pdf)。大约在第 17 分钟,他真的开始了解不同之处:

  • 中断由线程处理(因此被调度)
  • 自旋锁替换为互斥锁
  • 优先级继承扩展到内核