CMPSC-F635-A

Section: 
A
Instructor: 
Zinoviev, Dmitry
Meeting Information
Semester: 
Fall 2009
Days and Times: 
MW 04:00PM - 05:15PM
Final exam
Time: 
Wed, 12/16/2009 - 5:40pm7:30pm

Textbook

Prerequisite

Description

The topic of the course is distributed systems, including middleware, as well as operating system support for distributed systems. The course addresses such issues as communications between distributed entities, identification of mobile and distributed entities (naming), synchronization and consistency in distributed systems, and fault tolerance. Security issues will be considered, time permitting. As a part of the course, students will develop a working distributed system.

Homework

There will be three major programming projects in three different languages: C/sockets, C/Corba, and Erlang, as well as several pencil-and-paper assignments. Late returns will not graded (no exceptions, unless you had a medical condition).

Exams

There will be two 75-minute intermediate exams and the final exam.

Tentative Schedule

Class Topic Homework
9/9 What is a distributed system? HW1 OUT
9/14 Distributed software
9/16 Communications (OSI approach)
9/21 RPC/RMI
9/23 Message-Oriented Systems  
9/28 Threads for Distributed Systems. Servers  
9/30 Code migration HW1 IN
10/5 Code migration HW2 OUT
10/7 Name spaces  
10/12 No class!  
10/14 Name spaces  
10/19 Locating mobile entities  
10/21 TEST  
10/23 Synchronization: Physical and Logical Time  
10/26 Synchronization: Physical and Logical Time HW2 IN, HW3 OUT
10/28 Synchronization: State and Elections  
11/2 xxxxx  
11/4 xxxxx  
11/6 xxxxx  
11/9 Synchronization: Distributed Transactions  
11/11 No class!  
11/13 Consistency and replication HW3 IN
11/16 "Inconsistent" (client-centric) consistency  
11/18 Distribution protocols. Consistency protocols  
11/23 Fault tolerance. Process resilience
11/25 No class!  
11/30 Reliable P2P and C/S communications  
12/2 Reliable group communications
12/7 Distributed commit  
12/9 Recovery  
12/16 FINAL EXAM (5:40pm7:30pm)  

Grade Calculation

The estimation of your course grade will be calculated using the following weights for the components of the grade: each intermediate exam - 20%; homework assignments - 30%; final exam - 30%. I reserve the right to amend your final grade, based on my own judgement. This is a graduate course, so the lowest passing grade is ``C.''