Timers and timing, was: MySQL Performance 6.0rc1

Robert Watson rwatson at FreeBSD.org
Fri Oct 28 06:08:03 PDT 2005


On Fri, 28 Oct 2005, David Xu wrote:

> Poul-Henning Kamp wrote:
>> In message <4361FDBE.7000500 at freebsd.org>, David Xu writes:
>> 
>> the correct way to optimize this would be to add a time(2) systemcall 
>> which returns the value of the kernel global time_second.
>
> Can we make a page in kernel address space which is readable my user 
> code? put the variable in the page, I know read an integer is atomic-op, 
> needn't lock, so syscall is not needed.

This approach has a lot of merit, as we can also potentially export other 
information there (such as kernel preferences for system call mechanisms). 
On the other hand, a lower risk change might be to simply add a new CLOCK_ 
type for lower resolution, and have a timer synchronize a variable to the 
system clock once every 1/10 of a second.  This avoids having to muck with 
VM layout, etc.

Robert N M Watson


More information about the freebsd-current mailing list