Messages in this thread |  | | | Date | Mon, 28 Jul 1997 09:32:33 -0700 | | From | " ;The Doctor What" <> | | Subject | RE: [patch] QNX-style scheduling for Linux 2.0 |
| |
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
|  |