CS 3204: Operating Systems - Fall 2002 Syllabus


Graduate Teaching Assistants

  • Name: Reenal Mahajan
  • E-mail: remahaja@vt.edu
  • Office: McB124
  • Office hours: M 9 - 11 AM, F 12 - 2 PM
  • Name: Scott Preddy
  • E-mail: spreddy@vt.edu
  • Office: McB 124
  • Phone: TBA
  • Office hours: T 3:30 - 5:00, W 4:00 - 5:30, H 3:30 - 4:30


MW 2:30 - 3:45 PM (Randolph 221 - CRN 91386), TH 2:00 - 3:15 PM (GBJ 100 - CRN 91388)


This course covers both theoretical and practical issues underlying operating system design and implementation. Lectures and homework assignments focus primarily on theoretical and conceptual aspects of operating systems. Programming projects focus on the application of concepts and implementation details.

Course Prerequisites:


The following book is required:
Operating Systems: A Modern Perspective, 2nd Edition, by Gary Nutt, Addison Wesley, 2001, ISBN: 0201741962.

Grade distribution

Scores in this class will be on a 1000 point scale distributed as follows
    Quizzes 50
    Homework 100
    Project 1 100
    Project 2 100
    Project 3 100
    Project 4 100
    Project 5 100
    Midterm Exam 150
    Final Exam 200

Quizzes - 50 pts

Short quizzes (including pop-quizzes without any prior notification) will be given during lecture sessions throughout the semester. Quizzes will mostly cover material from the previous and current lecture.

Homework - 100 pts

There will be a number of homework assignments that may consist of problems from the textbook or small programming assignments. All solutions should be submitted electronically using the curator system as a word, PDF or plain-text file.

Programming projects - 500 pts

The majority of your grade will come from individual programming assignments. There will be four or five programming assignments. The number of points each assignment is worth will be indicated on the assignment description. All programs have to be submitted to the curator system. Precise instructions regarding each individual submission will be provided with each assignment specification.

Exams - 350 pts

The midterm exam will cover approximately half the course material and is tentatively scheduled for the week of October 27. The final exam will be a comprehensive exam covering the entire course material and is scheduled for December 16, 1:05 PM - 3:05 PM for CRN 91386 and 3:25 PM - 5:25 PM for CRN 91388.

Note: There will be no make-up of the midterm or final exam, unless there is a valid reason. If you have a valid excuse for not being able to take the exam in the scheduled time-slot, please inform the instructor atleast 24 hours in advance. The request has to be accompanied by a letter from the Dean's office.

Grading Policy

Upon receiving grades for attendance, quiz, homework, or project, you have two weeks to question/contest your grade. After that, you will not be able to contest the grade which you received on an assignment, project, exam or quiz. This is to ensure that the grader remembers the grading criteria and is able to fairly consider any re-grading request.

Class web site, listserv and forum

The url for the class is http://courses.cs.vt.edu/~cs3204/fall2002/ali/. Announcements regarding availability of assignments and grades will be posted to the class listserv. The listserv address is L91386_91388@listserv.vt.edu. Every student who is registered by the first day of class is automatically subscribed to the class list. The listserv will be used primarily for announcements.

A discussion forum for the class is available at https://forum.cs.vt.edu/. The forum should be used for discussion about the projects rather than the class listserv. Questions (and answers) of relevance to the entire class will be posted to the class listserv by the instructor and/or the GTAs.

Posting of solutions to the listserv or forum is NOT permitted. The Honor Code applies to both the listserv and forum too.

Late Policy

Absolutely NO late homework assignments or projects will be accepted. Plan in advance to make sure that you submit before the deadline.

Operating System

All programming assignments and any homework assignments involving programming will be expected to run under Linux with gcc/g++. Assignments are expected to compile and execute on the Linux machines in the Computer Science undergraduate lab, which run Mandrake Linux 8.2. You are required to have a CS undergraduate lab account. See http://www.cslab.vt.edu/online.html for details on obtaining an account.

At least one assignment will require modifying the source code of the Linux kernel. To complete this assignment, you will need root access to the operating system. Since you cannot have root access in the CS undergraduate lab, you will be required to install Linux on your personal machine. It is recommended that you do this at the beginning of the semester as possible to identify any potential difficulties with this process.

You are encouraged to download and install the Mandrake system on your own machine. Information and downloads can be obtained from http://www.mandrake.org/. A local mirror site for downloading different versions of Linux, including the latest version of Mandrake, is http://raven.cslab.vt.edu/pub/Linux/. Installing Linux can be a tricky task, and differs widely depending on your own system configuration. The Virginia Tech Linux/UNIX User's Group http://www.vtluug.org/ is available to help you with this process.

The Honor Code

The Honor Code applies to this course and will be enforced. All graded assignments must be your own work. You may seek help during office hours from the instructor or the Graduate Teaching Assistants. Always give credit for work that is not entirely yours (e.g., parts of programs or homework answers borrowed from a book). You can find the Computer Science departmental policy on koofers at http://www.cs.vt.edu/academics/ugrad/Handbook/koof.html

Other notes

If any student needs special accommodations because of a disability, please contact the instructor during the first week of classes.

© Mir Farooq Ali, 2002.