OS/161

Background

OS/161 is an educational operating system developed by the Systems Research at Harvard group, at Harvard University. It aims to strike a balance between giving students experience working on a real operating system, and potentially overwhelming students with the complexity that exists in a fully fledged operating system, such as Linux. Compared to most deployed operating systems, OS/161 is quite small (approximately 20,000 lines of code), and therefore it is much easier to develop an understanding of the entire code base.

The OS/161 environment consists of three major parts: OS/161 itself; System/161, the simulated machine that OS/161 runs on; and the cross development tools required to compile and debug code for the simulated machine.

Warning: Only use components of the OS/161 and System/161 environment that were obtained from here!!!

We modify some parts of the environment for local use. Hence, there are no guarantees that any local assignments will be achievable or assessed correctly if you use components sourced from elsewhere.

OS/161

The assignment specifications will contain instructions on how to get a copy of the sources for your particular assignments.

For those wishing to work at home

All the components required to work on OS/161 on non-CSE machines are provided below. Feel free to build and install them at home. However, while we make every endeavour to ensure the tools build and function for you, we cannot be responsible for them working (or not) on your machine. We have built and used the components on Linux and Cygwin. One of our students claims to have it going on Mac OS X, see his patch for more info.

Warning: While we provide these components for your use at home, we only guarantee our automated assessing to work on submissions that correctly build and function on CSE machines. Please make sure your assignment works at CSE before submitting it!!!

Follow these directions to set up the OS/161 environment at home