Update the userland scheduler. Fix scheduler interactions which were
authorMatthew Dillon <dillon@dragonflybsd.org>
Sat, 24 Jul 2004 20:21:35 +0000 (20:21 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Sat, 24 Jul 2004 20:21:35 +0000 (20:21 +0000)
commit8ec60c3fa420ec5327586ddcf676993aae0e857a
tree532b972537672b572ba07ec97099501a8115da8e
parent324cfdeeb506cd3098bd1179b27553435db6d757
Update the userland scheduler.  Fix scheduler interactions which were
previously resulting in the wrong process sometimes getting a full 1/10
second slice, which under heavy load resulted in serious glitching.
Introduce a new dynamic 'p_interactive' heuristic and allow it to effect
priority +/- by a few nice levels.

With this patch batch operations such as buildworlds, setiathome should not
interfere with X / interactive operations as much as they did before.

Note that we are talking about the the userland scheduler here, not the
LWKT scheduler.  Also note that the userland scheduler needs a complete
rewrite.
20 files changed:
sys/i386/i386/machdep.c
sys/i386/i386/trap.c
sys/i386/isa/intr_machdep.c
sys/kern/imgact_aout.c
sys/kern/imgact_elf.c
sys/kern/init_main.c
sys/kern/kern_fork.c
sys/kern/kern_proc.c
sys/kern/kern_switch.c
sys/kern/kern_synch.c
sys/kern/lwkt_msgport.c
sys/kern/lwkt_thread.c
sys/platform/pc32/i386/machdep.c
sys/platform/pc32/i386/trap.c
sys/platform/pc32/isa/intr_machdep.c
sys/sys/param.h
sys/sys/proc.h
sys/sys/sysent.h
sys/sys/thread.h
sys/vm/vm_glue.c