As part of your lab work and the Operating Systems coursework, the OS lab project consists of 4 programming tasks based around adding functionality to the Pintos operating system. The tasks are to be completed in groups of 2 - 4. As the exercises will take up most of the Autumn term, it is recommended that you find your group members and get started as soon as possible.


OS Lab (Pintos) Documentation

The official OS lab documentation and task guide provides a breakdown of the Pintos operating system and a guide to the tasks you need to complete as part of the project.

Discussion Forum

As with the lab last term, we will be using Piazza to post lab materials and host a discussion forum. You are encouraged to use this to post questions and have them answered outside of lab hours.

OS Mini-lectures

The OS lab project will be supported by a series of optional mini lectures, each of roughly 30 minutes in duration. These extra lectures are intended to help you better understand the codebase and task requirements. Their schedule and exact content will be announced by the Year Coordinator at that start of the OS lab project.

Important Dates


 Arrange Groups 8th October 2020
 Task 0 - Alarm Clock (individual) 14th October 2020
 Task 1 - Scheduling (group) 30th October 2020
 Task 2 - User Programs (group) 20th November 2020
 Task 3 - Virtual Memory (group - c2 only) 11th December 2020


The OS lab project at Imperial College London is based on the CS.140 Pintos project developed by Ben Pfaff at Stanford University. Additional modifications were made to the documentation and code when adapting it for use at Imperial College by Mark Rutland, Feroz Abdul Salam, Fabio Luporini and Mark Wheelhouse.