top | item 19646642

(no title)

coreytabaka | 6 years ago

It does imply that. Multiple concurrent scheduling algorithms is nothing new, Linux and MacOS both support per-thread algorithm selection.

discuss

order

VanillaCafe|6 years ago

What does the super scheduler that coordinates the two schedulers approximately look like?

the8472|6 years ago

RT tasks get prioritized over normal ones but only up to a configurable fraction of CPU time slices.

If you need even more guarantees than that another option is to pin tasks to a set of CPU cores to isolate workloads from each other. The kernel can also be told to not use certain cores for interrupt handling or kernel-internal tasks. So with some effort it's possible to almost entirely dedicate a core to a single thread.

coreytabaka|6 years ago

A simple hierarchy: when there is deadline work to do that work takes precedence, fair work gets the rest of the time. This is effective because deadline work has bounded execution time, whereas fair work is elastic and can adjust to use the available bandwidth.