CSCI-4210 Operating System Fundamentals
Course Information Sheet

Fall 1998


Instructor: Moorthy
Office: Amos Eaton 112
Office Hours: F: 2:00-4:30pm; Most questions can be answered through email.
Office Phone: 276-6911
Email: moorthy@cs.rpi.edu
URL: http://www.cs.rpi.edu/~moorthy

Course Objective

In this course you will learn about the design and implementation of Operating Systems.
We will consider:

* Independent and Cooperating Processes

* Synchronization of Cooperating Processes

* Process Scheduling

* Memory Management, Virtual Memory

* I/O and File Systems

* System Security

* Distributed Operating Systems

* Performance Analysis (if time permits)


The Text?

We will use "Operating System Concepts, 5th Edition" by Silberschatz and Galvin as the primary text. We will also supplement this text with outside material. This material will either be handed out in class or made available in the library.

What Should I Already Know?

Familiarity with programming in C or C++ is required. If you don't know the C programming language well, you should be prepared to learn it quickly. If you are missing any of the prerequisites, please come and talk to me.

How Will I Be Evaluated

Course grade will be based upon:

* Pratice Problems: There will be three practice problem sets assigned throughout the semester. These will essentially help ypu prepare for the exams. They will not be graded, but you are strongly advised to solve them.

* Exams: There will be two exams during the semester and a comprehensive final exam. The two exams will each count for 15% of your final grade, and the final exam will count for 20%, for a total of 50%.

* Projects: There will be three programming projects assigned throughout the semester. These projects will count for a total of 50%.


Academic Honesty

The following guidelines pertain to the evaluation items listed above:

* Practice problems are intended to reinforce important concepts and are meant to be a learning experience. Discussion among students is encouraged. however students must separate at the time of actually writing the answers. Understanding the pratice problems will be essential to successful completion of the course. "Copying" will not be in your best interest. Each studetn must keep a record of his attempted solutions of the practice problems.

* Exams are intended to gauge your understanding of the course material. No collaboration of any kind is permitted.

* Projects are essential for gaining "real world" experience in Operating System development. They are meant to be individual efforts. Collaboratio is not permitted. Students must ensure that their code is read-protected. (See chmod man pages for details.

Students unfamiliar with the academic honesty policies of RPI should consult the appropriate sections of the Rensselaer Manual. I am extremely serious about this matter. Cheating will not be tolerated. You have been warned!


How can I cnotact you?

My office is in AE-112. You can drop in anytime during my office hours. My office phone is x-6911. The fastest method of communication is through email: moorthy@cs.rpi.edu.


Where will we do our projects?

Course projects may be done on RCS using the C or C++ or Java programming language.


Other Course Policies

Late projects will not be accepted. You are encouraged to start early and finish your assignments on time. Since exmas will be given in class, make-up exams will not be given. I am willing to work around these rules in cases of substantiated medical emergencies or if you contact me well in advance with a genuine reason/conflict.