Update FAQ.
authorBen Pfaff <blp@cs.stanford.edu>
Sat, 16 Oct 2004 23:28:59 +0000 (23:28 +0000)
committerBen Pfaff <blp@cs.stanford.edu>
Sat, 16 Oct 2004 23:28:59 +0000 (23:28 +0000)
doc/userprog.texi

index 903d9c53311dcd856860b10a5749ffdbd234d3ab..3473e961ac1aeaa4b163e6a4808429305ead487e 100644 (file)
@@ -396,6 +396,14 @@ You may find the code for @func{thread_join} to be useful in
 implementing the join syscall, but besides that, you can use
 the original code provided for project 1.
 
+@item
+@b{All my user programs die with page faults.}
+
+This will generally happen if you haven't implemented problem 2-1
+yet.  The reason is that the basic C library for user programs tries
+to read @var{argc} and @var{argv} off the stack.  Because the stack
+isn't properly set up yet, this causes a page fault.
+
 @item
 @b{Is there a way I can disassemble user programs?}
 
@@ -417,7 +425,7 @@ is compiled as a unit.)  If you wish to port libraries to Pintos, feel
 free.
 
 @item
-@b{How do I compile new user programs? How do I make 'echo' compile?}
+@b{How do I compile new user programs?}
 
 You need to modify @file{tests/Makefile}.