I decided to take this into its own thread so I didn't pull the other off-topic any further:
ryjobil Thanks for clearing my misunderstanding. Does code run from an AuxiliaryTask execute on DSP >>>>resources,
The code all executes on the CPU. There is not such a thing as dedicated "DSP resources".
Yes, I am aware of this. By "DSP resources" I'm referring to audio processing priority execution. Another way to ask this question is whether the AuxiliaryTask has high enough priority to reduce CPU time available to the audio thread.
ryjobil , but only as a lower priority task that does not block render()?
so it runs on the same "resources" (CPU) as the audio thread, but at a lower priority (as long as the priority you >>set is < BELA_AUDIO_PRIORITY).
...And I think this answers the real question.
ryjobil If this is the case, then what code structure would need to be used for background operations done >>>>in Kernal mode?
A Xenomai task can switch between primary ("Xenomai") and secondary ("Linux") mode as needed. This is mostly fine for most applications, though if sometimes you just want to use just a regular thread, just create one withpthread.
I'm still not totally clear on this since I'm not certain what things trigger a switch from primary to secondary and how this works with an AuxiliaryTask . I have seen reference to CPU load increasing if these context switches happen too frequently and there are things (such as making a call to malloc(), file or network I/O in the RT thread) that can cause this sort of switch.
If I use an AuxiliaryTask to do file I/O or memory allocation am I going to induce these context switches or can I expect the AuxiliaryTask is running in kernel mode? That is really the background concern with my questioning.
Reading between the lines from your response above, I would guess the AuxiliaryTask does not control these switches in any way, and Xenomai just does what it needs to do to service each function call. Maybe a busy file I/O process would be such a situation in which I would want to kick off a process in a pthread?