[Go to CFHT Home Page] Man Pages
Back to Software Index  BORDER=0Manpage Top Level
    times(2) manual page Table of Contents

Name

times - get process and child process times

Synopsis


#include <sys/times.h>
#include <limits.h>

clock_t times(struct tms *buffer);

MT-Level

Async-Signal-Safe

Description

times() fills the tms structure pointed to by buffer with time-accounting information. The tms structure, defined in <sys/times.h>, contains the following members:


    clock_t    tms_utime;
    clock_t    tms_stime;
    clock_t    tms_cutime;
    clock_t    tms_cstime;

This information comes from the calling process and each of its terminated child processes for which it has executed a wait routine. All times are reported in clock ticks. The specific value for a clock tick is defined by the variable CLK_TCK, found in the header <limits.h>.

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_utime and the tms_cutime of the child processes.

tms_cstime is the sum of the tms_stime and the tms_cstime of the child processes.

Return Values

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 value of -1 is returned and errno is set to indicate the error.

Errors

times() fails if:

EFAULT
buffer points to an illegal address.

See Also

time(1) , timex(1) , exec(2) , fork(2) , time(2) , wait(2) , waitid(2) , waitpid(2)


Table of Contents