Messages in this thread | | | Date | Wed, 25 Jun 2008 08:32:50 +0200 | From | "Bart Van Assche" <> | Subject | Re: When did High-Resolution Timers hit mainline? |
| |
On Wed, Jun 25, 2008 at 6:08 AM, Michael Kerrisk <mtk.manpages@googlemail.com> wrote: > The Software Clock, HZ, and Jiffies > The accuracy of various system calls that set timeouts, (e.g., > select(2), sigtimedwait(2)) and measure CPU time (e.g., > getrusage(2)) is limited by the resolution of the software > clock, a clock maintained by the kernel which measures time in > jiffies. The size of a jiffy is determined by the value of the > kernel constant HZ.
Maybe "size of a jiffy" should be replaced by "duration of a jiffy" ?
An explanation of the impact of CONFIG_NO_HZ is missing.
You also missed the fact that since the 2.6 kernel there are two constants related to time resolution, namely HZ and USER_HZ. HZ is the frequency of the timer interrupt, and 1/USER_HZ is the time resolution for system calls that use jiffies as time unit (e.g. the five values returned by the times() system call). The time resolution of e.g. the select() and poll() system calls is 1.0/HZ since the timeout for these system calls is specified as a struct timeval or struct timespec.
Bart.
| |