CIS332-004, CIS 332-104 (Spring 1996) PRINCIPLES OF OPERATING SYSTEMS

Professor: Franz J. Kurfess

Home page:http://www.cis.njit.edu/franz   E-mail:franz@cis.njit.edu 

Project CIS 332

One of your assignments for the course is a project, contributing 30% to your overall grade. For your project, you can choose between three options: These three options are described in more detail below. There is actually a forth option, community service. Those of you interested in that option should already have contacted the Office of Community and Public Service; please follow the deadlines and format for the research paper.

You have to submit the project in two stages: first a short outline in which you describe the structure of your paper / program / Web page(s), and then the final version, which is the full paper, complete program, or complete set of Web pages.

The deadlines are

Research Paper:

For this research paper, you have to demonstrate the ability to read an article from a professional research journal (like IEEE Computer or Communications of the ACM), describe its main ideas in your own words, and use the knowledge you acquired in class. The task is to read the paper "An Investigation of the Therac-25 Accidents" by Nancy G. Leveson and Clark S. Turner, IEEE Computer July 1993, pages 18-41, and write a research paper on the issues relevant to the topics discussed in class. A copy of the article can be found in the library (CIS 332 / Kurfess).

Your paper should be 7-10 pages long; however, it is not the number of pages that makes a good paper but the contents. My evaluation will be based on the following criteria:

Some hints: Here is an example for the structure of such a paper:
Possible questions for students:

Ada Implementation

Your task here is to implement the Dining Philosophers problem in Ada, based on the pseudocode given in the textbook on page 194. You should use the Ada task constructs and the Ada rendezvous between tasks for the required synchronization between the philosophers.

Most of this implementation is fairly straightforward, you simply have to convert the code into the corresponding Ada constructs. Note, however, that there are a few cases where this conversion is not immediately obvious; you might have to define some data structures and functions of your own.

World Wide Web Page

In this case, you have to put together material about one particular operating system of your choice (e.g. Unix, VMS, DOS, Windows, MacOS) and arrange it into a collection of WWW pages, reflecting the topics discussed in class, and how "your" operating system tackles these issues. This option can also be solved as a team effort; if you want to work as a group on it, please talk to me first and get my approval.
World Wide Web Hints
Where to find further information, e.g. how to install your own home page on the hertz system.

CIS 332 Principles of Operating Systems Spring 1996; Franz Kurfess.