CS 520: Operating Systems

Prof. Quynh Dinh
Wednesdays 6:15-8:45pm, Pierce 218.
Office Hours: Wednesdays 3:30pm-4:30pm, Lieb Building rm.302. All other times by appointment.

TA: Ye Wu (ywu1@cs.stevens.edu)
Office Hours: Tuesdays, 5pm-6pm Lieb 102. All other times by appointment.


Prerequisites



Text

Required



Grading Policy

Assignment Breakdown

Submission Policy

All assignments are due at 11:55pm on the due date. Assignments are to be submitted using WebCT. Login using your Stevens Pipeline account which should have been created for you upon enrollment.

Late Policy

For each assignment, you can submit the assignment up to one week late, but no later. 10 points (out of 100) will be taken off for each day that an assignment is turned in late. In other words, 10 points will be taken off if the assignment is turned in before 11:55pm the day after the due date, and so on. Assignments may be turned in late up to 5 days after the due date/time.

Collaboration

Please see policy on collaboration.


Syllabus

Warning: The links below are to MS Powerpoint slides which can augment your notes. These slides do not completely cover topics discussed in class or in reading assignments. Solutions to exam questions and programming assignments may not appear in the slides.

The following is a tentative schedule and is subject to change.

Lecture
Date
Topic
Assignment
1
Aug. 29
Introduction, System Calls, Processes, Threads, Interprocess Communication, Critical Section, Mutual Exclusion, Producer-Consumer, Hardware-enabled Locking, Semaphores Ch.1, Ch.2.1-2.4, p.864-866
2
Sept. 5
Mutexes, Monitors, Message Passing, Remote Procedure Call (RPC), Scheduling, Deadlocks Ch.8.2.3-8.2.4, Ch.2.5, Ch.3, Assignment 1
3
Sept. 12
Scheduling, Deadlocks Ch.3
4
Sept. 19
student presentations (process communication and scheduling)
5
Sept. 26
Memory Management, Swapping, Variable Partitions, Virtual Memory, Paging Ch.4.1-4.32, Assignment 1 due
6
Oct. 3
Page Replacement Strategies, Page Allocation, Page Size, Page Faults, Backing Store, Memory Segmentation Ch.4.4-4.8, Assignment 2
7
Oct. 10
student presentations (memory management)
8
Oct. 17
File Systems, File System Implementation Ch.6.1-Ch.6.2, Ch.6.3.1, 6.3.2, 6.3.5, 6.3.6 (file system consistency), 6.3.7
9
Oct. 24
I/O, Devices, Device Drivers, Plug-n-Play, Streams Ch.5.1-5.4, 5.6, 5.8, Ch.10.5.3-10.5.4, Ch.11.6.4, Assignment 2 due, Assignment 3 assigned
10
Oct. 31
Midterm (sample midterm questions - note actual exam will be longer!)
11
Nov. 7
student presentations (file systems)
12
Nov. 14
Disks, Network Terminals Ch.5.8, Assignment 3 due
13
Nov. 21
NO CLASSES - Thanksgiving Recess Assignment 4
14
Nov. 28
OS Security Issues Ch.6.4.2-6.4.5, Ch.10.6.3, Ch.11.7 (up to 11.7.3 File Compression)
15
Dec. 5
student presentations (device I/O and security) Assignment 4 due
16
Dec 10 or 12?
Final Exam



Presentations

Presentation schedule

Presented topics:

Suggested topics:

Samples:



Assignments

Programming Assignment #1
Programming Assignment #2
Programming Assignment #3
Programming Assignment #4


Equipment and Facilities

You will be using C or C++ under Unix (netBSD machines or guinness). Burchard 127 has Unix terminals availabel for CS students. You may develop and debug all your code on any machine you like, but before you submit your homework make sure it compiles and runs on NetBSD. If you don't already have a computer account, make sure you get one, by contacting the CS system administrator.


Resources