Linux POSIX实时信号能产生软实时吗?

Linux POSIX实时信号能产生软实时吗?,linux,real-time,terminology,signals,rtai,Linux,Real Time,Terminology,Signals,Rtai,发件人: 当一个真正的实时RTAI任务发出信号时,将会发生什么 通过Linux,您将在未定义的时间段内失去实时性 RTAI通常不支持POSIXAPI。 那么,当POSIX实时信号被发送到RTAI的实时任务时,控件会转移到用户空间吗?但我认为,由于POSIX信号也是实时信号,它们可以写入内核模块。。那么,怎么能说它会导致软实时呢 我不太清楚引用的原因,请解释我遗漏的一点。首先,控件转移到用户空间是什么意思?如果您的任务在内核空间中,那么它永远无法转移到用户空间。如果它在用户空间中,那么它已经在那里

发件人:

当一个真正的实时RTAI任务发出信号时,将会发生什么 通过Linux,您将在未定义的时间段内失去实时性

RTAI通常不支持POSIXAPI。 那么,当POSIX实时信号被发送到RTAI的实时任务时,控件会转移到用户空间吗?但我认为,由于POSIX信号也是实时信号,它们可以写入内核模块。。那么,怎么能说它会导致软实时呢


我不太清楚引用的原因,请解释我遗漏的一点。

首先,控件转移到用户空间是什么意思?如果您的任务在内核空间中,那么它永远无法转移到用户空间。如果它在用户空间中,那么它已经在那里了

在RTAI中,您有硬实时任务、软实时任务和Linux内核。任务由RTAI或Linux内核调度。RTAI确保了实时行为,所以像截止日期和周期等都与RTAI相匹配。然而,Linux不理解这些,也不关心这些

现在,只要您的代码与RTAI一起工作,一切都很好。如果调用需要Linux内核执行的任何操作,就会丢失实时性,因为RTAI将Linux内核安排为非实时进程。所以经验法则是,任何通过Linux的东西都是不好的

如果您接收到来自Linux的信号,这个过程的一部分由Linux内核处理,更不用说信号处理程序在Linux上下文中运行,中断被禁用。这意味着您完全脱离了实时环境,RTAI无法控制情况。因此存在实时性的危险