Operating Systems

CS 325
Spring 2009



Instructor:
Thomas P. Kelliher
Hoffberger 140
Office phone: (410) 337-6189
Home phone: (410) 931-2946
Cell: Available upon request.
kelliher[at]goucher.edu
http://phoenix.goucher.edu/~kelliher/
Office hours: MWThF 11:00am-12:00pm. Other times by appointment.

Class:
Hoffberger 149
MWF 1:30-2:20pm
http://phoenix.goucher.edu/~kelliher/s2009/cs325/

Objectives:
Our main objective is to learn how modern operating systems are designed, through study of their fundamental pieces and through studying, modifying, and building upon the Linux kernel.

Here are some key features of recent operating systems:

Two other objectives:

  1. To understand concurrent processes/threads and how to control that concurrency.
  2. To appreciate that all an operating system is, when decomposed, is a collection of algorithms and data structures.

Textbooks:
  1. A. Silberschatz, P. B.  Galvin, and G. Gagne, Operating Systems Concepts, 8th ed., Wiley, 2009. Required.
  2. S. P. Harbison and G. L. Steele, Jr., C: A Reference Manual, 5th ed. Prentice Hall, 2002. Optional, not available in College bookstore.

Grading:
Grade Distribution

A = [92%-100%], A- = [90%-92%), B+ = [88%-90%), B = [82%-88%), B- = [80%-82%), etc. Grades are ``one point rounded.''

Course Point Distribution

The following is tentative. There are approximately 750 total points for the course.

  1. Assignments -- There will be three or four written assignments. Each assignment will be worth 50 points.

  2. Projects -- There will be three projects involving the Linux kernel:
    1. Implement a loadable kernel module, 75 points.

    2. Implement a system call, 75 points.

    3. Modify the short term scheduler and benchmark it against the standard scheduler, 100 points.

    These projects will be implemented within a virtualized Linux environment.

  3. Exams -- There will be two semester exams and a comprehensive final. Each will be worth 100 points. Tentatively, the midterms will be February 27 and April 10. The final will be May 15 at 12:00 pm.

Current grades (password protected) may be viewed on the class home page.

Course Handouts:

Course handouts may be made available once in class. They may always be obtained from the class home page.

Group Work:
This course may involve a significant amount of group work. Each of you is expected to perform your fair share of the work and document the work you do. Those who shoulder substantially more or less of the group's workload may have their grades adjusted accordingly.

Participation:
Attendance of classes, while not required, is quite important. Attendance and participation are necessary learning components. Please inform me beforehand if you will be absent. Remember that you are responsible for making up missed work.

Electronic Communication:

From time-to-time, I will need to send e-mail messages to the class. These messages will be addressed to your official Goucher e-mail addresses. You are responsible for checking your e-mail on a timely basis.

Distractions:
Cell phones must be turned off or set to ``silent'' during class. If you must enter late, do so as unobtrusively as possible. Likewise if you must leave early. Please use mental telepathy if you must hold a personal conference during class. I have ways of making you not talk!

Integrity:
Academic dishonesty will not be tolerated. We are all bound by the Academic Honor Code.



Thomas P. Kelliher 2009-01-27
Tom Kelliher