Re: Maximum frequency of re-scheduling (minimum time quantum ) questio n

From: peterc
Date: Mon Jul 12 2004 - 19:24:47 EST


F>>>>> "Nick" == Nick Piggin <nickpiggin@xxxxxxxxxxxx> writes:

Nick> However well tested your scheduler might be, it needs several
Nick> orders of magnitude more testing ;) Maybe the best we can hope
Nick> for is compile time selectable alternatives.


Well, Solaris and other SVr4-based systems have run-time selectable
schedulers -- on a per-process basis. (Of course, it only makes sense
to run schedulers that coexist nicely at the same time). These
operating systems have the notion of a per-process scheduling class,
that is essentially some private data, and a vector of functions to be
called at particular times: when a thread is created, when something
goes to sleep or wakes up, at timeslice expiration, etc. The
dispatcher then does queue management only, so there's a nice
separation of function.

By separating priority bands for each scheduler, you could have many
different schedulers cooperating simultaneously. And if you don't
like the SCHED_OTHER scheduler you could replace it. With care, this
could be done retrospectively to running processes.

We could perhaps think of doing this for the 2.7 timeframe. I'm
cerrtainly interested, to allow easier experimentation with Gang and
other NUMA schedulers.

--
Dr Peter Chubb http://www.gelato.unsw.edu.au peterc AT gelato.unsw.edu.au
The technical we do immediately, the political takes *forever*
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/