What is Multiprocessing?
Multiprocessing is the coordinated processing of programs by more than one computer processor. Multiprocessing is a general term that can mean the dynamic assignment of a program to one of two or more computers working in tandem or can involve multiple computers working on the same program at the same time (in parallel).
Multiprocessing can be said to be either asymmetric or symmetric. The term refers to how the operating system divides tasks between the processors in the system. Asymmetric multiprocessing designates some processors to perform system tasks only, and others to run applications only.
This is a rigid design that results in lost performance during those times when the computer needs to run many system tasks and no user tasks, or vice versa.
Symmetric multiprocessing, often abbreviated SMP, allows either system or user tasks to run on any processor, which is more flexible and therefore leads to better performance. SMP is what most multiprocessing PC motherboards use.
In order to employ multiprocessing effectively, the computer system must have all of the following in place:
- Motherboard Support: A motherboard capable of handling multiple processors.
- Processor Support: Processors that are capable of being used in a multiprocessing system.
- Operating System Support: An operating system that supports multiprocessing.