aboutsummaryrefslogtreecommitdiffstats
path: root/man7/sched.7
diff options
context:
space:
mode:
Diffstat (limited to 'man7/sched.7')
-rw-r--r--man7/sched.723
1 files changed, 23 insertions, 0 deletions
diff --git a/man7/sched.7 b/man7/sched.7
index 8eac1c2dbc..1077679144 100644
--- a/man7/sched.7
+++ b/man7/sched.7
@@ -379,6 +379,29 @@ and increased for each time quantum the thread is ready to run,
but denied to run by the scheduler.
This ensures fair progress among all \fBSCHED_OTHER\fP threads.
.\"
+.SS The nice value
+The range of the nice value
+varies across UNIX systems.
+On modern Linux, the range is \-20 (high priority) to +19 (low priority).
+On some other systems, the range is \-20..20.
+Very early Linux kernels (Before Linux 2.0) had the range \-infinity..15.
+.\" Linux before 1.3.36 had \-infinity..15.
+.\" Since kernel 1.3.43, Linux has the range \-20..19.
+
+The degree to which the nice value affects the relative scheduling of
+.BR SCHED_OTHER
+processes likewise varies across UNIX systems and
+across Linux kernel versions.
+
+With the advent of the CFS scheduler in kernel 2.6.23,
+Linux adopted an algorithm that causes
+relative differences in nice values to have a much stronger effect.
+This causes very low nice values (+19) to truly provide little CPU
+to a process whenever there is any other
+higher priority load on the system,
+and makes high nice values (\-20) deliver most of the CPU to applications
+that require it (e.g., some audio applications).
+.\"
.SS SCHED_BATCH: Scheduling batch processes
(Since Linux 2.6.16.)
\fBSCHED_BATCH\fP can be used only at static priority 0.