X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=doc%2F44bsd.texi;h=f530824e8296f0514885479377f4d3804b1e1417;hb=5ae9e9b8e9240f8605cd4ed7ddf9c1207370dd35;hp=8cff146f07c17be0a1363f3c457a9be7d06e719b;hpb=f415a37905c57f61b444806bf84f5405184452aa;p=pintos-anon diff --git a/doc/44bsd.texi b/doc/44bsd.texi index 8cff146..f530824 100644 --- a/doc/44bsd.texi +++ b/doc/44bsd.texi @@ -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 @@ -86,7 +86,7 @@ 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. @@ -243,8 +243,7 @@ scheduler. It is 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)}.