TIMES(2)

NAME
times - get process times

SYNOPSIS
#include <sys/types.h>
#include <sys/times.h>
#include <time.h>
int times(struct tms *buffer)

DESCRIPTION
Times returns time-accounting information for the current process and for the terminated child processes of the current process. All times are in system clock ticks.

This is the structure returned by times:

    struct tms {
    	clock_t	tms_utime;	/* user time for this process */
    	clock_t	tms_stime;	/* system time for this process */
    	clock_t	tms_cutime;	/* children's user time */
    	clock_t	tms_cstime;	/* children's system time */
    };

The user time is the number of clock ticks used by a process on its own computations. The system time is the number of clock ticks spent inside the kernel on behalf of a process. This does not include time spent waiting for I/O to happen, only actual CPU instruction times.

The children times are the sum of the children's process times and their children's times.

RETURN
Times returns the number of system clock ticks since boot time on success, otherwise -1 with the error code stored into the global variable errno. Since -1 is also a valid return value upon success, one should clear errno before calling this function, and if -1 is returned, check its value again afterwards.

ERRORS
The following error code may be set in errno:

[EFAULT]
    The address specified by the buffer parameter is not in a valid part of the process address space.

SEE ALSO
time(1), wait(2), time(2).