diff options
author | Frans Kaashoek <[email protected]> | 2019-07-25 08:19:14 -0400 |
---|---|---|
committer | Frans Kaashoek <[email protected]> | 2019-07-25 08:19:14 -0400 |
commit | 57a861bea1ef57a44574cfc74737d5b35db0e261 (patch) | |
tree | 308f1b453297c967be909673820203d5a6d3147e | |
parent | 808811f9f49a21ae1a00b2e5805cf62cc31c0518 (diff) | |
download | xv6-labs-57a861bea1ef57a44574cfc74737d5b35db0e261.tar.gz xv6-labs-57a861bea1ef57a44574cfc74737d5b35db0e261.tar.bz2 xv6-labs-57a861bea1ef57a44574cfc74737d5b35db0e261.zip |
Checkpoint start syscall lab
-rw-r--r-- | labs/xv6.html | 35 |
1 files changed, 0 insertions, 35 deletions
diff --git a/labs/xv6.html b/labs/xv6.html index 7699b06..8dc7786 100644 --- a/labs/xv6.html +++ b/labs/xv6.html @@ -215,41 +215,6 @@ initial file system. You just ran one of them: <tt>ls</tt>. to declare an argv. </ul> -<h2>System call tracing</h2> - -<p>In this exercise you will modify the xv6 kernel to print out a line -for each system call invocation. It is enough to print the name of the -system call and the return value; you don't need to print the system -call arguments. - -<p> -When you're done, you should see output like this when booting -xv6: - -<pre> -... -fork -> 2 -exec -> 0 -open -> 3 -close -> 0 -$write -> 1 - write -> 1 -</pre> - -<p> -That's init forking and execing sh, sh making sure only two file descriptors are -open, and sh writing the $ prompt. (Note: the output of the shell and the -system call trace are intermixed, because the shell uses the write syscall to -print its output.) - -<p> Hint: modify the syscall() function in kernel/syscall.c. - -<p>Run the programs you wrote in the previous exercises and inspect - the system call trace. Are there many system calls? Which systems - calls correspond to code in the applications you wrote above? - -<p>Optional: print the system call arguments. - <h2>Optional: modify the shell</h2> There are endless ways in which the shell could be extended. Here are |