NAME

     getpriority, setpriority - get/set program scheduling prior-
     ity


SYNOPSIS

     #include <sys/time.h>
     #include <sys/resource.h>

     int getpriority(int which, int who));
     int setpriority(int which, int who, int prio


DESCRIPTION

     The scheduling priority of the process,  process  group,  or
     user,  as  indicated  by  which and who is obtained with the
     getpriority call and set with the setpriority  call.   Which
     is  one of PRIO_PROCESS, PRIO_PGRP, or PRIO_USER, and who is
     interpreted relative to  which  (a  process  identifier  for
     PRIO_PROCESS,  process group identifier for PRIO_PGRP, and a
     user ID for PRIO_USER).  A zero value  of  who  denotes  the
     current process, process group, or user.  Prio is a value in
     the range -20 to 20.   The  default  priority  is  0;  lower
     priorities cause more favorable scheduling.

     The getpriority call returns the  highest  priority  (lowest
     numerical  value) enjoyed by any of the specified processes.
     The setpriority call sets  the  priorities  of  all  of  the
     specified  processes  to  the  specified  value.   Only  the
     super-user may lower priorities.


RETURN VALUES

     Since getpriority can legitimately return the value  -1,  it
     is  necessary  to clear the external variable errno prior to
     the call, then check it afterwards to determine if a  -1  is
     an  error  or  a  legitimate  value.   The  setpriority call
     returns 0 if there is no error, or -1 if there is.


ERRORS

     ESRCH   No process was  located  using  the  which  and  who
             values specified.

     EINVAL  Which was not one  of  PRIO_PROCESS,  PRIO_PGRP,  or
             PRIO_USER.

     In addition to the errors indicated above, setpriority  will
     fail if:

     EPERM
          A process was located, but neither  its  effective  nor
          real  user  ID  matched  the  effective  user ID of the
          caller.

     EACCES
          A non super-user attempted to lower a process priority.


CONFORMING TO

     SVr4,  4.4BSD  (these  function  calls  first  appeared   in
     4.2BSD).


SEE ALSO

     nice(1), fork(2), renice(8)