[Xenomai] Posix replacement for rt_task_suspend(), rt_task_resume() and rt_task_delete()

Philippe Gerum rpm at xenomai.org
Mon Oct 2 12:11:29 CEST 2017

On 10/02/2017 03:38 AM, Giulio Moro wrote:
> Hello,
> I am porting a Xenomai 3 application from Alchemy to the Posix API*. Under Alchemy, I was using rt_task_suspend(NULL) to suspend a task and rt_task_resume(&task) to resume the task from a separate thread. What is the best / recommended way of porting this to the Posix API?
> Are there any drop-in replacements? Otherwise, I was thinking of using a condition variable.
> What about rt_task_delete() ? The Xenomai documentation does not list pthread_cancel (though I see it is being used by copperplate in the rt_task_delete() call). Is it ok to use pthread_cancel() on a xenomai task?
> Thanks,
> Giulio
> * Posix is measurably faster on our architecture (TI am3358)

Expected with Xenomai 3. Alchemy is an API stacked on top of a mediation
layer called Copperplate, which eventually calls real-time POSIX
services. With Xenomai 3, POSIX services are at the core, and the core
exclusively provides POSIX services to user apps (unlike Xenomai 2 which
had each API implemented in kernel space, leading to maintenance problems).


More information about the Xenomai mailing list