The Nachos instructional operating system

Wayne Christopher, Steven J. Procter, Thomas E. Anderson · 1993

In teaching operating systems at an undergraduate level,itisvery important toprovide a project that is realistic enough to show how real operating systems work, yet simple enough that the students can understand and modify it in signi cant ways. A number of these instructional systems have been created over the last two decades, but recent changes in hardware and software design, along with the increasing power of available computational resources, have changed the basis for many of the tradeo s made by these systems. We have implemented an instructional operating system, called Nachos, and designed a series of assignments to go with it. Our system includes CPU and device simulators, and runs as a regular UNIX process. Nachos illustrates and takes advantage of modern OS technology, such as threads and remote procedure calls, recent hardware advances, such as RISC's and the prevalence of memory hierarchies, and modern software design techniques, such as objectoriented programming and distributed computing. We have used Nachos in the undergraduate operating systems class at Berkeley, with positive results. Nachos is freely available, and we would like to see it widely used for undergraduate instruction. 1

Read the paper · More papers on PaperTik