]> Zhao Yanbai Git Server - minix.git/commit
Time accounting based on TSC
authorTomas Hruby <tom@minix3.org>
Wed, 10 Feb 2010 15:36:54 +0000 (15:36 +0000)
committerTomas Hruby <tom@minix3.org>
Wed, 10 Feb 2010 15:36:54 +0000 (15:36 +0000)
commit1b56fdb33cb7b0289aa7f54bb0d0a3b919cee072
treec61637fa3986d319d480573645a7a3d40ab5ef33
parentf08f2bd88c09f087a8ef19a827ce9e4f421d2eb8
Time accounting based on TSC

- as thre are still KERNEL and IDLE entries, time accounting for
  kernel and idle time works the same as for any other process

- everytime we stop accounting for the currently running process,
  kernel or idle, we read the TSC counter and increment the p_cycles
  entry.

- the process cycles inherently include some of the kernel cycles as
  we can stop accounting for the process only after we save its
  context and we start accounting just before we restore its context

- this assumes that the system does not scale the CPU frequency which
  will be true for ... long time ;-)
14 files changed:
kernel/arch/i386/apic_asm.S
kernel/arch/i386/clock.c
kernel/arch/i386/mpx386.S
kernel/arch/i386/system.c
kernel/clock.c
kernel/const.h
kernel/glo.h
kernel/interrupt.c
kernel/kernel.h
kernel/main.c
kernel/proc.c
kernel/proc.h
kernel/proto.h
kernel/system/do_getinfo.c