Subject: Re: QUESTION: real-time, interrupt latency & atom process
To: Alfred Perlstein <bright@mu.org>
From: Reinoud Zandijk <reinoud@netbsd.org>
List: tech-kern
Date: 11/15/2001 10:53:06
Hi folks,
would it be a neat idea to include a RT kernel level scheduler in NetBSD
just like ``RTLinux'' does? where the rest of the NetBSD kernel is `just' a
task?
Well in your case the problem is that NetBSD is running in protected mode
on the i486 and not in `real mode' ... this gives a huge interrupt overhead
i've been told once for the processor will first try to call a `real mode'
handler that has then to be switched back to protected mode for NetBSD to
handle it ... or that the processor will call a second handler or so...
this switching is hugely expensive in the order or several thousants of
clock cycles... this effectively limiting interrupt rates to say a 3000 or
4000 on a 66 Mhz (well that were the figures he came with).
Bit offtopic but in contrast the ARM processor series only have an
interrupt latency of a 2 +branch for a normal IRQ or even 1 at most for a
special FIQ...
> > I guess the rate of lost characters on an unbuffered serial port might
> > give a clue...
> >
> > Anyone run an 8250 at 38400 baud?
hmm.... running at 115200 here on my arm's (one 40 Mhz) and just have very
sparse silo overflows ... say one a Mb...
> > If anyone is interested in playing with the hardware, I am willing
> > to donate motor controller cards (and ISA adapters if needed)
sorry... running out of time lately
Just my $0.02 ....
Cheers,
Reinoud