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/