shared memory


shared memory

(1)Memory in a parallel computer, usually RAM, which canbe accessed by more than one processor, usually via a sharedbus or network.

It usually takes longer for a processor to access sharedmemory than to access its own private memory because ofcontention for the processor-to-memory connections and becauseof other overheads associated with ensuring synchronisedaccess. Computers using shared memory usually have some kindof local cache on each processor to reduce the number ofaccesses to shared memory. This requires a cache consistency protocol to ensure that one processor's cachedcopy of a shared memory location is invalidated when anotherprocessor writes to that location.

The alternative to shared memory is message passing whereall memory is private to some particular processor andprocessors communicate by sending messages down speciallinks. This is usually slower than shared memory but itavoids the problems of contention for memory and can beimplemented more cheaply.

shared memory

(2)Memory which can be access by more than one process in amultitasking operating system with memory protection.Some Unix variants, e.g. SunOS provide this kind of sharedmemory.

Unix manual pages: shmop(2), shmctl(2), shmget(2).

shared memory

(1) Using part of main memory to support a low-cost display circuit that does not have its own memory. See shared video memory.

(2) The common memory in a symmetric multiprocessing system that is available to all CPUs. See SMP.