From 1620c6ebfe2751e6793509c44a0abeb3a7f305d9 Mon Sep 17 00:00:00 2001 From: Ben Pfaff Date: Sat, 16 Oct 2004 23:28:59 +0000 Subject: [PATCH] Update FAQ. --- doc/userprog.texi | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/doc/userprog.texi b/doc/userprog.texi index 903d9c5..3473e96 100644 --- a/doc/userprog.texi +++ b/doc/userprog.texi @@ -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}. -- 2.30.2