Distributed Systems. Instructor: Dr. Rajiv Misra, Department of Computer Science and Engineering, IIT Patna. A distributed system is a software system in which components located on networked computers communicate and coordinate their actions by passing messages. The components interact with each other in order to achieve a common goal. Distributed applications (distributed apps) are applications or software that runs on multiple computers within a network at the same time and can be stored on servers or with cloud computing. This course provides an in-depth understanding of fundamental principles and models underlying the theory, algorithms, and systems aspects of distributed computing. Few Emerging topics such as Peer-to-Peer computing, Distributed Hash Table, Google File System, HDFS, Spark, Sensor Networks and Security in Distributed Systems will also be covered for significant impact. Upon completing this course, students will have intimate knowledge about how things work in a distributed environment.
Lecture 13 - Distributed Shared Memory
This lecture covers the following topics: Concept of Distributed Shared Memory (DSM); Advantages, Disadvantages of DSM; Issues in Implementing DSM; Software Comparison of Early DSM Systems; Memory Consistency Models; Shared Memory Mutual Exclusion: Bakery Algorithm.