The publication is intended as supplement to any conventional textbook on Operating Systems, most of which do not provide detailed, comprehensive descriptions of hands-on programming projects. The present publication allows students to apply in practice many of the theoretical concepts acquired as part of any operating systems course.
The projects currently offered cover the areas of process and resource management, scheduling, virtual memory, and file systems. Each project is described and specified in detail and generally offers multiple levels of difficulty. Each project also features knowledge checks throughout, which allow both the students and the instructor to monitor the knowledge acquired as the project is developed.
The projects are independent of each other and any subset may be assigned in any order. The expected implementations are also independent of any specific programming language, software system, or computer architecture and can be executed on students’ personal computers.
Additional information, included suitable test files, are available to the course instructors.
Project 1: Process and Resource Manager
Project 2: Process Scheduling Algorithms
Project 3: Virtual Memory
Project 4: File System