On Thu, Aug 16, 2001 at 09:34:36PM -0400, Calin Culianu wrote:
> Should I NEVER call a regular kernel routine, EVER EVER EVER? :)
You should NEVER call a regular kernel routine. If you like to
live dangerously, you can call regular kernel routines that you know
do not
try to disable interrupts
spin lock
block
cause page faults
do system calls (traps)
but you better monitor every release of Linux kernel to make sure that
your routine is still ok.
In general, if you need to call a Linux routine it is highly probalbe that
either
A) Your program could be designed better so it didn't need the service
B) There is a RTL service that can do the trick that you didn't know about
or maybe
C) RTL needs a new feature.
One powerful way to invoke Linux services is via interrupts
pthread_kill(rtl_linux_thread(),RTL_SIG_LINUX_MIN +i);
causes Linux to believe it got hardware interrupt "i".
In Linux system code calling "rtl_get_soft_irq()" gets a non-hardware
interrupt. See, for example how rtl_printf works in rtl_core.c
But this is not something you should overuse.
You want your RT code to be small, self-contained, and fast. If something can be
done in standard Linux, put it in standard linux.
-- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail [EMAIL PROTECTED] OR
echo "unsubscribe rtl <Your_email>" | mail [EMAIL PROTECTED]
--
For more information on Real-Time Linux see:
http://www.rtlinux.org/