Pintos Projects

This class includes four programming projects based on the Pintos operating system. For these projects you will work in teams of two or three. The Pintos projects take quite a bit of time, so we recommend that you choose your teammates and get started as soon as possible. Before starting on any of the projects you should read the following Pintos materials:

Project 1: Threads

Due: Thursday, February 2, 2012, 11:59 P.M.
Sections: Tuesday, January 24 (4:15-5:05, 200-305), Friday, January 27 (10:00-10:50, Gates B03)

See the Pintos documentation for details on this project:

Project 2: User Programs

Due: Tuesday, February 14, 2012, 11:59 P.M.
Sections: Friday, February 3 (10:00-10:50, Gates B03), Tuesday, February 7 (4:15-5:05, 200-305),

See the Pintos documentation for details on this project:

Warning: if you use Pintos "out of the box", user programs will not run properly on the corn machines. However, you can fix this problem by modifying your Make.config file. Find the line that looks like this:

ifeq ($(strip $(shell $(LD) --build-id=none -e 0 /dev/null -o /dev/null 2>&1; echo $$?)),0)
and replace it with the following:
ifeq ($(strip $(shell $(LD) --help | grep -q build-id; echo $$?)),0)
Alternatively, you can use myth, pod, or cardinal machines instead of corn.

Project 3: Virtual Memory

Due: Thursday, March 1, 2012, 11:59 P.M.
Sections: Friday, February 17 (10:00-10:50, Gates B03), Tuesday, February 21 (4:15-5:05, 200-305),

See the Pintos documentation for details on this project:

Project 4: File Systems

Due: Thursday, March 15, 2012, 11:59 P.M.
Sections: Friday, March 2 (10:00-10:50, Gates B03), Tuesday, March 6 (4:15-5:05, 200-305),

See the Pintos documentation for details on this project: