X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;ds=sidebyside;f=doc%2Fthreads.texi;h=fe54d77e82fd53d14c89a0ccef4b88fee8503c29;hb=4d4f7cdae7c29fc7dfcecc16c6a683dd512532cf;hp=40565994f536bbbec06e7a9beb25ae494cd4a60a;hpb=87167c23618329fc812ecabe00d4542dd3ec4d8d;p=pintos-anon diff --git a/doc/threads.texi b/doc/threads.texi index 4056599..fe54d77 100644 --- a/doc/threads.texi +++ b/doc/threads.texi @@ -185,8 +185,8 @@ project 3. For now, you can ignore it. @item flags.h Macros that define a few bits in the 80@var{x}86 ``flags'' register. -Probably of no interest. See @bibref{IA32-v1}, section 3.4.3, for more -information. +Probably of no interest. See @bibref{IA32-v1}, section 3.4.3, ``EFLAGS +Register,'' for more information. @end table @menu @@ -511,7 +511,8 @@ must be active, but we must be able to choose the 4.4@acronym{BSD} scheduler with the @option{-mlfqs} kernel option. Passing this option sets @code{enable_mlfqs}, declared in @file{threads/init.h}, to -true. +true when the options are parsed by @func{parse_options}, which happens +midway through @func{main}. When the 4.4@acronym{BSD} scheduler is enabled, threads no longer directly control their own priorities. The @var{priority} argument to @@ -531,6 +532,12 @@ Here's a summary of our reference solution, produced by the @command{diffstat} program. The final row gives total lines inserted and deleted; a changed line counts as both an insertion and a deletion. +The reference solution represents just one possible solution. Many +other solutions are also possible and many of those differ greatly from +the reference solution. Some excellent solutions may not modify all the +files modified by the reference solution, and some may modify files not +modified by the reference solution. + @verbatim devices/timer.c | 42 +++++- threads/fixed-point.h | 120 ++++++++++++++++++ @@ -540,6 +547,8 @@ and deleted; a changed line counts as both an insertion and a deletion. 5 files changed, 440 insertions(+), 29 deletions(-) @end verbatim +@file{fixed-point.h} is a new file added by the reference solution. + @item How do I update the @file{Makefile}s when I add a new source file? @anchor{Adding Source Files} @@ -675,8 +684,8 @@ If multiple threads have the same highest priority, Priority donation only changes the priority of the donee thread. The donor thread's priority is unchanged. -Priority donation is not additive: if thread @var{A} (with priority 5) donates -to thread @var{B} (with priority 3), then @var{B}'s new priority is 5, not 8. +Priority donation is not additive: if thread @var{A} (with priority 3) donates +to thread @var{B} (with priority 5), then @var{B}'s new priority is 3, not 8. @item Can a thread's priority change while it is on the ready queue?