Project 4: Concurrency

WARNING

This is certainly the most difficult project thus far. Start early!

Important Dates

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

Due: Thursday 4/24 by start of class.

Overview

There are two parts to this project:

  • Scalable Web Server: to be done on the mumble lab, so you can learn more about programming in C on a typical UNIX-based platform (Linux)
  • Kernel Threads: to be done in our xv6 hacking environment.

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

Notes

This project can be done with a single partner. Copying code (from other groups) is considered cheating. Read this for more info on what is OK and what is not!

Handing It In

The handin directory is ~cs537-4/handin/login/p4 where login is your login.

For the C/Linux part of this project, you should copy whatever is needed to build the web server (including a makefile) into the linux/ subdirectory.

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 p4 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 p4 directory, please include a README file. In there, describe what you did a little bit.