teaching operating systems with source code UNIX
Robert S. Gray · ;login:: the magazine of USENIX & SAGE · 2000
It's early April and the end of spring break at the University of Colorado. I have a couple more days before the next lecture to finish grading the programming project that illustratrea a file's on-disk layout. I also must work through the next project -implementing undelete in the kernel before assigning it to the 95 college juniors. Back in December, the computer science chair asked me to teach the undergraduate operating system course. I asked what resources were available to me and was offered a set of notes from the previous semester. That's couse home work was based on binary-only Windows NT. I inspected the material and found the assignments were just userland programing projects. I chose to teach the course using a source-code, production operating system. This article discusses the advantages and disadvantages of my decision. I'll outline a couple of the programming projects with the lessons learned, and I'll pass along some of the students' comments. The course assignments and solutions are posted at .