But IRIX seems to be monolithic and handles realtime content quite well.
> >
> > Does anyone know if the disk device driver (or device drivers in general) can be
> > preempted from regular processes or is there no way to do this on Linux.
>
> Lots of overhead for no good reason. If you need a RT - take a RT kernel
> and don't mess with TS ones.
there seems to be some discrepancy about what is better uKernel or monolithic,
certainly it's easier to do RT stuff on a uKernel because all drivers run as
processes, but I think it's not impossible to archieve similar results on
monolithic kernels.
Yes, you have to deal with spinlocking and related stuff, but you get the
added bonus of less syscall overhead, which is in some cases 3 to 10 times
bigger on uKernels. ( read on the L4 for Linux papers).
Could maybe one solution to port all the Linux device drives to the L4 for
Linux uKernel ?
Actually on L4 for Linux the kernel runs as a single big server, and therefore
these big scheduling latency problems would not go away, until you port
every device driver to L4 IMHO. (correct me if I'm wrong).
The L4 folks benchmarked L4 for Linux and this uKernel runs only
about 6-7% slower than a standard Linux kernel which is not so much.
I would be happy to sacrifice 6-7% of performance to have a kernel
with good RT features.
http://os.inf.tu-dresden.de/pubs/sosp97/
>
> > Do we really need a microkernel to handle realtime multimedia ?
> >
> > Hopefully Amiga Inc, will help us to optimize these Linux deficiencies,
> > through collaborating with the kernel/audio/video developement folks.
> >
> > comments ?
>
> It's not a bug, it's a feature. "Optimize" will mean "screw normal usage".
> Optimizing for RT != optimizing for TS. Ditto the other way round. They
> should take RT-Linux or QNX, if they want RT. <looking at their page>
> Oh, dear... Looks like marketdroids decided that popularity of Linux means
> that they should use it and to hell with technical arguments. And managed
> to convince PHBs. Paint me cynical, but... Methink they are in for a big
> screwup.
I agree, QNX is certainly better than Linux for doing RT stuff, becuase of its
uKernel nature, but consider the fact that Linux has the advantage of
having big developer and commercial interest, this means lots of hardware
supported, and you don't have to pay licensing fees.
As for RT Linux: RT-Linux is certainly excellent to do specialized things,
like robotics etc. , but for general purpose multimeda, RT Linux will not help,
becuase you can't call syscalls in your RT Linux processes, you can only
use shared mem to communicate with the outside world or use specialized
kernel modules which do custiom I/O.
comments ?
regards,
Benno.
-- Benno Senoner E-Mail: sbenno@gardena.net Linux scheduling latency benchmarks http://www.gardena.net/benno/linux/audio
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/