Standard C Library Functions schedsetparam(3C)
NAME
schedsetparam - set scheduling parameters
SYNOPSIS
#include
int schedsetparam(pidt pid, const struct schedparam *param);
DESCRIPTION
The schedsetparam() function sets the scheduling parameters
of the process specified by pid to the values specified by
the schedparam structure pointed to by param. The value of
the schedpriority member in the schedparam structure is
any integer within the inclusive priority range for the
current scheduling policy of the process specified by pid.
Higher numerical values for the priority represent higher
priorities. If the value of pid is negative, the behavior of
the schedsetparam() function is unspecified.
If a process specified by pid exists and if the calling pro-
cess has permission, the scheduling parameters will be set
for the process whose process ID is equal to pid. The real
or effective user ID of the calling process must match the
real or saved (from exec(2)) user ID of the target process
unless the effective user ID of the calling process is 0.
See Intro(2).
If pid is zero, the scheduling parameters will be set for
the calling process.
The target process, whether it is running or not running,
resumes execution after all other runnable processes of
equal or greater priority have been scheduled to run.
If the priority of the process specified by the pid argument
is set higher than that of the lowest priority running pro-
cess and if the specified process is ready to run, the pro-
cess specified by the pid argument preempts a lowest prior-
ity running process. Similarly, if the process calling
schedsetparam() sets its own priority lower than that of
one or more other non-empty process lists, then the process
that is the head of the highest priority list also preempts
the calling process. Thus, in either case, the originating
process might not receive notification of the completion of
the requested priority change until the higher priority pro-
cess has executed.
SunOS 5.11 Last change: 1 Apr 2008 1
Standard C Library Functions schedsetparam(3C)
RETURN VALUES
If successful, the schedsetparam() function returns 0.
If the call to schedsetparam() is unsuccessful, the prior-
ity remains unchanged, and the function returns -1 and sets
errno to indicate the error.
ERORS
The schedsetparam() function will fail if:
EINVAL One or more of the requested scheduling parameters
is outside the range defined for the scheduling
policy of the specified pid.
EPERM The requesting process does not have permission to
set the scheduling parameters for the specified
process, or does not have the appropriate
privilege to invoke schedsetparam().
ESRCH No process can be found corresponding to that
specified by pid.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
MT-Level MT-Safe
Standard See standards(5).
SEE ALSO
Intro(2), exec(2), librt(3LIB), sched.h(3HEAD),
schedgetparam(3C), schedgetscheduler(3C),
schedsetscheduler(3C), attributes(5), standards(5)
SunOS 5.11 Last change: 1 Apr 2008 2
|