Real time priorities in non real time OS

The*_*eer 10 linux process real-time priority

If I do the following command on my standard Linux Mint installation:

comp ~ $ ps -eo rtprio,nice,cmd
RTPRIO  NI CMD
...
99   - [migration/0]
99   - [watchdog/0]
99   - [migration/1]
 -   0 [ksoftirqd/1]
99   - [watchdog/1]
Run Code Online (Sandbox Code Playgroud)

我得到了一些实时优先级为 99 的进程。

rtprio在非实时 Linux 中是什么意思?这是否意味着如果我只运行一个rtprio99的程序,它会实时运行?实时操作系统在这个故事中处于什么位置?

von*_*and 7

“实时”是指必须在截止日期前完成的流程,否则会发生坏事 (TM)。实时内核是一种内核延迟受到严格限制的内核(可能存在行为不端的硬件,只是不能按时响应),并且可以中断大多数活动以让更高优先级的任务运行。在 Linux 的情况下,vanilla 内核不是为实时设置的(它有性能成本,并且实时补丁依赖于核心开发人员认为严重的一些黑客攻击)。此外,在无法跟上的机器(大多数个人机器)上运行实时内核是没有意义的。

也就是说,vanilla 内核处理实时优先级,这使它们具有比普通任务更高的优先级,并且这些任务通常会一直运行,直到它们自愿让出 CPU。这可以更好地响应这些任务,但意味着其他任务会被推迟。