Assignment 1: 1 week. 6 hours   

Download assignment.

In this assignment you will set up the repository, compile the distributed code base.

Learning outcomes: 


Assignment 2: 10 days. 20 hours

Download assignment

In this assignment you will implement basic synchronization primitives

Learning outcomes: 


Assignment 3: 7 days. 10 hours

Download assignment

In this assignment you will solve a toy synchronization problem that involves using synchronization primitives in OS161

Learning outcomes: 


Assignment 4: 14 days. 40 hours

Download assignment

In this assignment you will implement file-related system calls

Learning outcomes: 


Assignment 5:  21 days. 60 hours

Download assignment

In this assignment you will implement fork/exec system calls

Learning outcomes: 


Assignment 6: 24 days. 80 hours

Download assignment

In this assignment you will implement the virtual memory system

Learning outcomes: