unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OSF1-V5.1-alpha)
Page:
Section:
Apropos / Subsearch:
optional field



getitimer(2)							 getitimer(2)



NAME

  getitimer, setitimer - Returns or sets the value of interval timers

SYNOPSIS

  #include <&lt;sys/time.h>&gt;

  int getitimer(
	  int which,
	  struct itimerval *value) ;


  int setitimer(
	  int which,
	  const	struct itimerval *value,
	  struct itimerval *ovalue) ;

  The following	definition of the setitimer() function does not	conform	to
  current standards and	is supported only for backward compatibility:

  int setitimer(
	  int which,
	  struct itimerval *value,
	  struct itimerval *ovalue) ;

STANDARDS

  Interfaces documented	on this	reference page conform to industry standards
  as follows:

  getitimer(), setitimer(): XSH4.2

  Refer	to the standards(5) reference page for more information	about indus-
  try standards	and associated tags.

PARAMETERS

  which	    Identifies the interval timer. This	parameter may be expressed as
	    one	of three symbolic constants: ITIMER_REAL, ITIMER_VIRTUAL, and
	    ITIMER_PROF.

  value	    Points to an itimerval structure whose members specify a timer
	    interval and the time left to the end of the interval.

  ovalue    Points to an itimerval structure whose members specify a current
	    timer interval and the time	left to	the end	of the interval.

DESCRIPTION

  The getitimer() function returns the current value for the timer specified
  by the which parameter in the	structure pointed to by	the value parameter.

  The setitimer() function sets	the timer specified by which to	the specified
  value	(returning the previous	value of the timer if ovalue is	nonzero).

  A timer value	is defined by the itimerval structure:
       struct itimerval	{
	       struct  timeval it_interval;
	       struct  timeval it_value;
       };

  If the it_value field	is nonzero, it indicates the time to the next timer
  expiration.  If the it_interval field	is nonzero, it specifies a value to
  be used in reloading it_value	when the timer expires.	 Setting it_value to
  0 (zero) disables a timer.  Setting it_interval to 0 causes a	timer to be
  disabled after its next expiration (assuming it_value	is nonzero).

  Time values smaller than the resolution of the system	clock are rounded up
  to this resolution.

  The system provides each process with	three interval timers, defined in the
  sys/time.h header file:

  ITIMER_REAL
	    Decrements in real time.  A	SIGALRM	signal is delivered when this
	    timer expires.

  ITIMER_VIRTUAL
	    Decrements in process virtual time.	 It runs only when the pro-
	    cess is executing.	A SIGVTALRM signal is delivered	when it
	    expires.

  ITIMER_PROF
	    Decrements both in process virtual time and	when the system	is
	    running on behalf of the process.  It is designed to be used by
	    interpreters in statistically profiling the	execution of inter-
	    preted programs.  Each time	the ITIMER_PROF	timer expires, the
	    SIGPROF signal is delivered.  Because this signal may interrupt
	    in-progress	system calls, programs using this timer	must be
	    prepared to	restart	interrupted system calls.

NOTES

  The following	information applies only to the	backward-compatible versions
  of the getitimer() and setitimer() functions.

  Three	macros for manipulating	time values are	defined	in the sys/time.h
  header file. The timerclear()	macro sets a time value	to zero, the timer-
  isset() macro	tests if a time	value is nonzero, and the timercmp() macro
  compares two time values.  Beware that the comparisons >&gt;= and	<&lt;= do not
  work with the	timercmp() macro.

RETURN VALUES

  Upon successful completion, the value	0 (zero) is returned.  Otherwise, -1
  is returned and errno	is set to indicate the error.

ERRORS

  The setitimer() function sets	errno to the specified values for the follow-
  ing conditions:

  [EFAULT]  [Tru64 UNIX]  The value parameter specified	a bad address.

  [EINVAL]  The	value parameter	specified a time that was too large to be
	    handled, or	was a negative time value, or the which	value is not
	    defined.

  The getitimer() function sets	errno to the specified values for the follow-
  ing conditions:

  [EFAULT]  [Tru64 UNIX]  The value parameter specified	a bad address.

  [EINVAL]  The	which value is not defined.

	    [Tru64 UNIX]  The value parameter specified	a time that was	too
	    large to be	handled.

RELATED	INFORMATION

  Functions: gettimeofday(2)

  Standards: standards(5)