Rev | Author | # | Line |
---|---|---|---|
1 | perry | 1 | !!NAME |
2 | PerryLorier | 2 | getpriority - get program scheduling priority |
1 | perry | 3 | !!SYNOPSIS |
2 | PerryLorier | 4 | __#include <sys/time.h>__ |
5 | __#include <sys/resource.h>__ | ||
1 | perry | 6 | |
2 | PerryLorier | 7 | __int getpriority(int__ ''which''__, int__ ''who''__);__ |
1 | perry | 8 | |
9 | !!DESCRIPTION | ||
2 | PerryLorier | 10 | The scheduling priority of the process, process group, or user, as indicated by ''which'' and ''who'' is obtained with the __getpriority__ call and set with the __setpriority__ call. ''Which'' is one of __PRIO_PROCESS__, __PRIO_PGRP__, or __PRIO_USER__, |
11 | and ''who'' is interpreted relative to ''which'' (a process identifier for __PRIO_PROCESS__, process group identifier for __PRIO_PGRP__, and a user ID for __PRIO_USER__). A zero value of ''who'' denotes the current process, process group, or user. ''Prio'' is a | ||
12 | value in the range -20 to 20. The default priority is 0; lower priorities cause more favorable scheduling. | ||
1 | perry | 13 | |
2 | PerryLorier | 14 | The __getpriority__ call returns the highest priority (lowest numerical value) enjoyed by any of the specified processes. The __setpriority__ call sets the priorities of all of the specified processes to the specified value. Only the super-user may lower priorities. |
1 | perry | 15 | |
16 | !!RETURN VALUE | ||
2 | PerryLorier | 17 | Since __getpriority__ can legitimately return the value -1, it is necessary to clear the external variable ''errno'' prior to the call, then check it afterwards to determine if a -1 is an error or a legitimate value. The __setpriority__ call returns 0 if there is no error, or -1 if there is. |
1 | perry | 18 | |
19 | !!ERRORS | ||
2 | PerryLorier | 20 | ;[ESRCH]: No process was located using the ''which'' and ''who'' values specified. |
21 | ;[EINVAL]: ''Which'' was not one of __PRIO_PROCESS__, __PRIO_PGRP__, or __PRIO_USER__. | ||
1 | perry | 22 | |
23 | !!NOTE | ||
2 | PerryLorier | 24 | The actual priority range varies between kernel versions. Linux before 1.3.36 had -infinity..15. Linux since 1.3.43 has -20..19, and the system call getpriority returns 40..1 for these values (since negative numbers are error codes). The library call converts N into 20-N. |
1 | perry | 25 | |
2 | PerryLorier | 26 | Including ''<sys/time.h>'' is not required these days, but increases portability. (Indeed, ''<sys/resource.h>'' defines the ''rusage'' |
27 | structure with fields of type ''struct timeval'' defined in ''<sys/time.h>''.) | ||
1 | perry | 28 | |
29 | !!CONFORMING TO | ||
2 | PerryLorier | 30 | SVr4, 4.4BSD (these function calls first appeared in 4.2BSD). |
1 | perry | 31 | |
32 | !!SEE ALSO | ||
3 | PerryLorier | 33 | nice(1), fork(2), renice(1) |
lib/blame.php:177: Warning: Invalid argument supplied for foreach() (...repeated 7 times)