Operating System Design/Case studies

The goal of this book is to discuss the different issues involved in operating system design, the different strategies that have been tried and to provide concrete examples where possible. Given the number of open-source operating systems available, specific implementations will be used as examples where possible.

Example Operating Systems
Naturally, open source operating systems lend themselves to teaching more than proprietary operating systems. The source code of all the following operating systems is available free of charge online:


 * Linux
 * Net/Free/OpenBSD
 * Solaris
 * MINIX
 * GNU Hurd
 * XOK
 * ReactOS

While the following operating systems are closed source, enough is known about their implementation that they can all be used as specific examples of approaches to various OS design issues and tasks.


 * Mac OS X
 * Microsoft Windows 9x
 * Windows NT
 * QNX
 * DOS
 * HP-UX
 * AIX
 * BeOS

Example filesystems

 * FAT
 * NTFS
 * ext4

Case Study Areas
The following areas of operating system design can all be illustrated with specific examples from real operating systems. In some cases different approaches to the same task can be seen within one OS. For example, many operating systems support multiple file system types.


 * Loading the operating system
 * Initialising the operating system for use
 * Managing tasks (processes)
 * Managing memory
 * File systems and storage management
 * User interfaces

For example, in the "Managing tasks" section we might use the example of task management in a single tasking operating system like DOS, as well as some of the different scheduling algorithms that have been used in various multitasking operating systems.

The case study can include comparative analysis about any concept of different operating systems or comparison between the different versions of same operating systems. It can include the total functionality of the operating system given.