TIMES(2) SysV TIMES(2)
NAME
times - get process and child process times
SYNOPSIS
#include <sys/types.h>
#include <sys/times.h>
long times (buffer)
struct tms *buffer;
DESCRIPTION
times fills the structure pointed to by buffer with time-accounting
information. The following are the contents of this structure:
struct tms {
clock_t tms_utime; /* user time */
clock_t tms_stime; /* system time */
clock_t tms_cutime; /* user time, children */
clock_t tms_cstime; /* system time, children */
};
This information comes from the calling process and each of its
terminated child processes for which it has executed a wait. All times
are reported in clock ticks. Clock ticks are a system-dependent
parameter. The specific value for an implementation is defined by the
variable HZ, found in <param.h>.
The fields of the tms structure have the following meanings:
tms_utime is the CPU time used while executing instructions in the
user space of the calling process.
tms_stime is the CPU time used by the system on behalf of the calling
process.
tms_cutime is the sum of the tms_utimes and tms_cutimes of the child
processes.
tms_cstime is the sum of the tms_stimes and tms_cstimes of the child
processes.
ERRORS
times will fail if the following is true:
[EFAULT] buffer points to an illegal address.
SEE ALSO
exec(2), fork(2), time(2), wait(2).
DIAGNOSTICS
Upon successful completion, times returns the elapsed real time, in clock
ticks, from an arbitrary point in the past (for example, system start-up
time). This point does not change from one invocation of times to
another. If times fails, a -1 is returned and errno is set to indicate
the error.