has been discussed on these pages a number of times.
In short: rather than using priorities, a deadline scheduler characterizes
each process with a maximum CPU time required and the deadline by which it
must receive that CPU time. A properly-written deadline scheduler can
ensure that every process meets its deadlines while refusing to take work
that would cause any deadlines to be missed. Patches adding a deadline
scheduler to Linux have existed for a few years, but their progress toward
the mainline has been slow; recently that progress has been very
slow since the principal developer involved has moved on to other projects.
The deadline scheduler patches now have a new developer in the form of Juri
Lelli; Juri has posted a new version of the
patches to restart the discussion. The changes from the last time
around are mostly minor: review comments addressed and an improved
migration mechanism added. The plan is to continue to fill in the gaps
required to make the deadline scheduler production-worthy and, eventually,
to get it into the mainline. To that end, there is a new git repository,
an application designed to test deadline scheduling, and a new mailing list.
One assumes Juri would be most appreciative of testing and patches.
to post comments)