[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
- Date: Fri, 03 Oct 2003 06:49:28 -0500
- From: joel.sherrill at OARcorp.com (Joel Sherrill)
- Subject: Timeslicing question
Kenneth Peters wrote:
> I am using rtems-4.5.0 with the erc32 BSP (slightly modified for my
> board). I have a situation where there is a task of priority 99 and
> two tasks of priority 100. Timeslicing and preemption are enabled.
> I have not completely traced what is happening, but it seems that
> whichever priority 100 task gets in the priority 100 ready chain first
> never gets timesliced out, since _Thread_Dispatch() after the priority
> 99 task keeps resetting the priority 100 task's cpu_time_budget, so
> _Thread_Reset_timeslice() never gets called to take the task off the
> front of the priority 100 ready chain.
Is the priority 100 thread actually set for preempt and timeslicing?
> Probably I am misunderstanding something, since this seems like a
> simple task situation that should work. Setting different priorities
> does not really accomplish what I need, and manual round-robin with
> rtems_task_wake_after() does not seem to work right either (though I
> expected that would at least get the tasks taking turns, it did not
> seem to work. I am still looking into that).
> Any suggestions?
> Ken Peters
> Ken.Peters at jpl.nasa.gov