Paul Ianna wrote:
> Hi All,
> 
> I have read (at least some of) the Xenomai docs and am a little
> unclear on the real distinction between primary and secondary mode.
> 
> I have seen in the native API that I can receive a signal if a task
> has "migrated to the Linux domain".
> 
> Does secondary mode mean that I am no longer a real-time task?

As long as your task is in this mode, Linux can do with it again what it
wants to. This phase ends once you call a Xenomai service that requires
primary mode or you enforce a mode switch (rt_task_set_mode, but for
most applications designs not required).

> 
> How do I avoid dropping from primary mode to secondary mode?

Avoid executing Linux system services (file I/O, networking, printf,
etc.) in critical code paths, avoid sending Linux signal to the task.
But if you write a hard real-time application, you are likely doing a
careful review of what your time-critical code finally does anyway ;).
If not (don't tell it anyone...), the SIGXCPU signal raised on mode
switches can guide you finding fishy parts.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to