Annotation of cci/usr/src/man/man2/getitimer.2, revision 1.1

1.1     ! root        1: .TH GETITIMER 2 "27 July 1983"
        !             2: .UC 4
        !             3: .SH NAME
        !             4: getitimer, setitimer \- get/set value of interval timer
        !             5: .SH SYNOPSIS
        !             6: .nf
        !             7: .ft B
        !             8: #include <sys/time.h>
        !             9: .PP
        !            10: .ft B
        !            11: #define ITIMER_REAL    0       /* real time intervals */
        !            12: #define ITIMER_VIRTUAL 1       /* virtual time intervals */
        !            13: #define ITIMER_PROF    2       /* user and system virtual time */
        !            14: .sp
        !            15: .ft B
        !            16: getitimer(which, value)
        !            17: int which;
        !            18: struct itimerval *value;
        !            19: .PP
        !            20: .ft B
        !            21: setitimer(which, value, ovalue)
        !            22: int which;
        !            23: struct itimerval *value, *ovalue;
        !            24: .fi
        !            25: .SH DESCRIPTION
        !            26: The system provides each process with three interval timers,
        !            27: defined in
        !            28: .RI < sys/time.h >.
        !            29: The
        !            30: .I getitimer
        !            31: call returns the current value for the timer specified in
        !            32: .IR which ,
        !            33: while the
        !            34: .I setitimer
        !            35: call sets the value of a timer (optionally returning the previous
        !            36: value of the timer).
        !            37: .PP
        !            38: A timer value is defined by the 
        !            39: .I itimerval
        !            40: structure:
        !            41: .PP
        !            42: .nf
        !            43: .RS
        !            44: .DT
        !            45: struct itimerval {
        !            46:        struct  timeval it_interval;    /* timer interval */
        !            47:        struct  timeval it_value;       /* current value */
        !            48: };
        !            49: .RE
        !            50: .fi
        !            51: .PP
        !            52: If
        !            53: .I it_value
        !            54: is non-zero, it indicates the time to the next timer expiration. 
        !            55: If
        !            56: .I it_interval
        !            57: is non-zero, it specifies a value to be used in reloading 
        !            58: .I it_value
        !            59: when the timer expires.
        !            60: Setting 
        !            61: .I it_value
        !            62: to 0 disables a timer.  Setting 
        !            63: .I it_interval
        !            64: to 0 causes a timer to be disabled after its next expiration (assuming
        !            65: .I it_value
        !            66: is non-zero).
        !            67: .PP
        !            68: Time values smaller than the resolution of the
        !            69: system clock are rounded up to this resolution
        !            70: .PP
        !            71: The ITIMER_REAL timer decrements in real time.  A SIGALRM signal is
        !            72: delivered when this timer expires.
        !            73: .PP
        !            74: The ITIMER_VIRTUAL timer decrements in process virtual time.
        !            75: It runs only when the process is executing.  A SIGVTALRM signal
        !            76: is delivered when it expires.
        !            77: .PP
        !            78: The ITIMER_PROF timer decrements both in process virtual time and
        !            79: when the system is running on behalf of the process.  It is designed
        !            80: to be used by interpreters in statistically profiling the execution
        !            81: of interpreted programs.
        !            82: Each time the ITIMER_PROF timer expires, the SIGPROF signal is
        !            83: delivered.  Because this signal may interrupt in-progress
        !            84: system calls, programs using this timer must be prepared to
        !            85: restart interrupted system calls.
        !            86: .SH NOTES
        !            87: Three macros for manipulating time values are defined in
        !            88: .RI < sys/time.h >.
        !            89: .I Timerclear
        !            90: sets a time value to zero,
        !            91: .I timerisset
        !            92: tests if a time value is non-zero, and
        !            93: .I timercmp
        !            94: compares two time values (beware that >= and <= do not
        !            95: work with this macro).
        !            96: .SH "RETURN VALUE
        !            97: If the calls succeed, a value of 0 is returned.  If an error occurs,
        !            98: the value \-1 is returned, and a more precise error code is placed
        !            99: in the global variable \fIerrno\fP.
        !           100: .SH "ERRORS
        !           101: The possible errors are:
        !           102: .TP 15
        !           103: [EFAULT]
        !           104: The \fIvalue\fP structure specified a bad address.
        !           105: .TP 15
        !           106: [EINVAL]
        !           107: A \fIvalue\fP structure specified a time was too large
        !           108: to be handled.
        !           109: .SH "SEE ALSO"
        !           110: sigvec(2), gettimeofday(2)

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.