CSE 760: Advanced Operating Systems


Instructor

Mario Lauria - office: DL783, ph.: 292-7027, hours: M 12:30-1:30pm (or any other time by appointment)

Grader

Joshua Levine - office:  DL474, ph.: 292-8578, hours: Thu 11:30-1:30 (note change from Tuesday 9:30-11:30am) - email: levinej@cse.ohio-state.edu

Course Description

Advanced operating systems concepts and mechanisms, such as process synchronization, process deadlock, distributed systems, atomicity, commitment, fault-tolerance, concurrency control.

Course Web site

http://www.cse.ohio-state.edu/~lauria/cse760/

Meeting time and place

Level and Credits

Prerequisites

Objectives

This course is intended to be a second course in operating systems for graduate students in computer science. The course is meant to provide a basic foundation in the design of advaced operating systems. Therefore, instead of discussing the design and structure of a specific operating system, the course emphasizes the fundamental concepts and mechanisms which form the basis of the design of advanced operating systems. This course provides an in-depth examination of the principles of distributed systems in general, and distributed operating systems in particular. Covered topics include processes synchronization, mutual exclusion, interprocess communication, distributed mutual exclusion, deadlock, fault tolerance, security in distributed systems, data consistency models, and, time permitting,  distributed middleware for computational grids and peer-to-peer systems. 

Text

Please note that I have decided to change textbook starting  with the Autumn 2004 offering of the course. The official textbook of the course is now  "Distributed Systems" by A. Tanenbaum and M. van Steen.  For some of the course topics the textbook content willl be supplemented with material from the Singhal's book; I will prepare handouts for these parts, but of course it will be beneficial if you could get hold of a copy of that book.

Topics

Number of Weeks
Topics Readings
1
Intro to Distributed Systems
Ch. 1 Tan (Sec. 1.1-1.5)
1 Process Synchronization
Ch. 2 Sing (Sec. 2.3-2.4)
1
Mutual Exclusion
Ch. 2 Sing (Sec. 2.5-2.6.1, 2.6.4-2.6.5)
1
Interprocess Communication
Ch. 2 Tan (Sec 2.1-2.4.2)
1
Distributed Mutual Exclusion  Ch. 5 Tan (Sec. 5.1-5.2, 5.4-5.5)
Ch. 6 Sing (Sec. 6.6-6.8, 6.10-6.11, 6.13-6.14)
1
Concurrency Control
Ch. 5 Tan (Sec. 5.6)
Ch 19, 20 Sing (Sec. 19.1-19.5,  20.1-20.4)
1
Deadlock
Ch. 3 Sing
1 Fault-tolerance  Ch. 7 Tan (Sec 7.1, 7.2, 7.5.1, 7.6.1, 7.6.2)
Ch. 12 Sing (12.5-12.8)
1
Security
Ch 14. Sing (Sec. 14.1-14.5, 14.7(Unix and Amoeba only))
Ch. 8 Tan (8.1.1, 8.2.1, 8.2.2, 8.5)

Grading Plan

Problem Sets 20%
Midterm Exam 40%
Final Exam 40%

Exam Schedule

Mid-term Oct  27 (F) (please note date change from Oct 25)
Final Exam  Dec 4 (M) 11:30am

Misc

HOMEWORK ASSIGNMENTS. The course will involve 4-5 homeworks assigned every alternate week. The homeworks will be due one week after they are assigned. No late homework will be accepted under any circumstances unless previously authorized by me; I will only consider serious,  undeferrable and documented circumstances (e.g. attending a conference, undergoing surgery).

READING ASSIGNMENTS. Some light readings will be assigned from the text book for self reading.

HANDOUTS. Right now I don't anticipate any handouts; however, if I come across something interesting and relevant to the course, its copies will be distributed in the class.

MAKE-UP EXAMS. Make-up examination will only be given under circumstances where a student is prevented from taking the regular examination due to unforeseen circumstances (e.g., sickness, flat tire), and a formal proof will be required to prove the prevailing circumstance. There is absolutely no make-up for the final examination.

STUDENTS WITH DISABILITY. Any student who feels he or she may need an accomodation based on the impact of a disability should contact me privately to discuss his or her specific needs. Please contact the Office for Disability Services at (614) 292-3307, or visit 150 Pomerene Hall, to coordinate reasonable accommodations available for students with documented disabilities.
 
ACADEMIC HONESTY. Students are expected to know and abide by OSU's policy on academic integrity. Any work you submit, whether in a homework set or on an exam, must be your own creation, unless exclusions are explicitly described. Collaboration is allowed for working out general principles and establishing your knowledge of the material presented in the course, but you should not show your work to another student, receive a copy of work done by another student, or copy any work created by another student - whether a paper or electronic copy. All instances of suspected academic misconduct will be reported to the department chairperson and the Committee on Academic Misconduct. Violations of the student code of conduct often result in the student receiving a failing grade in the course. The best way to avoid the temptation to cheat is to start on your assignments in time to ask for help from the instructor or grader. It is in your best interest to learn the material included on the homeworks in order to perform well on the exams. Don't jeopardize your GPA by flouting the standards of academic integrity expected of OSU students.


Assignements schedule

Homework 1 (assigned Oct 2 - due Oct 9)
Homework 2 (assigned Oct 9 - due Oct 16)
Homework 3 (assigned Nov 1 - due Nov 8)
Homework 4 (assigned Nov 8 - due Nov 15 )
Homework 5 (assigned Nov 17 - due Nov 29)

Slides

Sept 20 - Course overview, Distributed Systems intro (pdf)
Sept 22 - Mutual Exclusion (pdf)
Sept 25-27 - Semaphores (pdf)
Sept 29 - Monitors (pdf)
Oct 2 - Monitors: examples (pdf)
Oct 4 - Case study: Mars Pathfinder (pdf; Mike Jone's web page)
Oct 6 - Distributed Process Synchronization (pdf)
Oct 9 - Modern Forms of Process Synchronization (pdf)
Oct 11 - Logical clocks (pdf)
Oct 13 - Vector clocks (pdf)
Oct 16 - HW #1 discussion
Oct 18 - Distributed Mutual Exclusion: Lamport's alg. (pdf)
Oct 20 - Distributed Mutual Exclusion: Ricart-Agrawala, Maekawa algs. (pdf)
Oct 23 - HW #2 discussion.  Distributed Mutual Exclusion: Suzuki-Kasami alg. (pdf)
Oct 25 - Case study: process synchronization in an avionics system (courtesy of  Hussain Frosh - Harris Corp.)
Oct 27 - Midterm
Oct 30 - Distributed Transactions and Serializability (pdf)
Nov 1-3 - Concurrency Control: Lock-based Algorithms (pdf)
Nov 6 - Concurrency Control: Timestamp-based Algorithms. Election Algs. (pdf)
Nov 8 - Deadlock: definitions, theorems (pdf)
Nov 10 - University Holiday
Nov 13 - Deadlock: Banker's Alg. (pdf)
Nov 15 - HW #3 discussion
Nov 17 - Recovery in distributed systems (pdf)
Nov 20 - Fault tolerance in distr. systems: Voting protocols, Gifford's alg. (pdf)
Nov 22 - Fault tolerance in distr. systems: Two Phase Commit, Byzantine generals alg (pdf)
Nov 24 - University holiday
Nov 27 - Data security: cryptography (pdf)
Nov 29 - Computer security (pdf)
Dec 1 - Review (pdf)
Dec 4 - Final exam (grades)



Last updated: Dec 11


M. Lauria