jack context switches (Was: Re: [linux-audio-dev] another kernel patch?)

Paul Davis paul at linuxaudiosystems.com
Tue Dec 2 12:02:54 UTC 2003

>> The actual JACK process cycle works like this:
>>   jd->A->B->jd
>How can B start immediately after A without ANY
>jackd running in between?
>(I am talking about external clients)

yes, its cute eh?

to expand slightly on steve's answer: the clients have opened a pair
of FIFO's that connect them into the graph. they block on read() of
one of them and when they are done with process(), they write() to the
other. they don't know who they are waking up (could be jackd, could
be another client).

of all the ideas in JACK, this is perhaps the "cleverest" :)


More information about the Linux-audio-dev mailing list