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.
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 |
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 |
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 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
Reviewed by Shubham Rathor
on
February 16, 2019
Rating:
No comments: