×

Distributed Shared Memory

Distributed Shared Memory is a process of managing memory over more than one node and makes inter-process communication which transfers to end users. It is a mechanism that allows user processes to access shared files without inter-process communications. In Distributed Shared Memory each node has own memory and it gives memory write and read operations and it give stable protocols. DSM utilizes shared memory model in distributed systems. But distributed system doesn’t have real shared memory. The shared memory model provides virtual address to all the nodes and the data transfers between different nodes.

Distributed Shared Memory

Types of DSM

The different types of DSM:

On Chip memory:

  • Memory is attached to address lines.
  • Data is stored in CPU portion of chip.
  • On-Chip Memory DSM is more costly and composite.

Ring based multiprocessors:

  • There is no global compact memory in Ring-based DSM.
  • In ring-bases DSM has divided each address line into shared area.
  • The nodes are attached in the form of tokens passing rings.

Bus based multiprocessors:

  • Cache memory is used to reduce network traffic.
  • collection of parallel wires called a bus. It acts as link between memory and CPU.
  • accessing of same memory simultaneously by multiple CPUs is prevented by using some algorithms.

Advantages of DSM:

  • Locality of data:
    In Locality, large blocks of data near to the current location is collected, because the current location may be needed in further so the data is collected.
  • Larger memory space:
    As it names large memory space will give large virtual memory, the memory size is calculated sum of memory size of all nodes, pages task is reduced.
  • Flexible communication environment:
    It is used combine and separate Distributed Shared Memory without affecting the others. Here sender and receiver are no need to exist.
  • Simple abstraction:
    Abstraction is used to duplicate / abstract the data. As the address space is same it is easy and simple for improving data.
  • Better performance:
    If we improve speeding up access to data then efficiency and performance of Distributed Share Memory will increase.
  • Easier portability:
    The access protocols used in DSM allow for a regular transition from sequential to distributed systems. Distributed Shared Memory programs are portable because it uses programming interface.
  • On demand data movement:
    It is used to delete the data exchange phase in distributed shared memory.
  • Process migration simplified:
    Data contain address space for every process. So, data can be shifted easily to another machine.
  • Scalability.
  • Less expensive
  • No bottlenecks in data access.

Related Topics

Multiprogramming Operating System

You will discover more about the multiprogramming operating system in this post, including how it functions and its benefits and drawbacks. Each process needs several types of system time, including CPU...

4 minutes read.

Need of Operating System

There are various needs of operating system: Managing Input-Output UnitThe Operating system as a platform for application programsMultitaskingConsistent user interface Managing Input-Output Unit: - With the help of the operating system, the...

2 minutes read.

Strategies for Handling Deadlock

Strategies for Handling Deadlock The Strategies for handling Deadlock are: Deadlock IgnoranceDeadlock PreventionDeadlock AvoidanceDeadlock Detection and Recovery Deadlock Ignorance Deadlock Ignorance is the most popular deadlock handling strategy. We can use this in the various operating systems for...

2 minutes read.

Kernel in OS

What is Kernel in OS? The kernel is the core component in the operating system. The job of the kernel is to handle the communication between the hardware and the software. ...

2 minutes read.

FCFS Scheduling in OS

FCFS: First Come First Serve Scheduling in OS FCFS is a non-preemptive and preemptive scheduling algorithm that is easy to understand and use. In this, the process which reaches first is...

3 minutes read.

Batch Operating System

Computers were once quite huge devices that operated from a console. Tape drives, punch cards, line printers were often utilized for the output, and tape drivers or card readers for...

4 minutes read.

Difference between C-SCAN and SSTF Disk Scheduling Algorithm

C-SCAN / Circular Elevator The circular SCAN (C-SCAN) scheduling method is a modified version of the SCAN disc scheduling technique that addresses the SCAN algorithm's inefficiency by more equitably serving requests....

3 minutes read.

Difference between Protection and Security in Operating System

Some operating system mechanisms facilitate us to stop tampering with logical and physical resources. Some of these methods are security and protection. Protection and security are distinct concepts, despite the...

3 minutes read.

Bit Vector in Operating System

What is Bit vector? Bit vector is one of the most important methods used in the free space management of operating system. Free space management which is used by the operating...

3 minutes read.

What is Demand Paging?

Demand Paging is defined as a process in which the pages are loaded into the memory (when the page fault occurs) or on-demand. It consists of the following steps: If there is...

4 minutes read.

Difference between C-LOOK and C-SCAN Disk Scheduling Algorithm

Disk scheduling is used by operating systems to arrange the arrival of I/O requests to the disc. I/O scheduling is another name for disc scheduling. Disk scheduling is necessary because...

4 minutes read.

Unix Operating System

Unix Operating System Unix Operating System is a multiuser, portable, time-sharing, and multitasking operating system that was developed in 1969. Unix operating system was developed by a group of AT &...

3 minutes read.

Turn Variable or Strict Alternative Approach

Turn Variable or Strict Alternative Approach Turn Variable Approach is used for process synchronization mechanism, which offers synchronization between two processes. Turn variable is implemented on user mode, and it is a software mechanism. We...

3 minutes read.

Multitasking Operating Systems

An operating system is the fundamental piece of software that enables a computer system to function and execute a command as intended. The user interface, hardware, and every other piece...

7 minutes read.

Process Synchronization | Operating System

Process Synchronization Process Synchronization means managing the process in such a manner so that no two processes have access to share similar data and resources. We can use Process Synchronization in a Multi-Process System...

4 minutes read.

Functions of Operating System

The functions of Operating System are: Process Management Memory Management File Management Device Management Secondary storage Management Security Coordination between other software and users Networking Job Accounting Error detecting aids 1. Process Management Process Management support operating system to create and delete...

3 minutes read.

Operating System Tutorial

What is an Operating System? An Operating System is a System Software that handles the resources of a computer such as computer hardware and software and offers frequent services to the...

7 minutes read.

Lock Variable Mechanism | Operating System

Lock Variable Mechanism The Lock variable mechanism is a synchronization mechanism that is implemented in a user mode. It is a software procedure. Lock variable is a solution for busy waiting that can be...

3 minutes read.

Starvation in Operating System

Starvation is one of the major problems occurring when resource management is not done properly. This problem arises in the operating system when the resources are not being allocated for...

4 minutes read.

Booting Process in Operating System

What is Booting? Booting is defined as the term which says that the process of loading the operating system into the memory. The process of booting begins when we switch on...

4 minutes read.