On Fri, 2005-04-08 at 09:52 -0500, Jan Depner wrote:
I do know what hard real-time is - I used to do
hard real-time
airborne magnetics/navigation data acquisition systems. That's why I
said guaranteed. You can get 15 microsecond guaranteed out of RT-Linux
though (depending on the hardware of course). However, I'll believe 50
microseconds when I see it run for 30 days doing fairly high bandwidth
data acquisition. BTW, where did you see someone say that they were
guaranteeing 50 microsecond interrupt response? I'd like to read up on
that.
Yup, 15 usecs is about the hardware limit, the difference is in the
non-preemptability of the timer ISR which runs for 30 usecs or so. At
one time this was preemptible with Ingo's patch, but had to be changed
back as it's not fully debugged.
There have been many, many LKML threads on it over the past few months.
This one has references to the determinism of the system:
http://article.gmane.org/gmane.linux.kernel/257329
Basically the RT preempt kernel achieves determinism by making every
code path in the kernel preemptible, except for a few like the scheduler
(and timer ISR, for now) that fundamentally can't be made preemptible,
and those few code paths can be analyzed to ensure that they execute in
constant time. This is achieved by turning all spinlocks into priority
inheriting mutexes.
It's still not considered ready for prime time, but this is definitely
the direction that hard RT on Linux is moving. It definitely appears
that this will obsolete RTLinux (and MontaVista Linux, eventually).
Lee