.TH TIME 2 .SH NAME time, nsec \- time in seconds and nanoseconds since epoch .SH SYNOPSIS .B #include .br .B #include .PP .nf .B long time(long *tp) .PP .B vlong nsec(void) .SH DESCRIPTION Both .I time and .I nsec return the time since the epoch 00:00:00 GMT, Jan. 1, 1970. The return value of the former is in seconds and the latter in nanoseconds. For .IR time , if .I tp is not zero then .BI * tp is also set to the answer. .PP Times from .I time should be stored in and treated as .BR ulong s; this extends the range of valid times into the year 2106. .PP .I Time simply calls .I nsec and returns the value divided by 1000000000. .PP .I Nsec is a system call. Previous implementations read .BR /dev/bintime , opening that file when first called, and maintaining a static file descriptor; however, the maintenance of file descriptors in the face of process forks is overly complex and prone to error. .SH SOURCE .B /sys/src/libc/9sys/time.c .br .B /sys/src/libc/9syscall .SH SEE ALSO .IR cputime (2), .IR cons (3) .SH DIAGNOSTICS Sets .IR errstr .