Shared memory
|
Shared memory refers to a (typically) large block of Random access memory that can be accessed by several different central processing units (CPUs) in a multiple-processor computer system. The problem with shared memory systems is that the many CPUs need fast access to memory and will likely cache memory. Whenever one cache is updated with information that may be used by other processors, it needs to immediately update the shared memory, otherwise the different processors will be working with different data (see cache coherence and memory coherence).
The alternatives to shared memory are distributed memory and distributed shared memory, with another, similar set of problems.
Appendage
In software the term shared memory refers to memory that is accessible by more than one process, where a process is a running instance of a program. In this context, shared memory is used to facilitate interprocess communication. See the entry for thread (computer science) for more information about processes and threads.zh:共享内存