> 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.
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@kernelnewbies.org
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

Reply via email to