Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

getrusage(2) [osf1 man page]

getrusage(2)							System Calls Manual						      getrusage(2)

NAME
getrusage, vtimes - Gets information about resource utilization LIBRARY
Berkeley Compatibility Library (libbsd.a): vtimes() only SYNOPSIS
#include <sys/resource.h> int getrusage( int who, struct rusage *r_usage); [Tru64 UNIX] The following function declaration does not conform to current standards and is supported only for backward compatibility: #include <sys/vtimes.h> vtimes( struct vtimes *par_vm, struct vtimes ch_vm); [Tru64 UNIX] Application developers using the getrusage() function may want to specify an #include statement for <sys/time.h> before the one for <sys/resource.h> if programs are being developed for multiple platforms. The additional #include statement is not required on Tru64 UNIX systems or by ISO or X/Open standards, but may be required on other vendors' systems that conform to these standards. STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: getrusage(): XSH5.0 Refer to the standards(5) reference page for more information about industry standards and associated tags. PARAMETERS
Specifies one of the following: Retrieve information about resources used by the current process. Retrieve information about resources used by terminated and waited for child processes of the current process. Points to a buffer that will be filled in as described in the <sys/resource.h>. DESCRIPTION
The getrusage() function returns information describing the resources used by the current process or its terminated or waited for child processes. If the child process is never waited for, for example if the parent has set SA_NOCLDWAIT or has SET SIGCHLD to SIG_IGN, the resource information for that child process is discarded. NOTES
The numbers the ru_inblock and ru_outblock fields of the rusage structure account only for real I/O; data supplied by the caching mechanism is charged only to the first process to read or write the data. [Tru64 UNIX] The vtimes() function returns accounting information for the current process and for the terminated child processes of the current process. Either par_vm or ch_vm or both may be zero, in which case only the information for the pointers which are nonzero are returned. After the call, each buffer contains information as defined by the contents of the sys/vtimes.h include file. RETURN VALUES
Upon successful completion, the getrusage(), function returns 0 (zero). Otherwise, the function returns -1 and sets errno to indicate the error. ERRORS
The getrusage() function sets errno to the specified values for the following conditions: The who parameter is not a valid value. [Tru64 UNIX] The address specified for r_usage is not valid. RELATED INFORMATION
Functions: wait(2) Routines: gettimer(3), time(3), times(3) Standards: standards(5) delim off getrusage(2)

Check Out this Related Man Page

vtimes(3)						     Library Functions Manual							 vtimes(3)

Name
       vtimes - get information about resource utilization

Syntax
       vtimes(par_vm, ch_vm)
       struct vtimes *par_vm, *ch_vm;

Description
       This facility has been superseded by

       The  routine  returns accounting information for the current process and for the terminated child processes of the current process.  Either
       par_vm or ch_vm or both may be 0, in which case only the information for the pointers which are non-zero is returned.

       After the call, each buffer contains information as defined by the contents of the include file /usr/include/sys/vtimes.h:
       struct vtimes {
	    int     vm_utime;		    /* user time (*HZ) */
	    int  vm_stime;	/* system time (*HZ) */
	    /* divide next two by utime+stime to get averages */
	    unsigned vm_idsrss;      /* integral of d+s rss */
	    unsigned vm_ixrss;	     /* integral of text rss */
	    int  vm_maxrss;	     /* maximum rss */
	    int  vm_majflt;	     /* major page faults */
	    int  vm_minflt;	     /* minor page faults */
	    int  vm_nswap;	/* number of swaps */
	    int  vm_inblk;	/* block reads */
	    int  vm_oublk;	/* block writes */
       };
       The vm_utime and vm_stime fields give the user and system time respectively in 60ths of a second (or 50ths if that is the frequency of wall
       current	in your locality.) The vm_idrss and vm_ixrss measure memory usage.  They are computed by integrating the number of memory pages in
       use each over cpu time.	They are reported as though computed discretely, adding the current memory usage (in 512 byte pages) each time the
       clock  ticks.   If  a  process  used 5 core pages over 1 cpu-second for its data and stack, then vm_idsrss would have the value 5*60, where
       vm_utime+vm_stime would be the 60. The vm_idsrss integrates data and stack segment usage, while vm_ixrss  integrates  text  segment  usage.
       The vm_maxrss reports the maximum instantaneous sum of the text+data+stack core-resident page count.

       The  vm_majflt  field  gives the number of page faults which resulted in disk activity; the vm_minflt field gives the number of page faults
       incurred in simulation of reference bits; vm_nswap is the number of swaps which occurred.  The number of file  system  input/output  events
       are  reported  in vm_inblk and vm_oublk These numbers account only for real I/O.  Data supplied by the caching mechanism is charged only to
       the first process to read or write the data.

See Also
       wait3(2), time(3)

																	 vtimes(3)

Featured Tech Videos