All of lore.kernel.org
 help / color / mirror / Atom feed
From: Gilles Chanteperdrix <gilles.chanteperdrix@xenomai.org>
To: Peter Soetens <peter@domain.hid>
Cc: xenomai@xenomai.org
Subject: Re: [Xenomai-help] Native API rt_pipe_monitor() call can not be	called from an RT Task in linux userspace ?
Date: Wed, 17 Jun 2009 11:50:53 +0200	[thread overview]
Message-ID: <4A38BC7D.9090301@domain.hid> (raw)
In-Reply-To: <634c78ce0906170240w1ade29b0p904c3468af0866c@domain.hid>

Peter Soetens wrote:
> On Wed, Jun 17, 2009 at 10:09, Philippe Gerum<rpm@xenomai.org> wrote:
>> As you have probably understood already, building a full real-time to
>> real-time data path using pipes is not possible; this said, this is not
>> the purpose of this API anyway, which has been designed for real-time to
>> non-RT communication.
> 
> I was hoping to use rt_pipe + select in real-time context to implement
> a data receiving server for real-time inter-process communication. Is
> this possible ?

No, currently, select works with posix skin descriptors and RTDM
descriptors, and rt-pipes is a native skin interface, both were not
meant to be mixed.

So, there are several ways to fix this:
- add a mapping of the xnpipe API to the posix skin (or RTDM), I do not
really know how to do this, probably the best thing would be a special
kind of socketpair, which returns both descriptors;
- add a mapping of the xnselect API to the native skin, this would allow
us the freedom to implement an interface without the long scan of the
fd_set in application which scales badly, though scalability may not be
an issue with select due to the limit of 1024 descriptors;
- have a great unified file descriptor support, which would allow to mix
interfaces.

> What would happen if the real-time clients open the pipes as rt_pipes
> and start sending
> data in ? What's the alternative to listen in real-time to many
> connections from
> a single thread ?
> 
> Peter
> 
> _______________________________________________
> Xenomai-help mailing list
> Xenomai-help@domain.hid
> https://mail.gna.org/listinfo/xenomai-help


-- 
                                          Gilles



  reply	other threads:[~2009-06-17  9:50 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-16 22:23 [Xenomai-help] Native API rt_pipe_monitor() call can not be called from an RT Task in linux userspace ? Guvenc Gulce
2009-06-17  8:09 ` Philippe Gerum
2009-06-17  8:16   ` Gilles Chanteperdrix
2009-06-17  9:40   ` Peter Soetens
2009-06-17  9:50     ` Gilles Chanteperdrix [this message]
2009-06-17 10:30     ` Gilles Chanteperdrix
2009-06-17 12:13       ` Peter Soetens
2009-06-17 12:25         ` Gilles Chanteperdrix
2009-06-17 13:16           ` Peter Soetens
2009-06-17 22:41       ` Philippe Gerum
2009-06-18 17:20         ` Guvenc Gulce

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4A38BC7D.9090301@domain.hid \
    --to=gilles.chanteperdrix@xenomai.org \
    --cc=peter@domain.hid \
    --cc=xenomai@xenomai.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.