CS 520: Operating Systems

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

TA: Wei Jiang (wjiang1@stevens.edu)
Office Hours: Tuesdays, 3pm-5pm Lieb 212 Computer Vision Lab. 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 (Elearning). 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. 27
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. 3
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. 10
Scheduling, Deadlocks Ch.3
4
Sept. 17
Memory Management, Swapping, Variable Partitions, 2 student presentations (process communication and scheduling)
5
Sept. 24
Virtual Memory, Paging, Page Replacement Strategies Ch.4.1-4.32, Assignment 1 due
6
Oct. 1
Page Allocation, Page Size, Page Faults, Backing Store, Memory Segmentation, 2 student presentations (process communication and scheduling) Ch.4.4-4.8, Assignment 2
7
Oct. 8
File Systems, 2 student presentations (memory management)
8
Oct. 15
File System Implementation, 2 student presentations (memory management) 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. 22
Midterm (sample midterm questions - note actual exam will be longer!), Device I/O Assignment 2 due, Assignment 3 assigned
10
Oct. 29
2 student presentations (file systems, device I/O), 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
11
Nov. 5
Disks, 3 student presentations (file systems, device I/O)
12
Nov. 12
Disks, Network Terminals, 2 student presentations (file systems, device I/O) Ch.5.8, Assignment 3 due
13
Nov. 19
OS Security Issues, 2 student presentations (security) Ch.6.4.2-6.4.5, Ch.10.6.3, Ch.11.7 (up to 11.7.3 File Compression), Assignment 4
14
Nov. 26
NO CLASSES - Thanksgiving Recess
15
Dec. 3
3 student presentations (security) Assignment 4 due
16
Dec 10
Final Exam



Presentations

You must team up with one other person to decide on a presentation topic. Presentations are to be 30 mins. long (approximately 15 mins. for each person). Dates and topics are first-come-first-serve: Presentation Schedule

Suggested topics:

Samples:

Past presentation topics:



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