All of lore.kernel.org
 help / color / mirror / Atom feed
From: "M. Koehrer" <mathias_koehrer@arcor.de>
To: dvhltc@us.ibm.com, mathias_koehrer@arcor.de
Cc: linux-rt-users@vger.kernel.org
Subject: Re: Re: Replacement for Xenomai's Message queues?
Date: Thu, 28 Jan 2010 21:06:33 +0100 (CET)	[thread overview]
Message-ID: <5579824.1264709193179.JavaMail.ngmail@webmail08.arcor-online.net> (raw)
In-Reply-To: <4B61DDF2.6010309@us.ibm.com>

Hi Darren,

thanks for the response.
You are right, I should clarify the needs I have...
I have two real time applications (two processes), each running a few real time threads.
For inter process communication I want to exchange data between the two applications.
For this I want to use two queues - one for direction A->B and one for B->A.
Now I have the situation that one thread in B that handles the A->B queue is waiting for data from A.
Whenever A has the data available, it writes the data into the A->B queue.
Immediately after receiving data from A, B unblocks and computes some answer data that is written
into the B->A queue. 
The time between sending the data in A and getting the data back from B should be as low as possible 
(real time requirements: at max tens of microseconds...).

The functionality of mq_send, mq_receive looks suitable.
However I am not sure if this can fulfil my performance needs...
Perhaps I still have the "Xenomai" thinking which means that only some special API functions are real time capable
all others are not... With the RT_PREEMPT patch this seems to be much easier as I can use all suitable functionality
(or did I miss some important thing here?!?).

Regards

Mathias


> > Hi all,
> > 
> > I am about to switch an realtime application from Xenomai to the
> RT_PREEMPTION patch.
> > Everything works really smooth, however I have one question.
> > With my Xenomai application I use the message queue which combine transfer
> (including queuing)
> > of data with activation of the thread.
> > In my Xenomai application I use this feature quite frequently. Now, I am
> not sure how to do an equivalent
> > with the RT_PREEMPT patch.
> > (see
> http://www.xenomai.org/documentation/xenomai-2.4/html/api/group__native__que
> ue.html)
> > Of course I could use condition variables and a struct or array to hold
> the data I want to pass with the activation
> > of a thread. However, using this approach I do not have the queuing (which
> is some extra effort I could spent...).
> > Another idea I have: I could use sockets which realize the queuing but the
> overhead is too high.
> > 
> > Is there any suitable way to implement a message queue like approach using
> RT_PREEMPT patch?
> > I am running x86 (Dual/Quad Cores).
> 
> I don't if we have many xenomai experts on this list. It would help to 
> understand which aspects of the Xenomai message queue are important to 
> you (other than the ability to block on a queue and wake when a message 
> is available). For a basic message queueing system with the ability to 
> prioritize messages, you can look to the POSIX.4 Message Queues. A 
> google search will provide plenty of howto's, and the API appears at 
> least similar to what you were using with Xenomai.
> 
> I haven't looked, but I don't think Linux supports message driven 
> Priority Inheritance 
> (http://www.qnx.com/developers/docs/6.3.2/neutrino/sys_arch/kernel.html#Prio
> rity_inheritance_messages).
> 
> -- 


-- 
Mathias Koehrer
mathias_koehrer@arcor.de


Immer auf dem Laufenden! Sport, Auto, Reise, Politik und Promis. Von uns für Sie: der neue Arcor.de-Newsletter!
Jetzt anmelden und einfach alles wissen: http://www.arcor.de/rd/footer.newsletter
--
To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

  reply	other threads:[~2010-01-28 20:06 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-28  8:09 Replacement for Xenomai's Message queues? M. Koehrer
2010-01-28 18:56 ` Darren Hart
2010-01-28 20:06   ` M. Koehrer [this message]
2010-01-28 21:12     ` Darren Hart
2010-01-28 21:50     ` Carsten Emde
2010-01-28 22:18     ` Tim Sander

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=5579824.1264709193179.JavaMail.ngmail@webmail08.arcor-online.net \
    --to=mathias_koehrer@arcor.de \
    --cc=dvhltc@us.ibm.com \
    --cc=linux-rt-users@vger.kernel.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.