sched_getparam - get the scheduling parameters of a process
int sched_getparam (pid_t pid<b>, const struct sched_param *param<b>);
The sched_getparam system call is used to get the scheduling parameters
for the process specified by pid. If pid is set to zero, then the
scheduling parameters of the calling process will be obtained.
A process may obtain the scheduling parameters of itself and any process
sharing the same real user ID [see getuid(2)]. To obtain the scheduling
parameters of an unrelated process, the calling process must have the
CAP_SCHED_MGT capability [see capability].
The scheduling parameters of pid are returned via the parameter structure
at address param (see sched_setparam(2)).
If pid refers to a POSIX thread process [see pthreads(3P)] then this call
retrieves the scheduling policy parameters that are shared by process
scope and bound scope threads.
sched_getparam will fail if one or more of the following are true:
[EINVAL] The process specified by pid is not executing with a
[EFAULT] The address specified by param is outside the range of the
address space of the calling process.
[EPERM] The calling process attempted to obtain the scheduling
parameters of an unrelated process and the caller does not
have the CAP_SCHED_MGT capability.
[ESRCH] The process specified by pid does not exist.
capability(4), sched_getscheduler(2), sched_get_priority_max(2),
sched_get_priority_min(2), sched_rr_get_interval(2), sched_setparam(2),
sched_setscheduler(2), sched_yield(2), getuid(2), pthreads(5)
Upon successful completion, a value of 0 is returned to the calling
process. Otherwise, a value of -1 is returned and errno is set to
indicate the error.
PPPPaaaaggggeeee 1111 [ Back ]