This course is part of the B.E. Computer Science Engineering curriculum under Anna University Regulation 2021. The knowledge from this course continues to be actively applied in professional software development.
Semester 5 (Third Year)
3 Credits
45 Lecture Hours
Course Overview
UniversityAnna University
Regulation2021
Semester5
Credits3
TypeCore
Units5
Course Objectives
1
To understand distributed system concepts
2
To learn logical time and global state algorithms
3
To understand distributed mutex and deadlock detection
4
To learn consensus and recovery mechanisms
5
To understand cloud computing concepts
Syllabus
Detailed unit-wise breakdown of the course curriculum as per Anna University Regulation 2021.
1
INTRODUCTION
9 Hours
Definition of Distributed ComputingRelation to Computer System ComponentsMotivationMessage-Passing vs Shared Memory SystemsPrimitives for Distributed CommunicationSynchronous vs Asynchronous ExecutionsDesign Issues and ChallengesA Model of Distributed ComputationsModels of Communication NetworksGlobal State of Distributed System
2
LOGICAL TIME AND GLOBAL STATE
9 Hours
Physical Clock Synchronization – NTPFramework for Logical ClocksScalar TimeVector TimeMessage Ordering ParadigmsSynchronous vs Asynchronous CommunicationGroup CommunicationCausal Order and Total OrderSnapshot Recording AlgorithmsSnapshot Algorithms for FIFO Channels
3
DISTRIBUTED MUTEX AND DEADLOCK
9 Hours
Distributed Mutual ExclusionLamport's algorithmRicart-Agrawala's AlgorithmToken-Based AlgorithmsSuzuki-Kasami's Broadcast AlgorithmDeadlock Detection in Distributed SystemsSystem Model and PreliminariesModels of DeadlocksChandy-Misra-Haas AlgorithmAND model and OR Model
4
CONSENSUS AND RECOVERY
9 Hours
Consensus and Agreement AlgorithmsProblem DefinitionAgreement in Failure-Free SystemsSynchronous and Asynchronous AgreementAgreement with FailuresCheckpointing and Rollback RecoveryIssues in Failure RecoveryCheckpoint-based RecoveryCoordinated Checkpointing AlgorithmAsynchronous Checkpointing and Recovery
5
CLOUD COMPUTING
9 Hours
Definition of Cloud ComputingCharacteristics of CloudCloud Deployment ModelsCloud Service ModelsDriving Factors and ChallengesVirtualizationLoad BalancingScalability and ElasticityReplication and MonitoringCompute ServicesStorage ServicesApplication Services
Course Outcomes
Upon completion of this course, students will be able to:
CO1
Understand distributed system models
CO2
Implement logical time and snapshot algorithms
CO3
Apply distributed mutex algorithms
CO4
Design consensus and recovery mechanisms
CO5
Deploy applications on cloud platforms
Industry Application & Relevance
How the concepts learned in this course are applied in real-world software development projects across Banking, Healthcare, and Enterprise domains over 20+ years of experience.
Professional Application
Microservices, cloud architecture, scalable systems
Textbooks & References
Textbooks
Ajay D. Kshemkalyani, Mukesh Singhal, 'Distributed Computing', Cambridge University Press
George Coulouris et al., 'Distributed Systems: Concepts and Design', Pearson
Reference Books
Andrew S. Tanenbaum, 'Distributed Systems: Principles and Paradigms', Pearson
Rajkumar Buyya et al., 'Cloud Computing: Principles and Paradigms', Wiley
Related Courses from Semester 5
Other courses from the same semester that are actively used in professional work.