Provided by:
manpages-es_1.55-10_all 
NOMBRE
sched_setaffinity, sched_getaffinity - establece y obtiene la mascara
de afinidad de CPU de un proceso
SINOPSIS
#include <sched.h>
int sched_setaffinity(pid_t pid, unsigned int len, unsigned long
*mask);
int sched_getaffinity(pid_t pid, unsigned int len, unsigned long
*mask);
DESCRIPCI'ON
sched_setaffinity establece la mascara de afinidad de CPU del proceso
identificado por pid. Si pid es cero, se asume el proceso en curso.
La mascara de afinidad esta representada por la mascara de bits
almacenada en mask. El bit menos significativo corresponde al numero
del primer procesador logico en el sistema, mientras que el bit mas
significativo corresponde al numero del ultimo procesador logico en el
sistema. Un bit a 1 se corresponde con una CPU legitimamente
planificable mientras que un bit a 0 se corresponde con una CPU que no
es legitimamente planificable. En otras palabras, un proceso esta
ligado y solo se ejecutara en aquellos procesadores cuyo bit este
activo. Normalmente todos los bits de la mascara estan activos.
El argumento len representa la longitud de los datos a los que apunta
mask. Normalmente este valor es el tamano de una palabra en el
sistema. Por razones de compatibilidad con futuras versiones del nucleo
de Linux, puesto que este tamano puede cambiar, la mascara de bits
proporcionada debe ser al menos tan grande como la mascara de afinidad
almacenada en el nucleo.
La funcion sched_getaffinity escribe en el puntero proporcionado en
mask, cuyo tamano es len, la mascara de afinidad del proceso pid. Si
pid es cero, se devuelve la mascara del proceso en curso.
VALOR DEVUELTO
En caso de exito,, sched_setaffinity y sched_getaffinity devuelven 0.
En caso de error, se devuelve -1, y se modifica errno con el valor
apropiado.
ERRORES
EFAULT La direccion de memoria proporcionada no es valida.
ESRCH No se puede encontrar un proceso con identificador pid.
EPERM El proceso invocador no tiene los privilegios apropiados. El
proceso que llama a sched_setaffinity necesita que el
identificador de usuario efectivo sea igual al identificador de
usuario real o efectivo del proceso identificado por pid, o
poseer la capacidad CAP_SYS_NICE.
EINVAL La mascara de afinidad mask no contiene procesadores que esten
fisicamente en el sistema o la longitud len es mas pequena que
el tamano de la mascara de afinidad usada por el nucleo.