diff options
| author | rpj <rpj> | 2003-09-18 02:31:39 +0000 | 
|---|---|---|
| committer | rpj <rpj> | 2003-09-18 02:31:39 +0000 | 
| commit | af1871fba4fc253b5a31e4a0eed667fe79f534d7 (patch) | |
| tree | 1242599d7334ae50c5c05f9b23b52876e4287924 /sched_get_priority_max.c | |
| parent | fac679912b15dd89cafdb09bf873d7eacc80a05e (diff) | |
Cleanup and fixes to thread priority management. Other minor changes.snap-2003-09-18
Diffstat (limited to 'sched_get_priority_max.c')
| -rw-r--r-- | sched_get_priority_max.c | 67 | 
1 files changed, 66 insertions, 1 deletions
| diff --git a/sched_get_priority_max.c b/sched_get_priority_max.c index a74226a..c3fb715 100644 --- a/sched_get_priority_max.c +++ b/sched_get_priority_max.c @@ -48,6 +48,70 @@   *    * sched_get_priority_min() returns 5   * sched_get_priority_max() returns 1 + * + * The following table shows the base priority levels for combinations + * of priority class and priority value in Win32. + * + *   Process Priority Class               Thread Priority Level + *   ----------------------------------------------------------------- + *   1 IDLE_PRIORITY_CLASS                THREAD_PRIORITY_IDLE + *   1 BELOW_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_IDLE + *   1 NORMAL_PRIORITY_CLASS              THREAD_PRIORITY_IDLE + *   1 ABOVE_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_IDLE + *   1 HIGH_PRIORITY_CLASS                THREAD_PRIORITY_IDLE + *   2 IDLE_PRIORITY_CLASS                THREAD_PRIORITY_LOWEST + *   3 IDLE_PRIORITY_CLASS                THREAD_PRIORITY_BELOW_NORMAL + *   4 IDLE_PRIORITY_CLASS                THREAD_PRIORITY_NORMAL + *   4 BELOW_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_LOWEST + *   5 IDLE_PRIORITY_CLASS                THREAD_PRIORITY_ABOVE_NORMAL + *   5 BELOW_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_BELOW_NORMAL + *   5 Background NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_LOWEST + *   6 IDLE_PRIORITY_CLASS                THREAD_PRIORITY_HIGHEST + *   6 BELOW_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_NORMAL + *   6 Background NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_BELOW_NORMAL + *   7 BELOW_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_ABOVE_NORMAL + *   7 Background NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_NORMAL + *   7 Foreground NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_LOWEST + *   8 BELOW_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_HIGHEST + *   8 NORMAL_PRIORITY_CLASS              THREAD_PRIORITY_ABOVE_NORMAL + *   8 Foreground NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_BELOW_NORMAL + *   8 ABOVE_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_LOWEST + *   9 NORMAL_PRIORITY_CLASS              THREAD_PRIORITY_HIGHEST + *   9 Foreground NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_NORMAL + *   9 ABOVE_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_BELOW_NORMAL + *  10 Foreground NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_ABOVE_NORMAL + *  10 ABOVE_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_NORMAL + *  11 Foreground NORMAL_PRIORITY_CLASS   THREAD_PRIORITY_HIGHEST + *  11 ABOVE_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_ABOVE_NORMAL + *  11 HIGH_PRIORITY_CLASS                THREAD_PRIORITY_LOWEST + *  12 ABOVE_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_HIGHEST + *  12 HIGH_PRIORITY_CLASS                THREAD_PRIORITY_BELOW_NORMAL + *  13 HIGH_PRIORITY_CLASS                THREAD_PRIORITY_NORMAL + *  14 HIGH_PRIORITY_CLASS                THREAD_PRIORITY_ABOVE_NORMAL + *  15 HIGH_PRIORITY_CLASS                THREAD_PRIORITY_HIGHEST + *  15 HIGH_PRIORITY_CLASS                THREAD_PRIORITY_TIME_CRITICAL + *  15 IDLE_PRIORITY_CLASS                THREAD_PRIORITY_TIME_CRITICAL + *  15 BELOW_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_TIME_CRITICAL + *  15 NORMAL_PRIORITY_CLASS              THREAD_PRIORITY_TIME_CRITICAL + *  15 ABOVE_NORMAL_PRIORITY_CLASS        THREAD_PRIORITY_TIME_CRITICAL + *  16 REALTIME_PRIORITY_CLASS            THREAD_PRIORITY_IDLE + *  17 REALTIME_PRIORITY_CLASS            -7 + *  18 REALTIME_PRIORITY_CLASS            -6 + *  19 REALTIME_PRIORITY_CLASS            -5 + *  20 REALTIME_PRIORITY_CLASS            -4 + *  21 REALTIME_PRIORITY_CLASS            -3 + *  22 REALTIME_PRIORITY_CLASS            THREAD_PRIORITY_LOWEST + *  23 REALTIME_PRIORITY_CLASS            THREAD_PRIORITY_BELOW_NORMAL + *  24 REALTIME_PRIORITY_CLASS            THREAD_PRIORITY_NORMAL + *  25 REALTIME_PRIORITY_CLASS            THREAD_PRIORITY_ABOVE_NORMAL + *  26 REALTIME_PRIORITY_CLASS            THREAD_PRIORITY_HIGHEST + *  27 REALTIME_PRIORITY_CLASS             3 + *  28 REALTIME_PRIORITY_CLASS             4 + *  29 REALTIME_PRIORITY_CLASS             5 + *  30 REALTIME_PRIORITY_CLASS             6 + *  31 REALTIME_PRIORITY_CLASS            THREAD_PRIORITY_TIME_CRITICAL + * + * Windows NT:  Values -7, -6, -5, -4, -3, 3, 4, 5, and 6 are not supported.   */ @@ -56,7 +120,8 @@ sched_get_priority_max(int policy)  {    if (policy < SCHED_MIN || policy > SCHED_MAX)      { -      return EINVAL; +      errno = EINVAL; +      return -1;      }  #if (THREAD_PRIORITY_LOWEST > THREAD_PRIORITY_NORMAL) | 
