Sample Syllabus


Catalog Description:Overview of operating systems. CPU scheduling, process concept, suspend and resume, interrupt processing, and multiprogramming. Concurrent processes, the critical section problem, mutual exclusion, semaphores, process coordination, and communication and synchronization. CPU scheduling algorithms. Deadlocks, conditions for deadlock, deadlock detection, and avoidance. Memory management, memory management schemes-single contiguous, static and dynamic partitions, relocatable partitions, paging, demand paging, and page replacement strategies. Secondary storage management, disk scheduling concepts, and algorithms. Students will be given programming assignments on a regular basis. This course is not centered on any particular operating system or hardware; instead, it covers fundamental concepts that are applicable to a variety of systems. Prerequisites: CS 590 and CS 550 or their equivalents.

Textbook(s)


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

Recommended: None.


Week-By-Week

Week
Topics Covered
Reading
Assignments
1

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
Mutexes, Monitors, Message Passing, Remote Procedure Call (RPC), Scheduling, Deadlocks Ch.8.2.3-8.2.4, Ch.2.5,
Programming assignment 1
3
Scheduling, Deadlocks
Ch.6
4
Memory Management, Swapping, Variable Partitions
Ch.3.1, 3.2

5
Virtual Memory, Paging, Page Replacement Strategies
Ch.3.3 Programming assignment 2
6
Page Allocation, Page Size, Page Faults, Backing Store, Memory Segmentation Ch.3.4
7
File Systems
Ch.4.1, 4.2

8
File System Implementation
Ch. 4.3

9
Device I/O
Ch.5.1,
Programming assignment 3
10
I/O, Devices, Device Drivers, Plug-n-Play, Streams
Ch. 5.2, 5.3

11
Disks,
Ch. 5.4

12
Disks, Network Terminals, Ch. 5.4, 5.7

13
OS Security Issues,
Ch. 9
Programming assignment 4
14
Student presentation, final review