proc->thread stage3: make time accounting threads based and rework it for
authorMatthew Dillon <dillon@dragonflybsd.org>
Mon, 23 Jun 2003 23:36:14 +0000 (23:36 +0000)
committerMatthew Dillon <dillon@dragonflybsd.org>
Mon, 23 Jun 2003 23:36:14 +0000 (23:36 +0000)
commitd16a883187f41538de97a838e220f14a1142ee04
tree01f02830e984b9db46b2727d5018d18a7ec2fd0a
parent1e550cf15c70012c2df4862e4f0d91b336e788f3
proc->thread stage3: make time accounting threads based and rework it for
performance.

Cleanup user/sys/interrupt time accounting.  Get rid of the microputime and
equivalent support code in mi_switch() (it was really a bad idea to put that
in the critical path IMHO).  Instead account for time statistically
from the statclock, which produce time accounting that is just as accurate
in the long haul.  Remove the u/s/iticks fields from the proc structure and
put a slightly different version in the thread structure, so time can be
accounted for both threads and processes.
19 files changed:
sys/i386/i386/exception.s
sys/i386/i386/genassym.c
sys/i386/i386/globals.s
sys/i386/i386/trap.c
sys/i386/include/globaldata.h
sys/kern/init_main.c
sys/kern/kern_clock.c
sys/kern/kern_exit.c
sys/kern/kern_resource.c
sys/kern/kern_subr.c
sys/kern/kern_synch.c
sys/platform/pc32/i386/exception.s
sys/platform/pc32/i386/genassym.c
sys/platform/pc32/i386/globals.s
sys/platform/pc32/i386/trap.c
sys/platform/pc32/include/globaldata.h
sys/platform/vkernel/i386/genassym.c
sys/sys/proc.h
sys/sys/thread.h