On 07/30/2015 07:26 AM, Michael Haberler wrote: > we're happily using RT threads using the Xenomai 2 thread API > > is it possible _using this API_ to create/mutate/relax such a thread > intentionally into a Posix thread but retaining the API usage?
It is possible to run them as low priority Xenomai threads, assigning them to the SCHED_OTHER class. The native API is retained for those threads, but their main runtime mode is relaxed, i.e. the co-kernel makes sure to switch them back to relaxed mode automatically before returning to user-space from a syscall which required a switch to primary mode. > > I can do any conditional API usage through thread parameters to avoid calls > which will not work for a relaxed thread, but I would like to retain the API > (I guess I could switch to the posix skin but I would like to avoid another > learning curve/test cycle for now) > > going forward/Xenomai 3: what would be your recommendation to address the > issue long-term? > Xenomai 3 in dual kernel mode extends the feature above, with the SCHED_WEAK class: http://xenomai.org/migrating-from-xenomai-2-x-to-3-x/#Scheduling > > > > (may sound like whacky question but great use case around here - turns out > many jobs do not need RT capabilities but it would be handy to retain the > flow) > If I interpreted your question properly, it's definitely a legitimate use case; sometimes the non-rt stuff may want to interact with the rt world using Xenomai APIs, but without getting in the way priority-wise. -- Philippe. _______________________________________________ Xenomai mailing list [email protected] http://xenomai.org/mailman/listinfo/xenomai
