Project 2: Processes and Scheduling

Important Dates

Questions about the project? Send them to 537-help@cs.wisc.edu .

Due: Wednesday 02/17

New: 2-day grace period in which you can turn p2 in, no penalty, by Friday 2/19 around 10pm

Overview

There are two parts to this project:

  • Shell: to be done on the mumble lab, so you can learn more about programming in C on a typical Linux-based platform.
  • Scheduling: to be done in our xv6 OS hacking environment.

Click on the above links to learn more about what you should do. READ EACH CAREFULLY!

Notes

This project is to be done alone. Copying code is considered cheating. Read this for more info on what is OK and what is not!

Handing It In

The handin directory is ~cs537-1/handin/login/p2 where login is your login if you are in Section 1. It is ~cs537-3/handin/login/p2 if you are in Section 3, naturally.

For the C/Linux part of this project (the shell), you should turn in one file, called whoosh.c . You should copy this file into your handin directory into the subdirectory called linux . You should also include a simple makefile , so we can simply type make and build your testable binary. The binary should be named whoosh .

For the xv6 part of the project, copy all of your source files (but not .o files, please, or binaries!) into the xv6/ subdirectory of your p2 directory. A simple way to do this is to copy everything into the destination directory directory, then type make to make sure it builds, and then type make clean to remove unneeded files.

Finally, into your p2 directory, please make a README file. In there, describe what you did a little bit. Imagine it as a note you are writing to your future self about what you did in the project.