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
- MWF 11:30-12:18 -- DL 0713
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
- Distributed Systems by
A. Tanenbaum, M. van Steen, Prentice Hall, 2002 (Tan)
- Additional reading:
- Advanced Concepts in Operating Systems by Singhal and
Shivaratri,
McGraw-Hill Inc., 1994 (Sing)
- Operating System Concepts
by Silberschatz, Galvin, Gagne, Wiley & Sons, 2002
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