Difference between Asymmetric VS symmetric multiprocessing operating systems with examples

Difference between Asymmetric VS symmetric multiprocessing operating systems with examples

In this tutorial, we will try to answer the following questions;

  1. What is Multiprocessing?
  2. What are types of multiprocessor systems?
  3. What is Asymmetric multiprocessing systems (ASMP)?
  4. What is Symmetric multiprocessing systems (SMP)?
  5. Difference between  Symmetric multiprocessing systems VS  Asymmetric multiprocessing systems

What is Multiprocessing?
Multiprocessing is a technique in which more than one CPU works within a computer system. The CPU is the central processing unit that can perform arithmetic and logic operations. When a computer uses multiple CPUs, more than one set of program instructions can be executed at the same time.
What are types of multiprocessor systems?
There are two basic types of multiprocessor systems.
1. Asymmetric multiprocessing systems (ASMP)
2. Symmetric multiprocessing systems (SMP)
1. Asymmetric multiprocessing systems (ASMP)
In asymmetric multiprocessing, each CPU is assigned a special task. For example, one CPU can be busy playing the video game and another CPU is busy in executing the operating systems. The question is that how multiple CPU will work together? The answer is very simple. One CPU acts as a Master CPU. All other CPU works as slave CPU. In other words, we can say that master CPU controls the slave CPUs.
2. Symmetric multiprocessing systems (SMP)
In symmetric multiprocessing, multiple CPU work together to complete the same task. There is no master and slave relationship among the CPUs. All CPU are treated equally. According to Symmetric multiprocessing, two or more processors are attached to a single memory and operating system (OS) instance.y of the system reduces.

Difference between  Symmetric multiprocessing systems VS  Asymmetric multiprocessing systems

Basic differenceASYMMETRIC MULTIPROCESSING:

Only Master processor run the tasks of Operating System.

SYMMETRIC MULTIPROCESSING

Each processor contributes to executing the tasks in the Operating System.

Basic ArchitectureASYMMETRIC MULTIPROCESSING:

Same or different architectures are possible for each processor.

SYMMETRIC MULTIPROCESSING

Same architecture for each process.

ProcessASYMMETRIC 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.

UsageASYMMETRIC 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 CommunicationASYMMETRIC 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.

FailureASYMMETRIC 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.