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/

Reply via email to