Basic difference |
ASYMMETRIC MULTIPROCESSING:
Only Master processor run the tasks of Operating System.
SYMMETRIC MULTIPROCESSING
Each processor contributes to executing the tasks in the Operating System. |
Basic Architecture |
ASYMMETRIC MULTIPROCESSING:
Same or different architectures are possible for each processor.
SYMMETRIC MULTIPROCESSING
Same architecture for each process. |
Process |
ASYMMETRIC MULTIPROCESSING:
Master processor allow and assign the processes to the slave processors, or in some cases, they have some predefined processes.
SYMMETRIC MULTIPROCESSING
The queue is very important. The processor takes processes from a common ready queue, or in some cases, there may be a private ready queue for each processor. |
Usage |
ASYMMETRIC MULTIPROCESSING:
Asymmetric Multiprocessing is simple. Master processor can access all data structure.
SYMMETRIC MULTIPROCESSING
Symmetric Multiprocessing is complex. All the processors need to be synchronized with each other to maintain the load balance. |
Inter-process Communication |
ASYMMETRIC MULTIPROCESSING:
There is no need of communication between processes, as they are controlled by the master processor.
SYMMETRIC MULTIPROCESSING
Inter-process communication by a shared memory. |
Failure |
ASYMMETRIC MULTIPROCESSING:
If a master processor fails, a slave processor is turned as the master processor to continue the further execution. If a slave processor fails, its task is switched to other processors.
SYMMETRIC MULTIPROCESSING
If a processor fails, the computing capacity of the system reduces. |