Distributed and Parallel Systems
Weekly outline
-
Course Code : CC 755
Course Title : Distributed and Parallel Systems
Credit Hours : 3
Course Description
This course studies the fundamental aspects of distributed systems and applications. Early foundations and recent developments in distributed systems will be investigated. Both client-server and peer-to-peer application designs will be discussed. Other topics include sockets, reliability, replication, group membership protocols, clock synchronization, and logical timestamps.
Course Objectives
To introduce the students to the studies of distributed and parallel systems.
Marking Scheme
Midterm 20%
Seminar 20%
Project 30%
Final 30%
TextBook:
Andrew S. Tanenbaum, Maarten van Steen, Distributed Systems: Principles and Paradigms (Second Edition), Prentice Hall, 2006
Ajay D. Kshemkalyani, Mukesh Singhal, Distributed Computing: Principles, Algorithms, and Systems, CAMBRIDGE UNIVERSITY PRESS, 2008
Roger Wattenhofer, Principles of Distributed Computing, Swiss Federal Institute of Technology, Spring 2015
-
Absent for a conference in Aswan: The 2016 33rd National Radio Science Conference (NRSC)
-
Week 1: Distributed Architectures & Challenges
-
Week 2: Basics Review: Software Engineering, Operating Systems, Networks, Communication & Naming
-
Week 3: Synchronization
-
Week 4: Consistency
-
Week 5: Replication & Fault tolerance
-
Week 6: Socket Programming & RPCs
-
Week 7: RMI
-
Week 9: MPI
-
Week 10: Midterm & MPI II
-
Week 11: Cancelled
-
Week 12: Web Services
-
-
Week 14: Seminars & Project Presentations
-
Exam