Project 2b: The xv6 Lottery Scheduler

Important Dates

Questions about the project? Use piazza, or send them to .

Due: Monday 3/05 by whenever.


Return value for getpinfo(). See the full description or just see the update (diffs on github).

Ticket inheritance. See the full description or just see the update (by checking for diffs on github).


The project is described here. Please read the description carefully, perhaps watch this video, and do the work!


This project is the last one to be done by yourself this semester. Congratulations on making it this far! Copying code is considered cheating. Read this for more info on what is OK and what is not.

Start with the clean source code of xv6, as found in ~cs537-1/ta/xv6/xv6.tar.gz (as before). The xv6 projects are not cumulative, i.e., there is no need to include your p1b system call.

Handing It In

The handin directory is ~cs537-1/handin/login/p2b where login is your login.

Copy all of your source files (but not .o files, please, or binaries!) into the p2b/ subdirectory. 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, in your p2b directory, please make a README file to describe what you did, and include your graph in there too, called graph.pdf (great name, huh?).