The binuptime and getbinuptime functions store the time elapsed since boot as a
.Vt "struct bintime" at the address specified by bt. The microuptime and getmicrouptime functions perform the same utility, but record the elapsed time as a
.Vt "struct timeval" instead. Similarly the nanouptime and getnanouptime functions store the elapsed time as a
.Vt "struct timespec" .
The binuptime, microuptime, and nanouptime functions always query the timecounter to return the current time as precisely as possible. Whereas getbinuptime, getmicrouptime, and getnanouptime functions are abstractions which return a less precise, but faster to obtain, time.
The intent of the getbinuptime, getmicrouptime, and getnanouptime functions is to enforce the users preference for timer accuracy versus execution time.
bintime(9), getbintime(9), getmicrotime(9), getnanotime(9), microtime(9), nanotime(9), tvtohz(9)