fixed left-over, now-wrong comment about how decrease in numeric priority means incre...
[pintos-anon] / doc / 44bsd.texi
index e44232662334d4c4db3941802a99b6280a41cba5..ba67ddaa876e6504f2c2b95993b7810415dd0c6c 100644 (file)
@@ -1,4 +1,4 @@
-@node 4.4BSD Scheduler, Coding Standards, References, Top
+@node 4.4BSD Scheduler
 @appendix 4.4@acronym{BSD} Scheduler
 
 @iftex
@@ -44,7 +44,7 @@ vary over time.  A well-designed scheduler can often accommodate threads
 with all these requirements simultaneously.
 
 For project 1, you must implement the scheduler described in this
-appendix.  Our scheduler resembles the one described in @bibref{4.4BSD},
+appendix.  Our scheduler resembles the one described in @bibref{McKusick},
 which is one example of a @dfn{multilevel feedback queue} scheduler.
 This type of scheduler maintains several queues of ready-to-run threads,
 where each queue holds threads with a different priority.  At any given
@@ -76,17 +76,16 @@ Thread priority is dynamically determined by the scheduler using a
 formula given below.  However, each thread also has an integer
 @dfn{nice} value that determines how ``nice'' the thread should be to
 other threads.  A @var{nice} of zero does not affect thread priority.  A
-positive @var{nice}, to the maximum of 20, increases the numeric
-priority of a thread, decreasing its effective priority, and causes it
-to give up some CPU time it would otherwise receive.  On the other hand,
-a negative @var{nice}, to the minimum of -20, tends to take away CPU
-time from other threads.
+positive @var{nice}, to the maximum of 20, decreases the priority of a 
+thread and causes it to give up some CPU time it would otherwise receive.
+On the other hand, a negative @var{nice}, to the minimum of -20, tends
+to take away CPU time from other threads.
 
 The initial thread starts with a @var{nice} value of zero.  Other
 threads start with a @var{nice} value inherited from their parent
 thread.  You must implement the functions described below, which are for
 use by test programs.  We have provided skeleton definitions for them in
-@file{threads/thread.c}.  by test programs
+@file{threads/thread.c}.
 
 @deftypefun int thread_get_nice (void)
 Returns the current thread's @var{nice} value.
@@ -237,14 +236,13 @@ nearest integer.
 @node 4.4BSD Scheduler Summary
 @section Summary
 
-This section summarizes the calculations required to implement the
-scheduler.  It is not a complete description of scheduler requirements.
+The following formulas summarize the calculations required to implement the
+scheduler.  They are not a complete description of scheduler requirements.
 
 Every thread has a @var{nice} value between -20 and 20 directly under
 its control.  Each thread also has a priority, between 0
 (@code{PRI_MIN}) through 63 (@code{PRI_MAX}), which is recalculated
-using the following formula whenever the value of either variable term
-changes:
+using the following formula every fourth tick:
 
 @center @t{@var{priority} = @code{PRI_MAX} - (@var{recent_cpu} / 4) - (@var{nice} * 2)}.