The current system of measuring CPU used by a process/the system is crude (at best). Basically, if you get a timer tick when your application is running, then you get a whole timer tick's work of CPU added to your process's usage. That's actually just fine for most applications, but some applications need tight bounds and more accurate accounting. This patch addresses this concern. This patch adds a configuration option that causes the kernel to measure the CPU used by a process at microsecond resolution. This affects general CPU usage measurement, rusage, and virtual itimers. The patch is against 2.4.17. It touches some pretty fundamental data structures and ties in to all the exception (including interrupt and system call) handlers, so it's pretty invasive. It shouldn't slow things down when the patch is turned off, but it will slow down all exceptions when it is turned on. The patch currently works on PowerPC and x86 (although it won't work on earlier x86 processors due to lack of a high-resolution clock source). It has seen extensive testing (around 9 months of heavy usage) in the lab on an older kernel. I'm curious if this patch is interesting enough to work to include it in the mainstream kernel release. If so, I'll gladly work to get it in to shape to go into 2.5 or whatever. (I'll also gladly take comments on how to improve it :-). -Corey