How long can a Round-Robin thread run with AP scheduling?
First non-AP scheduling (i.e. classic Neutrino scheduling): A FIFO thread: • May be preempted any time by a higher priority thread. • If not preempted, and if there is no other thread at the same priority, a Round-Robin thread will run until it voluntarily gives up control, or forever. • If un-preempted, but if there is another thread at equal priority, a FIFO thread will run for 4 ticks (nominally 4ms) before being timesliced with the other thread. With APs scheduling, a Round-Robin thread: • May be preempted any time by a higher priority thread in the same partition. • if not preempted, and if there is no other thread of the same priority in that partition, a Round-Robin thread will run until it gives up control or it’s partition runs out of budget. • A ready-to-run Round-Robin thread, in a partition that is out of budget, may start running if it’s partition gets more budget on the next clock tick.(As the rotation of the window gives that partition available budget back.) • If not pr