Distributed shared memory

Distributed shared memory

Distributed Shared Memory (DSM), in Computer Architecture is a form of memory architecture where the (physically separate) memories can be addressed as one (logically shared) address space. Here, the term shared does not mean that there is a single centralized memory but shared essentially means that the address space is shared (same physical address on two processors refers to the same location in memory)[1]. Alternatively in computer science it is known as (DGAS), a concept that refers to a wide class of software and hardware implementations, in which each node of a cluster has access to shared memory in addition to each node's non-shared private memory.

Software DSM systems can be implemented in an operating system, or as a programming library. Software DSM systems implemented in the operating system can be thought of as extensions of the underlying virtual memory architecture. Such systems are transparent to the developer; which means that the underlying distributed memory is completely hidden from the users. In contrast, Software DSM systems implemented at the library or language level are not transparent and developers usually have to program differently. However, these systems offer a more portable approach to DSM system implementation.

Software DSM systems also have the flexibility to organize the shared memory region in different ways. The page based approach organizes shared memory into pages of fixed size. In contrast, the object based approach organizes the shared memory region as an abstract space for storing shareable objects of variable sizes. Another commonly seen implementation uses a tuple space, in which the unit of sharing is a tuple.

Shared memory architecture may involve separating memory into shared parts distributed amongst nodes and main memory; or distributing all memory between nodes. A coherence protocol, chosen in accordance with a consistency model, maintains memory coherence.

Examples of such systems include:

See also


  1. ^ Patterson, David A. and John L. Hennessy (2007). Computer architecture : a quantitative approach, Fourth Edition, Morgan Kaufmann Publishers, p. 201. ISBN 0123704901.

External links

Wikimedia Foundation. 2010.

Игры ⚽ Нужно сделать НИР?

Look at other dictionaries:

  • Distributed Shared Memory — (verteilter gemeinsamer Speicher, DSM) ist ein Ausdruck aus der Informatik und bezieht sich auf die Verteilung des Arbeitsspeichers von Computerclustern. Da sich die einzelnen CPUs nicht auf einem gemeinsamen Mainboard befinden, existiert auch… …   Deutsch Wikipedia

  • Distributed Shared Memory — Saltar a navegación, búsqueda En computación, la Distributed Shared Memory (DSM, o memoria distribuida compartida) es un tipo de implementación hardware y software, en la que cada nodo de un cluster tiene acceso a una amplia memoria compartida… …   Wikipedia Español

  • Shared memory — In computing, shared memory is a memory that may be simultaneously accessed by multiple programs with an intent to provide communication among them or avoid redundant copies. Depending on context, programs may run on a single processor or on… …   Wikipedia

  • Virtual shared memory — Als Virtual Shared Memory bzw. virtueller Gemeinspeicher bezeichnet man eine Technik zur Verwendung gemeinsamer Speicherbereiche in Computernetzwerken oder Computerclustern. Dabei muss der gemeinsame Speicher nicht physikalisch existieren,… …   Deutsch Wikipedia

  • Memory coherence — is an issue that affects the design of computer systems in which two or more processors or cores share a common area of memory.[1][2][3][4] In a uniprocessor system (whereby, in today s terms, there exists only one core), there is only one… …   Wikipedia

  • Memory architecture — describes the methods used to implement electronic computer data storage in a manner that is a combination of the fastest, most reliable, most durable, and least expensive way to store and retrieve information. Depending on the specific… …   Wikipedia

  • Distributed memory — An illustration of a distributed memory system of three computers In computer science, distributed memory refers to a multiple processor computer system in which each processor has its own private memory. Computational tasks can only operate on… …   Wikipedia

  • Memory virtualization — In computer science, memory virtualization decouples volatile random access memory (RAM) resources from individual systems in the data center, and then aggregates those resources into a virtualized memory pool available to any computer in the… …   Wikipedia

  • Distributed Inter-Process Communication — DIPC (Distributed Inter Process Communication) is a software only solution for distributed programming under Linux. DIPC consists of two parts: (1) a kernel part that traps access to UNIX System V IPC mechanisms (shared memory segments, message… …   Wikipedia

  • Distributed object — Image describes communication between distributed objects residing in different machines. The term distributed objects usually refers to software modules that are designed to work together, but reside either in multiple computers connected via a… …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”