The user application code is woken up by the interrupt
from the audio
interface, not from a timer firing - in addition to getting data from
the card and storing it in memory, the interrupt handler wakes up any
processes that are waiting on the audio data. So HZ is irrelevant.
SCHED_FIFO is needed because otherwise, if there are multiple runnable
processes when the audio interrupt fires, the kernel could decide to run
a different process. With SCHED_FIFO it must run the audio process.
Ah, interesting. Thanks.
I feel like I should have known that. I'm going to go read up on audio
drivers now..
Steve