Project Home
Project Home
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - IPC best method?: (2 Items)
   
IPC best method?  
Hello,

I am working on an application which involves two processes.  The first process (A) acquires data from hardware at high 
speed, this data is buffered by the process.  This process does nothing with the data except gather it up ready to 
deliver to the main application process.

The main application process (B) then requests / downloads the data from the buffers.  I need to implement a robust 
communication method between the two processes, where the application process (B) can request data from process (A) 
reliably and without interrupting (A).

One of the problems I'm having is that process (A) waits for an interrupt to trigger a thread, the thread is running at 
high priority waiting for the interrupt to inform it there is some data read to acquire.  Once that happens the process 
populates the ring buffer.  However, whilst this is going on the thread dominates and process (B) cannot get any access 
until the download is finished.

What can I do to allow process (B) to get access without making process (A) less reliable?

Thank you.
Re: IPC best method?  
Hi,

use data exchange over shared memory synchronized by in-memory 
semaphores  ... or port the Binder module of Android to QNX6.

Regards

--Armin

http://www.steinhoff-automation.com




Simon Platten wrote:
> Hello,
>
> I am working on an application which involves two processes.  The first process (A) acquires data from hardware at 
high speed, this data is buffered by the process.  This process does nothing with the data except gather it up ready to 
deliver to the main application process.
>
> The main application process (B) then requests / downloads the data from the buffers.  I need to implement a robust 
communication method between the two processes, where the application process (B) can request data from process (A) 
reliably and without interrupting (A).
>
> One of the problems I'm having is that process (A) waits for an interrupt to trigger a thread, the thread is running 
at high priority waiting for the interrupt to inform it there is some data read to acquire.  Once that happens the 
process populates the ring buffer.  However, whilst this is going on the thread dominates and process (B) cannot get any
 access until the download is finished.
>
> What can I do to allow process (B) to get access without making process (A) less reliable?
>
> Thank you.
>
>
>
> _______________________________________________
>
> General
> http://community.qnx.com/sf/go/post87026
>
>