Provided by: manpages-es_1.55-10_all bug

NOMBRE

       getpriority, setpriority - obtiene/asigna la prioridad de planificacion
       de un programa

SINOPSIS

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

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

DESCRIPCI'ON

       La prioridad de planificacion del proceso, grupo de procesos o usuario,
       segun se indique en which y who se obtiene con la funcion getpriority y
       se asigna con setpriority.  Which puede ser PRIO_PROCESS, PRIO_PGRP,  o
       PRIO_USER,  y  who se interpreta en funcion de which (un indentificador
       de proceso para PRIO_PROCESS, un indentificador de  grupo  de  procesos
       para  PRIO_PGRP,  y  un  identificador  de usuario para PRIO_USER).  Un
       valor cero de who indica (respectivamente)  el  proceso  invocador,  el
       grupo  de  proceso del proceso invocador, o el identificador de usuario
       real del proceso invocador.  Prio es un valor que puede variar de -20 a
       20 (vea la seccion Observaciones mas abajo) .  La prioridad por defecto
       es  0;  cuanto  mas  baja  es  la  prioridad  mas   favorable   es   la
       planificacion.

       La  llamada  getpriority  devuelve  la  prioridad  mas  alta  (el valor
       numerico mas bajo) de  la  que  disfruta  cualquiera  de  los  procesos
       especificados.  La  llamada  setpriority asigna el valor especificado a
       las  prioridades  de  todos  los  procesos   especificados.   Solo   el
       superusuario puede decrementar las prioridades (haciendolas, por tanto,
       mas altas).

VALOR DEVUELTO

       Ya que  getpriority  legitimamente  puede  devolver  el  valor  -1,  es
       necesario  borrar  la  variable  externa errno antes de la llamada a la
       funcion y comprobar su valor mas adelante para determinar si -1  es  un
       error o un valor legitimo.  La funcion setpriority devuelve 0 si no hay
       error o -1 si lo hay.

ERRORES

       ESRCH   No se encontro ningun proceso que  cumpliera  con  los  valores
               especificados por which y who.

       EINVAL  Which no era PRIO_PROCESS, PRIO_PGRP, ni PRIO_USER.

       Ademas de los errores indicados arriba, setpriority puede fallar si:

       EPERM  Se  encontro  un  proceso,  pero  ni el identificador de usuario
              efectivo ni el  identificador  de  usuario  real  del  invocador
              coinciden con su identificador de usuario efectivo.

       EACCES Un  no  superusuario  intento  decrementar  la  prioridad  de un
              proceso.

OBSERVACIONES

       Los detalles sobre la condicion para EPERM dependen  del  sistema.   La
       descripcion  dada arriba es lo que dice SUSv3, y parece ser seguida por
       todos los sistemas de tipo SYSV.  Linux requiere que  el  identificador
       de  usuario  real o efectivo del invocador coincida con el usuario real
       del proceso who (en lugar de su  identificador  de  usuario  efectivo).
       Todos  los  sistemas  de  tipo  BSD  (SunOS 4.1.3, Ultrix 4.2, BSD 4.3,
       FreeBSD 4.3,  OpenBSD-2.5,  ...)  requieren  que  el  identificador  de
       usuario efectivo del invocador coincida con el identificador de usuario
       real o efectivo del proceso who.

       El rango real de prioridad varia entre  las  diferentes  versiones  del
       nucleo.    Las  versiones  de  Linux  anteriores  a  la  1.3.36  tenian
       -infinito..15. A partir de la version 1.3.43 se  tiene  -20..19,  y  la
       llamada  al  sistema  getpriority  devuelve  40..1  para  estos valores
       (puesto que los numeros negativos son codigos de error).  La llamada de
       biblioteca convierte N a 20-N.

       Incluir  <sys/time.h>  no  es  obligatorio  hoy dia, pero incrementa la
       portabilidad.  (De hecho, <sys/resource.h> define la estructura  rusage
       con campos de tipo struct timeval definida en <sys/time.h>.)

CONFORME A

       SVr4, 4.4BSD (estas funciones aparecieron por primera vez en 4.2BSD).

V'EASE TAMBI'EN

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

Pagina de Manual BSD             21 junio 2002                  GETPRIORITY(2)