Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 26 Oct 2001 14:24:07 -0700 (PDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Matthew Dillon <dillon@apollo.backplane.com>
Cc:        Bakul Shah <bakul@bitblocks.com>, Peter Wemm <peter@wemm.org>, arch@FreeBSD.ORG, Poul-Henning Kamp <phk@critter.freebsd.dk>
Subject:   Re: 64 bit times revisited..
Message-ID:  <XFMail.011026142407.jhb@FreeBSD.org>
In-Reply-To: <200110262113.f9QLDBJ38657@apollo.backplane.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On 26-Oct-01 Matthew Dillon wrote:
> 
>:
>:
>::> 
>::> If you look in sys/kern/kern_tc.c you can see how much extra
>::> gunk that results in, checking for overruns on the middle part and
>::> whats not.
>::> 
>::> There can be no doubt that the best timestamp representation is
>::> pure binary, originating at the second, and that is how my proposal
>::> is constructed:
>::> 
>::> <-- 32bit --><-- 32bit --> . <-- 32bit --><-- 32bit -->
>::>       1            2               3            4
>::
>::IOW, a fixed-point number.  This is definitely the optimal solution
>::presented
>::so far for the in-kernel time keeping, IMO.
> 
>    And I will also note that trying to represent both seconds and sub-seconds
>    in a single fixed point integer is a real bad idea.  It makes life
>    unnecessarily difficult for the 95% of the code that only needs the
>    seconds portion.  Any fractional representation should be a SEPARATE 
>    field.

Err it is a separate field.  You have a 128-bit counter.  The high 64-bits are
the seconds portion.  You just shift to get the seconds.  This is not hard.
Computers have been good at doing shift right's for quite some time now.

-- 

John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.011026142407.jhb>