DESCRIPTION

The bintime() and getbintime() functions store the system time as a
structbintime at the addresses specified by bt. The microtime() and
getmicrotime() functions perform the same utility, but record the time as
a structtimeval instead. Similarly the nanotime() and getnanotime()
functions store the time as a structtimespec.
The bintime(), microtime(), and nanotime() functions always query the
timecounter to return the current time as precisely as possible. Whereas
getbintime(), getmicrotime(), and getnanotime() functions are
abstractions which return a less precise, but faster to obtain, time.
The intent of the getbintime(), getmicrotime(), and getnanotime()
functions is to enforce the user’s preference for timer accuracy versus
execution time.