Loadable Scheduler in Freebsd

David Schultz das at FreeBSD.ORG
Fri Nov 5 13:26:45 PST 2004


On Thu, Nov 04, 2004, Devesh Shah wrote:
> Is there a loadable scheduler exist for freebsd 5.2.1 that I
> could use or any work in the pipeline to develope the
> infrastructure for freebsd? I believe, Linux has policy based
> loadable scheduler but could not find one for freebsd. I know,
> Freebsd provides 4bsd and ULE scheduer based on the option that
> one sets in kernel config file.

This was discussed before around the time ULE was first committed.
In short, it wouldn't be amazingly difficult to implement loadable
schedulers, but the feature isn't useful enough to justify the
added complexity of handing everything off from one scheduler to
another.  Realistically, how many times a day do you want to
change from one scheduling algorithm to another?

It would be more useful to write a scheduler that is able to cope
with multiple priority classes (e.g. RR realtime, priority, fair
share) for different sets of processes simultaneously, with a
configurable way to balance load between them.  (You could look at
Solaris' processor sets for ideas on how to do the partitioning,
although Solaris doesn't allow you to specify different scheduling
algorithms.)  Even this may be more complicated than what people
need, however.

Yet another interesting idea in this space is fine-grained
application control over thread scheduling for KSE.  See:
http://www.cs.berkeley.edu/~brewer/papers/capriccio-sosp-2003.pdf


More information about the freebsd-hackers mailing list