<font face="Default Sans Serif,Verdana,Arial,Helvetica,sans-serif" size="2"><div style=""><span style="font-family: Verdana, Arial, Helvetica, sans-serif;">Description of the issue£º</span></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">I created three tasks, Task A, Task B and Task C. All tasks are based on RTEMS_TIMESLICE | RTEMS_PREEMPT , Task A has a higher priority than other tasks, Task B has the same priority as Task C.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">Tasks B and C loop forever, Task A sleeps 1 TICK on an endless loop. When I test, I find that task C is not scheduled.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;"><br></span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">Hope result:</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">I was expecting tasks A, B, and C to be scheduled. Task A can preempt task B and C. Tasks B and C can switch to each other when the time slice runs out.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;"><br></span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">Actual result:</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">When task A preempts task B and run out its timeslice, then switch to task B, task B's timeslice will reset to _Watchdog_Ticks_per_timeslice.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">While the task B is still running, Task A preempts task B again. Task A will pick up task B as heir task and reset task B's timeslice.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">This will cause task C never be scheduled.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;"><br></span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">My doubts £º</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">1. Why must reset the time slice every time when switch tasks.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">2. Why the scheduler only pick up Task B as heir task?</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">3. Can I comment the following code in _Thread_Do_dispatch()</span></font><span style="font-family: Verdana, Arial, Helvetica, sans-serif;">? Is there any problem if I change it this way?</span></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">    if ( heir->budget_algorithm == THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE )</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">        heir->cpu_time_budget = rtems_configuration_get_ticks_per_timeslice();</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">4. I found that only in POSIX can I use the algorithm THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE , RTEMS classics api only can use THREAD_CPU_BUDGET_ALGORITHM_RESET_TIMESLICE.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">   Can I use THREAD_CPU_BUDGET_ALGORITHM_EXHAUST_TIMESLICE in RTEMS classics api.nd rtems_task_mode.</span></font></div><div style=""><font face="Verdana, Arial, Helvetica, sans-serif"><span style="font-size: 12.8px;">5. Can anyone give some suggestions to solve the problem? thanks!</span></font></div><div></div></font>