EE 382 N : DISTRIBUTED SYSTEMS
Instructor: Prof. Vijay Garg
Office: ACES 5.436
Phone: 471-9424 ;
e-mail: garg AT ece.utexas.edu;
Office Hours: Tue, Thu 1:30-3:00 PM (or by appointment);
Pre-requisites: Programming experience, Graduate standing
Course Contents: This will be an introductory graduate level course in
distributed systems. It will expose students to theoretical
as well as practical aspects of designing such systems.
The course assumes that the student has some familiarity with
programming. There is no final exam but there will be three tests during the course.
The following topics will be covered in the course:
Grading: 25% Assignments, 5% Class Presentation,
20% Term paper, 15% Test 1, 15% Test 2, 20% Test 3. All tests would be held in-class.
Programming Concepts: Datagram Sockets, TCP sockets, Java RMI, Map Reduce Abstraction
Models of Distributed Computation: Interleaving model, Happened before relation
Time: Logical clocks, vector clocks, direct dependency clocks,
Resource Allocation: Mutual Exclusion, Drinking Philosophers, Election
Global Property Evaluation:
Chandy and Lamport's algorithm, termination detection, unstable properties.
Ordering of Messages: causal, total, multicast protocols.
Global Computation: Elections, Spanning Trees, Synchronizers.
Consensus: FLP Result, Synchronous systems, Byzantine Agreement
Fault-tolerance: Failure Detectors, Checkpointing, optimistic and pessimistic recovery,
Self-stabilizing algorithms, Replicated and Fusible State Machine Approaches.
Concurrent and Distributed Computing in Java by Vijay K. Garg,
Wiley & Sons, 2004.
Course Evaluation: Standard
Add/Drop Policy: Standard
"The University of Texas at Austin provides upon request appropriate
academic accommodations for qualified students with disabilities. For
more information, contact the Office of the Dean of Students at
471-6259, 471-4641 TTY."