]> Zhao Yanbai Git Server - minix.git/commit
Busy idle loop when profiling
authorTomas Hruby <tom@minix3.org>
Thu, 23 Sep 2010 10:49:52 +0000 (10:49 +0000)
committerTomas Hruby <tom@minix3.org>
Thu, 23 Sep 2010 10:49:52 +0000 (10:49 +0000)
commitef92583c3a0f14c164f8017a8cff6c0e27a40dcf
treefd7041ed3948f4c210d403cc30dc9f18e27a29e3
parentd2b56f60dabcc8120a3d8c90a84d676e7d717e62
Busy idle loop when profiling

- the Intel architecture cycle counter (performance counter) does not
  count when the CPU is idle therefore we use busy loop instead of
  halting the cpu when there is nothing to schedule

- the downside is that handling interrupts may be accounted as idle
  time if a sample is taken before we get out of the nested trap and
  pick a new process
kernel/arch/i386/arch_clock.c
kernel/arch/i386/klib.S
kernel/cpulocals.h
kernel/proc.c
kernel/proto.h