RE: [patch] QNX-style scheduling for Linux 2.0

docwhat@gerf.org ;The Doctor What ("docwhat@gerf.org)
Mon, 28 Jul 1997 09:32:33 -0700


Just to share the various schedulers out there....

The TANDEM Guardian scheduler is also similar:
Priorities range from 0 to 299
200-299 are "system" priorities (only OS processes run this high:
disk processes, osimage, etc...)
0-199 are "userspace" priorities

A process gives up (ends) it's time slice if:
it blocks
- or -
it runs out of time. (I don't remember the slice duration...:(

Priority determines the order and how fast it gets a slice.

*NIFTY FEATURE*
If a process runs thru several slices *without blocking* then the
priority is decreased by one. This means that processes that loop tend
to go to priority of 0. This helps keep up "user responsiveness".
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
^^^^^

If you don't have a "special" program to assign priorities, then all
processes get either the default priority (130 or 150 I think) or it
can be assigned manually. (An example is $CMON).

I believe that there are multiple run queues, but I'm not sure.

Unfortunately, I've never seen the source code or read an "official"
spec. for the scheduler.

--
The Doctor What: Guru of the Gods           http://www.gerf.org/~docwhat/
docwhat@gerf.org                    (finger docwhat@gerf.org for PGP key)
PGPkey Fingerprint: EA 4C 8C FC 5C F0 14 78  9C 02 B9 A1 83 54 7C 8D