PintOS
PintOS is an educational operating system for the x86 architecture. It supports multithreading, loading and running user programs, and a file system, but it implements all of these in a very simple way. In the PintOS projects, you and your project team will strengthen its support in all three of these areas. PintOS could, theoretically, run on a regular IBM-compatible PC. Unfortunately, it is impractical to supply every CSC4103 student a dedicated PC for use with PintOS. Therefore, we will run PintOS projects in a system simulator, that is, a program that simulates an 80x86 CPU and its peripheral devices accurately enough that unmodified operating systems and software can run under it. In class we will use the Bochs and QEMU simulators. PintOS has also been tested with VMware Player.
The projects are hard. They have a reputation of taking a lot of time, and deservedly so. We will do what we can to reduce the workload, such as providing a lot of support material, but there is plenty of hard work that needs to be done. We welcome your feedback. If you have suggestions on how we can reduce the unnecessary overhead of assignments, cutting them down to the important underlying issues, please let us know.
This chapter explains how to get started working with PintOS. You should read the entire chapter before you start working on any of the projects.