Hi,

at http://www.aero.polimi.it/projects/rtai/ you can find the file
"rtai_rtl_fifos.tgz" that contains a portable API for fifos, the RTL
way, plus new added services that could be of help in solving some
problems discussed recently.

A few names of the function added to the usual RTL fifos API should give
a clue:

- rtf_open_sized(const char *dev, perm, size).                          
- rtf_read_timed(fd, buf, count, ms_delay);                             
- rtf_write_timed(fd, buf, count, ms_delay);                            
- rtf_suspend_timed(fd, ms_delay).                                      
- rtf_sem_init(fd, init_val);                                           
- rtf_sem_wait(fd);                                                     
- rtf_sem_trywait(fd);                                                  
- rtf_sem_timed_wait(fd, ms_delay);                                     
- rtf_sem_post(fd);                                                     
- rtf_sem_destroy(fd);

Due to the design constraint of working also when a real time scheduler
is not installed, e.g.interrupt handlers, only non blocking operations
from the RT side are available, e.g. rtf_sem_trywait and rtf_sem_post.
If one wants to work with a real time scheduler than fifos should not be
used any more in RTAI. It has more comfortable tools for complex
communications and services inter-intra LINUX and RTAI. 

Unpack and have a look at the Makefile and README.FIFOS for a quick, but
more precise, idea.

Ciao, Paolo.
--- [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