198:416 sections 01, 02 -- CS 416: Operating System Design, Spring 2008

Lecture: MW 3:20pm-4:40pm at ARC-105, Busch Campus
Recitations:
Section 01 -- W 12:15pm-1:10pm at SEC-220, Busch Campus
Section 02 -- W 1:55pm-2:50pm at ARC-206, Busch Campus

Instructor: Ricardo Bianchini
Email: ricardob@cs.rutgers.edu
Office Hours: by appointment over email, CoRE 307.

TA: Rekha Bachwani
Email: rbachwan@cs.rutgers.edu
Office Hours: Tuesdays 1:00pm-3:00pm

TA: Ana Paula Centeno
Email: anapaula@cs.rutgers.edu
Office Hours: Mondays 10:00am-noon

Announcements

Course Overview

CS 416 is a senior undergraduate course in operating systems. We will cover the basic concepts in operating systems, such as processes, threads, virtual memory, file systems, and communication protocols. If time permits, we will also cover a few interesting research topics, such as system support for scalable network servers. For the programming assignments, we will be using either C or C++.

This course is based on Rich Martin and Thu Nguyen's CS 416 course.

Pre-requisites

Students must have taken an undergraduate course in computer architecture (CS 211 or ECE 331) and an undergraduate course in software design/programming (CS 113 or CS 314 or ECE 252). The programming assignments require good programming skills and a lot of time and effort. Note that these requirements are very serious; you will not be able to keep up with this course's load, if you don't have the suggested background, programming skills, and time. Even if you do have the background and the skills, the course is very heavy on reading and programming assignments, so come very motivated!

Course Material

Evaluation

Programming Assignments

Lecture Notes (will be changing slightly in the next few days)

Cheating Policy

Exams and written homeworks in CS 416 must be strictly individual work. Programming assignments will be done in groups of 3 or 4 students. Collaboration with other groups on programming assignments is encouraged at the level of ideas. Feel free to ask each other questions, brainstorm on algorithms, or work together at a blackboard. You should not, however, copy the actual code for programming assignments, or copy the wording for written homeworks. This will be considered cheating and will be punished severely! For more details on the CS department's cheating policy, please go to this page.