Distributed and Parallel systems
Weekly outline
-
CC 529 – Distributed and Parallel systems
Credits Hours: 3Hrs
Contact Hours: In Lecture 2Hrs, and In Tutorial 2Hrs
Instructor Name: Dr. Manal Helal
Coordinator Name: Prof. Dr. Attala HashadText book:
Andrew S. Tanenbaum and Maarten van Steen, “Distributed Systems: Principles and Paradigms”, Prentice Hall, latest edition.
Specific course information
a. Catalog description
Distributed systems and applications - Recent developments in distributed systems - Client-server and peer-to-peer application designs - Sockets - Reliability - Replication - Group membership protocols - Clock synchronization - logical timestamps.
b. prerequisites or co-requisites: CC431
c. Types of Course ( required, elective, or selected elective course) in the program Elective Course
a. Specific outcomes of instruction
After the completion of this course the students will be able to:Course Learning Outcomes SO 1 Understand the fundamental aspects of distributed systems and applications. C 2 Master client-server and peer-to-peer application designs. C,K 3 Cope with state of the art technologies in distributed systems. I,J Topics to be covered
- Introduction to distributed architectures
- Communication among systems
- Naming
- Synchronization
- Consistency
- Replication
- Fault tolerance
- Distributed object based systems
- Distributed file systems
- Distributed web-based systems
- Distributed coordination-based systems
-
Week 1: Introduction to Distributed Systems (Ch 1)
ILOs:
- Understand the Goals of building a distributed Systems
- Differentiate the types of DS
-
Week 2: DS Architecture (Ch 2)
ILOs:
- Differentiate Centralised, decentralised, and hybrid DS systems
-
15th of October: New Hijri Year 1437
-
Week 4: Processes (CH 3)
ILOs:
- Understand the difference between a thread, a process and a processor
- Appreciate the role of virtualisation in DS
- Understand the Design Issues in creating client and server processes
- Understand the different Code Migration Approaches
-
Week 5: Communication (Ch 4)
ILOs:
- Review some network Fundamentals
- Understand how RPC operates
- Understand Message Oriented Communication requirements
- Understand Stream Oriented Communication requirements
-
-
Week 7: Exam:
-
Week 8: Naming (CH 5)
ILOs:
- Understand Flat, structures and attribute-based Naming approaches and requirements
-
Week 9: Synchronisation (Ch 6)
ILOs:
- Differentiate Physical Clock and Logical Clock Synchronisation approaches
- Understand Mutual Exclusion Algorithms
-
Week 10: Consistency & Replication (Ch 7)
ILOs:
- Differentiate Data Centric and Client-Centric Approaches to Consistency between Replicas
-
Week 11: Fault Tolerance (CH 8)
ILOs:
- Know the different Types of Failures that could occur in a DS
- Understand Fault Tolerance by creating groups (replicas) that communicate to detect failures and mask the failure
-
Week 12: Exam:
-
-