I think that the use of a fifo seems to be more a secure solution than
using shared memory bits.
It is important to guarantee an exclusive access to shared ressources .
I tried RTAI_RTL_FIFOS from zentropix, this seems to solve the problem
for the exchange of semaphores between RT and linux space.
Did some people already use it ?
Thanks for your help.
S.A.
"Dresner, Norman A." wrote:
>
> While it's not quite as neat and self-documenting, you could probably use
> two FIFOs between user-space and the rt-module, one to notify the kernel
> that is has data and the second to notify the user-task that the update is
> done. A user-program blocked reading from the FIFO looks a lot like a
> user-program waiting for a semaphore.
>
> Norm Dresner
> Fellow Systems Engineer
> Radar Systems Engineering Department
> Electronic Systems and Sensors Segment
> Northrop Grumman Corporation
> MS 520
> Box 746
> Baltimore MD 21203
>
> Voice: (410) 993 - 2096 Mornings; all-day voice-mail
> (410) 969 - 8068 Afternoons with answering machine
> FAX: (410) 993 - 8084 On-site
> (410) 969 - 8068 Afternoons; call first to arrange
> E-Mail:Mornings: [EMAIL PROTECTED]
> Afternoons: [EMAIL PROTECTED]
>
> > -----Original Message-----
> > From: S.A. [SMTP:[EMAIL PROTECTED]]
> > Sent: Tuesday, October 31, 2000 2:37 AM
> > To: [EMAIL PROTECTED]
> > Cc: [EMAIL PROTECTED]
> > Subject: Re: [rtl] semaphore between rt and user space
> >
> > [EMAIL PROTECTED] wrote:
> > >
> > > There is no way to do this. Why would you want to?
> > >
> >
> > In user space the user has the ability to update tables for the rttasks
> > When the table is updated (we will say a memcpy drived by an order from
> > the user in the GUI) the table must be shared with a semaphore for
> > exclusive access .
> >
> > Of course, the rttask will not wait , but work as follow :
> >
> > evaluate availability of semaphore
> > if (available)
> > then
> > 1.lock semaphore
> > 2. read the updated table
> > 3. unlock semaphore
> > else will check for it on next timeslice
> >
> > That is one of the reasons...
> >
> > Imagine a robot with GUI and automation task on the same platform, a lot
> > of dialog is
> > needed between both rt and user space
> >
> > bye
> > s.a.
> > -- [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/
> -- [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/
-- [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/