CS 3204: Operating Systems - Syllabus (Spring 2005)

Instructor

Graduate Teaching Assistant

Description

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:

Textbook

The following book is required:
Operating System Concepts, 7th Edition , by Abraham Silberschatz, Peter Baer Galvin, Greg Gagne, Wiley, 2004, ISBN: 0-471-69466-5.

Grade distribution

Scores in this class will be on a 1000 point scale distributed as follows
Item Points
Quizzes 50
Homework 100
5 Projects 500
Midterm Exam - I 100
Midterm Exam - II 100
Final Exam 150

Quizzes - 50 pts

Short quizzes will be given during lecture sessions throughout the semester. Quizzes will mostly cover material from the previous lectures.

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 plain-text file.

Programming projects - 500 pts

The majority of your grade will come from individual programming assignments. There will be five programming assignments. The number of points per assignment 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

There will be three exams in this class. The midterm exams will cover approximately two-thirds the course material and will be tentatively scheduled February and March, respectively. The final exam will be a comprehensive exam covering the entire course material and is scheduled for May 10th, 3:25 PM - 5:25 PM.

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/spring2005/ali/. Announcements regarding availability of assignments and grades will be posted to the class listserv. The listserv address is CS3204_11528@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 and clarifications.

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 programming 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. You are required to have a CS undergraduate lab account. See http://admin.cs.vt.edu/ for details on obtaining an account.

At least one assignment might 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 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 ftp://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 Assistant. 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

Students with Disabilities: If you need adaptations or accommodations because of a disability (learning disability, attention deficit disorder, psychological, or physical), if you have emergency medical information to share with the instructor, or if you need special arrangements in case the building must be evacuated, please meet with the instructor as soon as possible.

© Mir Farooq Ali 2005.