DISTRIBUTED SYSTEMS (CST-019) UTU

Distributed systems are networks of independent computers that work together to provide services, ensuring consistency, scalability, and fault tolerance.
3.0
(1)
45 Enrolled
40 hours
  • Intermediate
  • 45
  • 40 hours
  • January 16, 2025
  • Certificate of completion
Free

About Course

Unit 1- Distributed Environment:

Introduction, Limitations, Remote Procedure Call, Remote Object Invocation, Message-Oriented Communication, Unicasting, Multicasting and Broadcasting, Group Communication.
 
Unit 2-Distributed Operating Systems:
Issues in Distributed Operating Systems, Threads in Distributed Systems, Clock Synchronization, Causal Ordering, Global States, Election Algorithms, Distributed Mutual Exclusion, Distributed Deadlock, Agreement Protocols
 
Unit 3- Distributed Resource Management:
Distributed Shared Memory, Data-Centric Consistency Models, Client-Centric Consistency Models, Distributed File Systems, Sun NFS.
 
Unit 4- Distributed Transaction Processing:
Transactions, Nested Transactions, Locks, Optimistic Concurrency Control, Timestamp Ordering, Comparison, Flat and Nested Distributed Transactions, atomic commit protocols, Concurrency Control in Distributed Transactions, Distributed Deadlocks, Transaction Recovery, and an Overview of Replication and Distributed Multimedia Systems.
 
Unit 5- Fault Tolerance and Consensus:
Introduction to Fault Tolerance, Distributed Commit Protocols, Byzantine Fault Tolerance, Impossibilities in Fault Tolerance.

What Will You Learn?

  • Design Architectures: Understand various models like client-server and peer-to-peer.
  • Implement Communication: Use protocols and mechanisms for effective inter-node interaction.
  • Ensure Consistency and Fault Tolerance: Manage data consistency and handle system failures.
  • Optimize Scalability and Performance: Apply strategies for load balancing and system expansion.

Material Includes

  • Textbooks and Research Papers: Foundational texts and recent studies on distributed systems concepts and technologies.
  • Lecture Notes and Slides: Detailed presentations covering key topics, principles, and examples.
  • Hands-On Labs: Practical exercises and projects for implementing and testing distributed systems.
  • Case Studies: Real-world examples and analyses of distributed systems in various applications and industries.
  • Software Tools: Access to simulation tools and frameworks used for developing and managing distributed systems.

Requirements

  • Prerequisite Knowledge: Understanding of basic computer science concepts, including algorithms, data structures, and networking fundamentals.
  • Programming Skills: Proficiency in relevant programming languages such as Java, Python, or C++.
  • Mathematical Foundations: Basic knowledge of discrete mathematics, particularly graph theory and probability.
  • Software and Tools: Familiarity with tools and environments used for building and testing distributed systems, such as Docker, Kubernetes, or cloud platforms.
  • Active Participation: Engagement in lectures, discussions, and hands-on labs to grasp theoretical concepts and practical applications.
  • Assignments and Projects: Completion of coursework, including individual or group projects to design, implement, and analyze distributed systems.

Audience

  • Computer Science Students: Those studying systems design, algorithms, and network engineering.
  • Software Engineers: Professionals working on scalable and reliable software solutions.
  • System Administrators: Individuals managing and maintaining distributed networks and services.
  • Data Scientists: Specialists needing to understand data distribution and processing in large-scale environments.

Course Content

Unit 1- Distributed Environment:

  • Introduction of Distributed System.
  • How a Distributed System Works?
  • Characteristics of Distributed Systems
  • Types of Distributed Systems
  • Advantages and disadvantages of Distributive System
  • Limitations
  • Remote Procedure Call
  • Working of Remote Procedure Call (RPC)
  • RPC Stubs Overview
  • Implementation of RPC
  • Remote Object Invocation
  • Message-Oriented Communication(MOC)
  • How Message-Oriented Communication Works?
  • Characteristics of Message-Oriented Communication(MOC)
  • Unicasting
  • Multicasting
  • Broadcasting
  • Comparison of Uni-cast, multi-cast and broadcast
  • Group Communication

Unit 2-Distributed Operating Systems:

Unit 3- Distributed Resource Management:
Distributed resource management focuses on efficiently managing resources (e.g., memory, files, data) across multiple nodes in a distributed system. It ensures consistency, fault tolerance, and optimal utilization of shared resources.

Unit 4- Distributed Transaction Processing:

Unit 5- Fault Tolerance and Consensus:

Instructors

Neha

Neha

4.5
140 Students
9 Courses
R

RajKumar

Front End Developer🧑‍💻.
4.4
85 Students
10 Courses

Feedback

3.0
Total 1 Rating
0%
100%
100%
0%
0%

Review (1)

  1. OD

    Ojha Darshana

    2 months ago
    Good content, But only unit 1 is available!!!

Want to receive push notifications for all major on-site activities?