CS550 Advanced Operating Systems
Prerequisites
- CS450 Operating Systems
All information provided here are tentative and subject to
minor change
General Information
-
Instructor
- Zhiling Lan, email: lan@iit.edu
- Suart Bulding #208E, phone: 312-5675710
- Office Hours: Tuesday and Thursday, 10:20am - 11:20am
Course Description
This course covers general issues of design and implementation of advanced modern operating
systems. The focus is on issues that are critical to the applications of distributed systems
and computer networks, which include interprocess communication, distributed processing,
sharing and replication of data and files. Approximately two third of the course will be
devoted to basic concepts and techniques, and the remaining third will be on assorted current
topics in modern operating systems and distributed systems.
Course Materials
-
Textbook
- Andrew S. Tanenbaum and Maarten van Steen
- Distributed Systems: Principles and Paradigms
- Prentice Hall, 2nd Edition, 2007. (Required)
Lectures
- (Lecture 1) Introduction to distributed systems
- (Lecture 2) Issues in communication
- (Lecture 3) Remote Procedure Call
- (Lecture 4) Remote Method Invocation
- (Lecture 5) Message- and Stream-Oriented communication
- (Lecture 6) Processes and threads
- (Lecture 7) Code migration and distributed scheduling
- (Lecture 8) Naming (1)
- (Lecture 9) Naming (2)
- (Lecture 10) Clock Synchronization
- (Lecture 11) Distributed mutual exclusion and distributed deadlocks
- (Lecture 12) Distributed transaction
- (Lecture 13) Consistency models
- (Lecture 14) Replication
- (lecture 15) Fault tolerance
- (Lecture 16) Distributed committ and failure recovery
- (Lecture 17) Distributed file systems
- (Lecture 18) NFS
- (Lecture 19) AFS & coda
- (Lecture 20) Security in distributed systems
- (Lecture 21) Security: authentication
- (Lecture 22) Current trends
- (Lecture 24) Course wrapup
Grading:
- 9% Three written homeworks
- 42% Three programming assignments
- 28% exam
- 21% project