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/

Reply via email to