A practical approach to reinforcing concepts in introductory operating systems
SIGCSE '97 Proceedings of the twenty-eighth SIGCSE technical symposium on Computer science education
Learning operating systems structure and implementation through the MPS computer system simulator
SIGCSE '99 The proceedings of the thirtieth SIGCSE technical symposium on Computer science education
Teaching real time OSs with DORITOS
SIGCSE '99 The proceedings of the thirtieth SIGCSE technical symposium on Computer science education
An open source laboratory for operating systems projects
Proceedings of the 6th annual conference on Innovation and technology in computer science education
Journal of Computing Sciences in Colleges
An Object-Oriented Nano-Kernel for Operating System Hardware Support
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
Journal of Computing Sciences in Colleges
Journal of Computing Sciences in Colleges
Linux kernel projects for an undergraduate operating systems course
Proceedings of the 41st ACM technical symposium on Computer science education
VIREOS: an integrated, bottom-up, educational operating systems project with FPGA support
Proceedings of the 42nd ACM technical symposium on Computer science education
Visualization of student-implemented OS algorithms in Java
Journal of Computing Sciences in Colleges
Hi-index | 0.00 |
In teaching operating systems at an undergraduate level, we believe that it is important to provide a project that is realistic enough to show how real operating systems work, yet is simple enough that the students can understand and modify it in significant ways. A number of these instructional systems have been created over the last two decades, but recent advances in hardware and software design, along with the increasing power of available computational resources, have changed the basis for many of the tradeoffs 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 it runs as a regular UNIX process. Nachos illustrates and takes advantage of modern operating systems 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 protocol layering and object-oriented programming. Nachos has been used to teach undergraduate operating systems classes at several universities with positive results.