Automatic Nice'ing of Processes

Rob Warnock rpw3 at redwood.UUCP
Sat Dec 22 13:18:19 AEST 1984


+---------------
| Bingo. I've started one of these beasts already, having been inspired by
| the VMS "thumper" that does just that. I think the correct name for the
| thing is "external scheduler", and consider it as a replacement for the
| long-term half of the Unix scheduler (on the off chance that Unix actually
| has a long-term scheduler).
| 
| Should you have source (lucky devils), this approach is silly. You would
| be better off rewriting the Unix scheduler. The daemon could be used to
| testbed different versions of the scheduler under load, though.
| 	<mike
+---------------

Why is it "silly" to have an external scheduler? The separation of algorithms
into "policy" and "mechanism" components is often done (e.g. "Hydra/C.mmp"),
and in fact many systems have done that for the scheduler. The kernel-resident
part is sometimes called a micro-scheduler, and the part that runs as a
(high-priority!) user process is a macro-scheduler. The macro-scheduler
sets policy, and the micro-scheduler implements it via kernel mechanisms.

Having the macro-scheduler in user mode makes it MUCH easier to interact
with the environment (like operators, even). In certain situations, you
may want to lock it in main memory (non-swapped), but all modern operating
systems allow that, don't they? ;-}


Rob Warnock
Systems Architecture Consultant

UUCP:	{ihnp4,ucbvax!dual}!fortune!redwood!rpw3
DDD:	(415)572-2607
USPS:	510 Trinidad Ln, Foster City, CA  94404



More information about the Comp.unix.wizards mailing list