Symmetric multiprocessor system
A symmetric multiprocessor system (SMP) is a multiprocessor system with centralized shared memory called main memory (MM) operating under a single operating system with two or more homogeneous processors—i.e., it is not a heterogeneous computing system.
More precisely, an SMP is a tightly coupled multiprocessor system with a pool of homogeneous processors running independently, each processor executing different programs and working on different data, with the capability to share resources (memory, I/O device, interrupt system, etc.), and connected using a system bus or a crossbar.
Each processor usually has an associated private high-speed memory known as cache memory (or cache) to speed-up the MM data access and to reduce the system bus traffic.
Sometimes the term "symmetric multiprocessor" is confused with the term symmetric multiprocessing.
While multiprocessing is a type of processing in which two or more processors work together to process more than one program simultaneously, the term "multiprocessor" refers to the hardware architecture that allows multiprocessing.
The term "multiprocessor" is the opposite of the term "uniprocessor".
- "An Introduction to the New IBM e-server pSeries High Performance Switch" - Glossary pg. 246 - http://www.redbooks.ibm.com/redbooks/pdfs/sg246978.pdf
- Locking in OS Kernels for SMP Systems - http://irl.cs.ucla.edu/~yingdi/web/paperreading/smp_locking.pdf
- "Patent US6349369 - Protocol for transferring modified-unsolicited state during data intervention". google.nl.
- "Brevetto US8453122 - Symmetric multi-processor lock tracing". google.com.
- Intel MultiProcessor Specification - 2. System Overview - http://pdos.csail.mit.edu/6.828/2007/readings/ia32/MPspec.pdf
- "Patent US7103631 - Symmetric multi-processor system". google.com.