banner image

Multi-processor System | Multi-threading system



Multi-processor System

Multi-processor System have more than one processor in close communication. They share the computer bus, system and input/output devices and sometimes memory.  In multi-processor System, it is possible for two processor to run in parallel. Most computer systems are single processor systems i.e they only have one processor. However, multiprocessor or parallel systems are increasing in importance nowadays. These systems have multiple processors working in parallel that share the computer clock, memory, bus, peripheral devices etc.

multiprocessor system , Multiprocessing system
Multi-processor system

Multi-processor System are types:

There are mainly two types of multiprocessors i.e. symmetric and asymmetric multiprocessors. There  are follows as :
1.      Symmetric multi-processor
2.      Asymmetric multi-processor

1.      Symmetric multi-processor :
In Symmetric multi-processor, each processor runs identical copy of the operating System and they communicate with one another as needed. All the CPU shared the common memory. In these types of systems, each processor contains a similar copy of the operating System and they all communicate with each other. All the processors are in a peer to peer relationship i.e. no master - slave relationship exists between them.


symmetric multi-processor, tightly coupled multiprocessor
Symmetric multi-processor


2.      Asymmetric multi-processor :
In Asymmetric multi-processor, each processor is assigned a specific task. It uses master-slave relationship. In asymmetric systems, each processor is given a predefined task. There is a master processor that gives instruction to all the other processors. Asymmetric multiprocessor System contains a master slave relationship.
Asymmetric multiprocessor was the only type of multiprocessor available before symmetric multiprocessors were created. Now also, this is the cheaper option.

asymmetric multi-processor,loosely coupled multiprocessor
Asymmetric multi-processor


Advantages of Multiprocessor Systems:

1.     Increased Throughput − By increasing the number of processors, more work can be completed in a unit time.
2.     Cost Saving − Parallel System shares the memory, buses, peripherals etc. Multiprocessor system thus saves money as compared to multiple single systems. Also, if a number of programs are to operate on the same data, it is cheaper to store that data on one single disk and shared by all processors instead of using many copies of the same data.
3.     Increased Reliability − In this System, as the workload is distributed among several processors which results in increased reliability. If one processor fails then its failure may slightly slow down the speed of the system but system will work smoothly.

Disadvantages of Multiprocessor Systems

There are some disadvantages of multiprocessor systems.  these are follows:
1.      Increased Expense:-
Even though multiprocessor systems are cheaper in the long run than using multiple computer systems, still they are quite expensive. It is much cheaper to buy a simple single processor system than a multiprocessor system.
2.      Complicated Operating System Required:-
There are multiple processors in a multiprocessor system that share peripherals, memory etc. So, it is much more complicated to schedule processes and impart resources to processes.than in single processor systems.
3.      Large Main Memory Required:-
All the processors in the multiprocessor system share the memory. So a much larger pool of memory is required as compared to single processor systems. It’s need large memory.


Multi-threading System

Multi-threading extends the idea of multi-tasking into application, so we can sub-divide specific operations within a Single application into individual threads. Each of the threads can run in parallel. The OS divides processing time not only among different application, but also among each thread within an application. multi-threaded  is the ability of an operating system process to manage its use by more than one user at a time and to even manage multiple requests by the same user without having to have multiple copies of the programming running in the computer. Each user request for a program or system service  is kept track of as a thread with a separate identity. As programs work on behalf of the initial request for that thread and are interrupted by other requests, the status of work on behalf of that thread is kept track of until the work is completed.“
Threads are known as Lightweight processes. The CPU switches rapidly back and forth among the threads giving illusion that the threads are running in parallel.
As each thread has its own independent resource for process execution, multiple processes can be executed parallel-y by increasing number of threads.


multi-threading system , types of multi-threading system
Multi-threading system

Types of Thread


Threads are implemented in following two ways :-
1.      User Level Threads − User managed threads.
2.      Kernel Level Threads − Operating System managed threads acting on kernel, an operating system core.

Multi-threading Models:-

Some operating system provide a combined user level thread and Kernel level thread facility. In a combined system, multiple threads within the same application can run in parallel on multiple processors and a blocking system call need not block the entire process. Multi-threading models are three types
  • Many to many relationship.
  • Many to one relationship.
  • One to one relationship.

Multi-processor System | Multi-threading system Multi-processor System | Multi-threading system Reviewed by Shubham Rathor on February 16, 2019 Rating: 5

No comments:

Powered by Blogger.