The purpose of the WeensyOS exercises is first, to teach some of the concepts we use in class through example, and second, to demystify operating systems in general. Each mini-lab can be done completely independently of each other so that each lab can remain as simple as possible.
Lab 1 - mpos (an OS with multiple mini-processes)
Lab 2 - schedos (an OS that schedules processes)
Lab 3 - memos (an OS that uses paging for memory isolation)
Collaboration policy: You must write all the code you hand in for the programming assignments, except for code that we give you as part of the assignment. You are not allowed to look at anyone else's solution (and you're not allowed to look at code from previous years). You may discuss the assignments with other students, but you may not look at or copy each others' code.