Scheduler related system calls
Linux provides an entire family of system calls that manage various scheduler parameters, policies, and priorities and retrieve a multitude of scheduling-related information for the calling threads. It also enables threads to yield CPU explicitly:
nice(int inc)
nice()
takes an int parameter and adds it to the nice
value of the calling thread. On success, it returns the new nice value of the thread. Nice values are within the range 19 (lowest priority) to -20 (highest priority). Nice values can be incremented only within this range:
getpriority(int which, id_t who)
This returns the nice
value of the thread, group, user, or set of threads of a specified user as indicated by its parameters. It returns the highest priority held by any of the processes:
setpriority(int which, id_t who, int prio)
The scheduling priority of the thread, group, user, or set of threads of a specified user as indicated by its parameters is set bysetpriority
.It returns zero on success:
sched_setscheduler...