![]()
These projects and associated exercises have been designed to complement Operating Systems courses based on "Operating Systems - Internals and Design Principles", William Stallings, Prentice Hall, 5th Edition, 2004.
The exercises provide incremental solving of the problems presented for the projects. It is recommended that all the exercises be completed in the suggested order to be able to address the projects properly. The exercises assume that students will be using the C programming language on a UNIX platform. However, there is no reason why other languages (C++, Java, even Perl,...) could not be used on this or other platforms. The level of programming expertise required is that provided by a 1st year Programming course. A familiarity with the use of pointers and the ability to use linked lists is assumed.
![]()
Projects 1st Project - A Simple Shell 2nd Project - The HOST Dispatcher Shell Reference Material Standard C Library Reference The GNU C Library Reference (most up-to-date version available from http://www.gnu.org/software/libc/) C Programming Debugging Guide (gdb) Debugging With The GNU Symbolic Debugger (most up-to-date version available from http://www.gnu.org/software/gdb/) Exercises Exercise 1 - The Operating System Shell Exercise 2 - Rolling Your Own Shell Exercise 3 - Enhancing Your Shell Exercise 4 - Adding fork and exec To Your Shell Exercise 5 - I/O Redirection Exercise 6 - Finishing Off Your Shell
1st Project deadline Exercise 7 - A Batch Process Monitor Exercise 8 - A Round Robin Dispatcher Exercise 9 - A Feedback (q=1) Dispatcher Exercise 10 - Memory Allocation Exercise 11 - Resource Allocation Exercise 12 - Polishing Your Dispatcher 2nd Project deadline
For use only by students and instructors using the supplementary material available with the text book: "Operating Systems - Internals and Design Principles", William Stallings, Prentice Hall, 5th Edition, 2004. Not to be printed out or copied by any other persons or used for any other purpose without written permission of the author(s).
©