Move problem 1-2 (join) into project 2 as the "wait" system call.
[pintos-anon] / doc / standards.texi
index a13058a91cf6a0de30483cda7ec622d853655001..a1c70a47961a69baac2f0bfe906c15870c88677d 100644 (file)
@@ -42,11 +42,20 @@ different style won't cause actual problems, but it's ugly to see
 gratuitous differences in style from one function to another.  If your
 code is too ugly, it will cost you points.
 
+Please limit C source file lines to at most 79 characters long.
+
 Pintos comments sometimes refer to external standards or
 specifications by writing a name inside square brackets, like this:
 @code{[IA32-v3]}.  These names refer to the reference names used in
 this documentation (@pxref{References}).
 
+If you remove existing Pintos code, please delete it from your source
+file entirely.  Don't just put it into a comment or a conditional
+compilation directive, because that makes the resulting code hard to
+read.  We're only going to do a compile in the directory for the current
+project, so you don't need to make sure that the previous projects also
+compile.
+
 @node Conditional Compilation
 @section Conditional Compilation
 
@@ -71,16 +80,18 @@ There are a few exceptions:
 
 @itemize @bullet
 @item
-Problem 1-2, @func{thread_join}.  Some other code expects
-@code{THREAD_JOIN_IMPLEMENTED} to be defined once you've implemented
-this function.
-
-@item
-Problem 1-4, the advanced scheduler.  We must be able to turn this on
+Problem 1-3, the advanced scheduler.  We must be able to turn this on
 and off with a compile-time directive.  You must use the macro name we
-specify for that part.  @xref{Problem 1-4 Advanced Scheduler}, for
+specify for that part.  @xref{Problem 1-3 Advanced Scheduler}, for
 details.
 
+@item
+Problem 3-2, paging to and from disk.  Your page replacement policy must
+default to LRU-like replacement, but we must be able to choose a random
+replacement policy with a compile-time directive.  You must use the
+macro name we specify for that part.  @xref{Problem 3-2 Paging To and
+From Disk}, for details.
+
 @item
 Code written for extra credit may be included conditionally.  If the
 extra credit code changes the normally expected functionality of the
@@ -193,7 +204,7 @@ terminator and it has performance problems besides.  Again, use
 @func{strlcpy}.
 
 @item strcat
-Same issue as @func{strcpy}, but substitute @func{strlcat}.
+Same issue as @func{strcpy}.  Use @func{strlcat} instead.
 Again, refer to comments in its source code in @code{lib/string.c} for
 documentation.