Supplementary Materials for Assignment 2

There is a lot of material that you need to full tackle A2. The key parts have been covered in pre-class work. These materials are intended as backup in case there are things that we assume you know but perhaps weren't covered in earlier courses.

  • Fork/Exec (25:18) -- If you have used the fork, exec, wait, and waitpid system calls, then you can probably skip this video. If you've never used these system calls, you'll want to listen to it (This video is from CS61 2015). Video (25:18) (PDF)
  • Here are links to the BSD and Linux proc and task structure include files. These are significantly more complicated than anything you will need in OS161, but we thought you might find it interesting to You should look in your OS/161 distribution to find the corresponding structures in OS/161.
  • Architecture (8:03) -- This is a short overview of concepts such as uniprogramming, multiprocessing, multicore, etc. If you are entirely comfortable with these terms, you can skip the video, although once again, we encourage you to peak at slide #11, which describes how you should think about sys161. Video (8:03) (PDF)
  • Linking (17:11) -- This is an overview of the linking process -- how the linker constructs an executable from a collection of object files. If you saw this in CS61, you can probably skip the video. Video (17:11) (PDF)