CS 492: Operating Systems

Prof. Wendy Hui Wang 
Tuesdays 2:00-3:15pm, Babbio 210.

Thursdays 2:00-3:15pm, McLean 104.
Office Hours: Tuesdays 3:30-4:30pm, 620 Babbio Center. All other times by appointment.

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


Prerequisites

  • CS 383 Computer Organization and Programming
  • CS 385 Data Structures and Algorithms II

Textbook

Required

  • Modern Operating Systems, 2nd Ed., by Andrew S. Tanenbaum, ISBN 0-13-031358-0

Grading Policy

Assignment Breakdown

  • Assignments 50%
  • Midterm 20%
  • Final 30%

Submission Policy

All assignments are due at 11:59pm (midnight) on the due date. Assignments are to be submitted using WebCT/Elearning. You need to login using your Stevens Pipeline account which should have been created for you upon enrollment..

Late Policy

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 midnight the day after the due date, and so on. Assignments may be turned in late up to 5 days after the due date/time.


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

Jan 15

Introduction (PPT, PDF)

Ch.1

2

Jan 17

Processes (PPT, PDF)

Ch.2.1-2.2

3

Jan 22

Processes, Threads, Interprocess Communication (critical regions, mutual exclusion) (PPT1, PPT2)

Ch.2.3.1-2.3.4,  Assignment 1

4

Jan 24

Interprocess Communication (mutual exclusion, Semaphores)PPT,

Ch.2.3.4-2.3.5

5

Jan 29

Interprocess Communication (Monitors, Message Passing, Remote Procedure Call (RPC)) PPT,

Ch.2.3.5-2.3.9, Ch.8.2.3-8.2.4

6

Jan 31

Scheduling PPT

Ch.2.5

7

Feb 5

Deadlocks PPT

Ch.3

8

Feb 7

Deadlocks PPT

Ch. 3

9

Feb 12

Memory Management PPT

Assignment 1 due,

Assignment 2 . Ch.4.1

10

Feb 14

Memory allocation & deallocation  PPT

Ch.4.2-4.3,

11

Feb 19

No Class - Monday Class Schedule

 

12

Feb 21

Virtual Memory, Paging PPT

Ch.4.3

13

Feb 26

Page Replacement Strategies  (I)  PPT

Ch.4.4-4.5

14

Feb 28 

Page Replacement Strategies  (II)  PPT

Assignment 2 due

15

Mar 4

Design and implementation issues of paging system PPT, midterm review

Assignment 3 Ch 4.6, 4.7.

16

Mar 6

Midterm  (Midterm Sample Questions)

 

17

Mar 11

Midterm performance review;

Memory Segmentation PPT

Ch.4.8

18

Mar 13

I/O, Devices PPT

Ch.5.1

19

Mar 18

NO CLASS (Spring break)

 

20

Mar 20

NO CLASS (Spring break)

 

21

Mar 25

I/O hardware/software PPT

Ch. 5.1.5, 5.2

22

Mar 27

I/O Software layers, Disk hardware PPT

Assignment 3 due. Ch.5.3, 5.4.1

23

Apr 1

Disks PPT

Assignment 4.Ch. 5.4.2-5.4.5

24

Apr 3

File System (I): concepts PPT

Ch.6.1, 6.2

25

Apr 8

File System (II): directories, file implementation PPT

Ch.6.3

26

Apr 10

File System(III): management and optimization PPT

Ch 6.3

27

Apr 15

Distributed System   PPT

Ch. 9.1, 9.2,

28

Apr 17

Security I PPT

Ch 9.1, 9.2

29

Apr 22

Security II PPT

Ch 9.4, 9.5, 9.6 

30

Apr 24

Course summary, final review PPT

 

30

Apr 29

Q&A

 

31

May 6

Assignment 4 Due

 

31

May 12

Final Exam

 

 


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