Multiprocessing(MP), involves computer hardware and software architecture where there are multiple(two or more) processing units executing programs for the single operating(computer) system.
👁 What-is-SMP
SMP i.e. symmetric multiprocessing, refers to the computer architecture where multiple identical processors are interconnected to a single shared main memory, with full accessibility to all the I/O devices, unlike asymmetric MP. In other words, all the processors have common shared(common) memory and same data path or I/O bus as shown in the figure.
👁 Image
Characteristics of SMP
- Identical: All the processors are treated equally i.e. all are identical.
- Communication: Shared memory is the mode of communication among processors.
- Complexity: Are complex in design, as all units share same memory and data bus.
- Expensive: They are costlier in nature.
- Unlike asymmetric where a task is done only by Master processor, here tasks of the operating system are handled individually by processors.
Applications
This concept finds its application in
parallel processing, where time-sharing systems(TSS) have assigned tasks to different processors running in parallel to each other, also in TSS that uses
multithreading i.e. multiple threads running simultaneously.
Advantages
- Throughput: Since tasks can be run by all the processors unlike in asymmetric, hence increased degree of throughput(processes executed in unit time).
- Reliability: Failing a processor doesn't fail whole system, as all are equally capable processors, though throughput do fail a little.
Disadvantages
- Complex design: Since all the processors are treated equally by OS, so designing and management of such OS become difficult.
- Costlier: As all the processors share the common main memory, on account of which size of memory required is larger implying more expensive.