[linux-audio-dev] jack_callback <-> rest of the world

Alfons Adriaensen fons.adriaensen at alcatel.be
Wed Nov 2 10:29:11 UTC 2005


On Wed, Nov 02, 2005 at 11:05:34AM +0100, St?phane Letz wrote:
> 
> Le 31 oct. 05 à 02:18, fons adriaensen a écrit :
>
> >A big advantage of using futexes in shared memory would be
> >that they don't have to be recreated each time the callback
> >order changes - unlike the pipes, they are not bound to a
> >process, and to modify the 'trigger chain' all you need is
> >to change some pointers.
> >
> 
> In Jackdmp we have tested 2 system for inter-process synchronization:  
> fifo (the way it was done in regular jackd) and POSIX named semaphore  
> (which are built on top of futex on recent system version)
> 
> In both cases, each already running client get access to the  
> synchronization primitive (fifo or POSIX named sema) defined by a new  
> coming client. The synchronization primitive is "opened" once when a  
> new client appears and is "closed" when the client quits. The  
> synchronization primitive that has to be signaled then depends of the  
> graph topology.

I must be missing something essential here. Access to named things 
that have to be opened is normally by a file descriptor, and file
descriptors are bound a process. How then can you give *all* clients
access to the named pipe or sema created for a new client ?

-- 
FA

 



More information about the Linux-audio-dev mailing list