X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=doc%2Fuserprog.texi;h=75bc8e542ffd3772fd58b10808f8527b3aadbe36;hb=854aa042a0e960f142cb15ecca8177ee01c3f927;hp=f005d55e41add3d1cd3c7fd506deb4c23b7d5005;hpb=96c09fa4bb8540dbf412be81e6ec015584e04f97;p=pintos-anon diff --git a/doc/userprog.texi b/doc/userprog.texi index f005d55..75bc8e5 100644 --- a/doc/userprog.texi +++ b/doc/userprog.texi @@ -301,7 +301,7 @@ regardless of what user process or kernel thread is running. In Pintos, kernel virtual memory is mapped one-to-one to physical memory, starting at @code{PHYS_BASE}. That is, virtual address @code{PHYS_BASE} accesses physical -address 0, virtual address @code{PHYS_BASE} + @t{0x1234} access +address 0, virtual address @code{PHYS_BASE} + @t{0x1234} accesses physical address @t{0x1234}, and so on up to the size of the machine's physical memory. @@ -619,10 +619,11 @@ the program cannot load or run for any reason. @end deftypefn @deftypefn {System Call} int wait (pid_t @var{pid}) -Waits for process @var{pid} to die and returns the status it passed to -@code{exit}. Returns -1 if @var{pid} +If process @var{pid} is still alive, waits until it dies. +Then, returns the status that @var{pid} passed to @code{exit}, +or -1 if @var{pid} was terminated by the kernel (e.g.@: killed due to an exception). If -@var{pid} is does not refer to a child of the +@var{pid} does not refer to a child of the calling thread, or if @code{wait} has already been successfully called for the given @var{pid}, returns -1 immediately, without waiting. @@ -654,11 +655,15 @@ of the rest. @deftypefn {System Call} bool create (const char *@var{file}, unsigned @var{initial_size}) Creates a new file called @var{file} initially @var{initial_size} bytes in size. Returns true if successful, false otherwise. +Opening the new file is a separate operation using the @code{open} +system call. @end deftypefn @deftypefn {System Call} bool remove (const char *@var{file}) Deletes the file called @var{file}. Returns true if successful, false otherwise. +A file may be removed regardless of whether it is open or closed +(@pxref{Removing an Open File}, for more information). @end deftypefn @deftypefn {System Call} int open (const char *@var{file})