ref: c0a7fbea1f61b1d77a09d612b85c74fd6c673b7c
dir: /sys/man/9/seconds/
.TH SECONDS 9 .SH NAME seconds, ticks, fastticks, HZ, MS2HZ, MS2TK, TK2MS, TK2SEC \- kernel times and time conversions .SH SYNOPSIS .ta \w'\fL#define 'u .B long seconds(void) .PP .B vlong fastticks(uvlong *hz) .PP .EX #define HZ ... #define MS2HZ (1000/HZ) #define TK2SEC(t) ((t)/HZ) #define TK2MS(t) ((t)*(1000/HZ)) .EE .SH DESCRIPTION .I Seconds returns the system's idea of the current time as the number of seconds since the start of the epoch (00:00:00 GMT, January 1, 1970). .PP The .B ticks field of the .B Mach structure returns the number of system-dependent clock ticks on the given processor since system boot. On a multiprocessor, .B MACHP(0) is sometimes used to provide a reference time, since the tick value might vary slightly across processors. .PP .I Fastticks returns the number of ticks since boot as measured by the fastest clock provided by the platform. The frequency of the clock, in ticks per second, is returned through .IR hz , unless it is nil. .PP The system clock frequencies are platform-dependent. Several symbolic constants and macro functions are defined by the file .B mem.h to convert between different time units: .TF TK2SEC(t) .PD .TP .B HZ The number of clock ticks per second. .TP .B MS2HZ Milliseconds per clock tick. .TP .BI TK2SEC( t ) Convert .I t clock ticks to seconds (truncating not rounding). .TP .BI TK2MS( t ) Convert .I t clock ticks to milliseconds. .SH SOURCE .B /sys/src/9/*/mem.h .br .B /sys/src/9/*/clock.c .br .B /sys/src/9/*/devarch.c .br .B /sys/src/9/*/timer.c .br .B /sys/src/9/port/tod.c