Roger on the RR/FIFO scheduling question. Regarding Linux starvation, it looks like pthread_setschedparam_ex can be used on a particular Linux thread to avoid starvation, however I'm more concerned about the Linux kernel itself. In the example below, I may want the kernel to have some time to service interrupts even if an RT task is behaving badly. How could I achieve this?
Thanks again for the fast and helpful responses! - Eric On Fri, Mar 25, 2011 at 4:21 AM, Philippe Gerum <[email protected]> wrote: > On Thu, 2011-03-24 at 19:47 -0400, Eric Eric wrote: >> Hello, I've been reading through some of the documentation and have a >> few questions regarding scheduling: >> >> - API docs say that rt_task_set_mode can allow a task to undergo >> round-robin scheduling. This seems to imply that we can have an >> environment of mixed round-robin and FIFO task scheduling. Is this >> correct? If so, what is the scheduling relationship between tasks >> running in FIFO and RR modes? > > RR are FIFO threads within the same priority group. > >> >> - I am concerned about Linux starvation. For example, suppose a >> misbehaving RT task spins and burns CPU indefinitely (watchdog >> notwithstanding). I would still like to preempt this task and allow >> Linux to run for up to some maximum time (say up to 30mS every 200mS). >> So, if using RR scheduling, is there a way to use rt_task_slice to >> allocate time to Linux? Is there a Linux shadow thread that I can >> allocate time to? > > Xenomai implements sporadic server scheduling. See SCHED_SPORADIC, > usable with int pthread_setschedparam_ex(). > >> >> Thank you. >> >> - Eric >> >> _______________________________________________ >> Xenomai-help mailing list >> [email protected] >> https://mail.gna.org/listinfo/xenomai-help > > -- > Philippe. > > > _______________________________________________ Xenomai-help mailing list [email protected] https://mail.gna.org/listinfo/xenomai-help
