HP 3000 Manuals

times [ MPE/iX Developer's Kit Reference Manual Volume I ] MPE/iX 5.0 Documentation


MPE/iX Developer's Kit Reference Manual Volume I

times 

Gets process times.

Syntax 

     #include <sys/times.h>
     clock_t (struct tms *buffer);

Parameters 

buffer     insert parameter info here

Return Values 

Upon successful completion, times() will return the elapsed real time, in
clock ticks, since and arbitrary point in the past (for example, system
start-up time).  This point does not change from one invocation of
times() within the process to another.  The return value may overflow the
possible range of type clock_t.  The times function fails, a value of
(clock_t)-1 is returned and errno is set to indicate the error.

Description 

The times() function will fill the structure pointed to by buffer with
time-accounting information.  The type clock_t and the tms structure are
defined in <sys/times.h>; the tms structure will contain at least the
following members:

   Member Type       Member Name                        Description 

---------------------------------------------------------------------------------------

clock_t           tms_utime         User CPU time.

clock_t           tms_stime         System CPU time.

clock_t           tms_cutime        User CPU time of terminated child processes.

clock_t           tms_cstime        System CPU time of terminated child processes.

All times are measured in terms of the number of clock ticks used.

The times of a terminated child process are included in the tms_cutime 
and tms_cstime elements of the parent when a wait() or waidpid() function
returns the process ID of this terminated child.  See 3.2.1.  If a child
process has not waited for its terminated children, their times will not
be included in its times.

The value tms_utime is the CPU time charged for the execution of user
instructions.

The value tms_stime is the CPU time charged for execution by the system
on behalf of the process.

The value tms_cstime is the sum of the tms_stimes and tms_cstimes fo the
child processes.

Implementation Considerations 

Because MPE/iX tracks the CPU time used by a process as a single total
value, and does not distinguidsh between "user" and "system" CPU time,
the information returned in the tms structure is based on estimated
percentages of the total CPU time.  The sum of the tms_utime and
tms_stime fields will still reflect the total CPU time of the process.
This is similar for the terminated child times calculation.

Errors 

If an error occurs, errno is set to one of the following values:

EFAULT            CAUSE           The system detected a NULL or bad pointer in
                                  attempting to use the buffer parameter.
                  ACTION          Make sure that the pointer is correctly initialized.

See Also 

exec(), fork(), sysconf(), time(), wait(), POSIX.1



MPE/iX 5.0 Documentation