[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: [rtl] rtai_rtl_newfifos package in NMT rtlinux-2.0



> I think that the semantic of UNIX read() syscall is much close
> to NMT rtlinux-2.0.

Maybe it is a thing to look at, but in any case for that you can
immediatly use rtf_read_timed with zero timeout to do that, i.e.
rtf_read_timed(fd, buf, count, 0), see README.FIFOS.

> Second, is it natually impossible to use blocking services
> (e.g. rtf_sem_wait and rtf_sem_timed_wait, etc) in kernel module?
> It may be neccesary in many real-time application.
> If it is possible and somebody can help Steve's great work,
> how can I contribute to it?

That is a matter that can make it difficult to make that package
portable, unless we find a chap that is very good at make wizardries and
defines macros.

Note that the new fifos are purposely designed, as their RTL
counterpart, to not involve any realtime scheduler. It is declared in
the accompanying README. From the RTAI side there is no such a need as,
once any RTAI real time scheduler is installed, fifos are no more
required since there is a better way to communicate inter-intra
RTAI-LINUX. So their is no use in duplicating an already existing
comprehensive set of effective services.

Fifos are just for compatibility and for interrupt handlers that want to
communicate directly with user processes. Semaphore services were
designed to help in synchronizing handlers without data exchange, e.g.
using shared memory, and thus cannot block because are suppose to have
nothing to block.

Ciao, Paolo.
--- [rtl] ---
To unsubscribe:
echo "unsubscribe rtl" | mail majordomo@rtlinux.cs.nmt.edu OR
echo "unsubscribe rtl <Your_email>" | mail majordomo@rtlinux.cs.nmt.edu
----
For more information on Real-Time Linux see:
http://www.rtlinux.org/~rtlinux/