【问题标题】:How do I make a process run real-time with raspberry pi PREEMPT_RT patch?如何使用树莓派 PREEMPT_RT 补丁使进程实时运行?
【发布时间】:2019-08-10 07:32:09
【问题描述】:

我已使用 PREEMPT_RT 修补程序修补了我的 Raspbian 操作系统,以使我的操作系统可抢占。如何让我的一个应用程序实时运行? (可加载内核模块等)

【问题讨论】:

标签: python c raspberry-pi real-time rtos


【解决方案1】:

Linux 中的进程已经可以通过循环时间片来抢占。 PREEMPT_RT 补丁所做的是支持基于优先级的抢占。那是最高优先级的ready线程一直运行,直到它阻塞或被更高优先级的线程抢占ready。如果没有 PREEMPT_RT,更高优先级的线程只会被分配更多和/或更大的时间片。 (有点简单的描述 - Linux 调度比实际操作要复杂一些)。

进程不会通过在实时操作系统甚至 PREEMPT_RT 上运行而神奇地变为“实时”。这些只是提供实时支持-您的应用程序仍然必须适当地设计以满足实时截止日期。来自Real-time Linux Wiki FAQ

在非 RT 上设计不佳的应用程序永远不会在 RT 上实时运行。

您可以使用chrt 设置现有进程的优先级和调度策略。但正如所解释的,以高优先级运行进程并不一定使其“实时”。最坏的情况是你的进程占用了处理器,以至于没有其他东西可以运行。

【讨论】:

    猜你喜欢
    • 2017-05-29
    • 2012-05-03
    • 2017-06-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-31
    • 1970-01-01
    • 2022-12-05
    • 1970-01-01
    相关资源
    最近更新 更多