76 lines
1.5 KiB
Text
76 lines
1.5 KiB
Text
|
.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
|