AW: RT process priority > Interrupts ?
Warlich, Christof
christof.warlich at siemens.com
Mon Apr 13 03:19:31 EDT 2015
> In Linux, when a real time process is executing and an interrupt comes, will the RT process be preempted?
> Is RT process considered superior to interrupts?
Generally, interrupts always intercept processes as long as interrupts are enabled, but ...
> A missed IRQ is not considered fatal but where as missing the upper time limit for an RT process will be considered fatal. Hence I think, as a simple solution, the process should not be preempted.
> Is it the case?
… to deal with situations like this, two rather different approaches exist to mitigate the situation of missing deadlines on process level:
1) RT-Preempt:
The RT-Preempt Patch makes Kernel Threads from ISRs that by default run at RT priority 50. Thus, only a minimal Kickoff ISR is needed to trigger the related thread, so that RT processes running at priorities bigger than 50 are only preempted for a minimal amount of time.
2) Xenomai:
Xenomai features a Dual-Kernel approach (RT-Domain and Non-RT Domain), in which all interrupts are virtualized. Thus, RT processes (those running in the RT-Domain) are being executed with a higher priority than virtualized interrupts, more or less again imposing only a minimal amount of preemption delay due to some Kickoff ISR part.
However, there is no such mechanism available for vanilla kernels.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20150413/c7b582ce/attachment.html
More information about the Kernelnewbies
mailing list