You have many choices:

1. recompile your kernel with HZ defined to 1000 or 2000
in include/asm/param.h. Then you can get granularity of 1-2 ms with normal
Linux kernel. You can use soft real time to make it smoother
(sched_setscheduler, sched_setparam).

2. Set real time kernel thread (real time means not "calling RT functions"
but "beeing called by RT interrupt handlers and schedulers, beeing able to
preempt all non-RT user and kernel code (even cli() protected)") to write
periodically ( at 1 KHz) something to RT FIFO. Implement sleep in user space
as blocking read on that FIFO.

3. Use RTAI/LXRT in soft mode.

4. Hard real time is not an option for you because your application is user
and communication oriented. Missing deadline by 1 ms few times per day is not
a problem for you. Hard real time is really for tasks which read something
from IO (and possibly calculate and write something back), with catastrophic
results of beeing 100 microseconds late.

On Fri, 26 May 2000, Mark wrote:

> 1) I've read some of the documentation and it seems that most of the RT
> suff is a thread. The thing that confuses me here is that I thought a
> thread executed separately within a process. Therefore what process is
> this? Does it mean that the "normal" Linux process has a real time

The kernel, including all user processes is the lowest priority RT thread
within RT scheduler.

Best regards,
--
Tomek

-- [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/rtlinux/

Reply via email to