Professional Documents
Culture Documents
Shivam Amin
Krishna Joshi
Mehul Dawda
Kijit Desai
Sumeet Kapoor
1
12/07/2021
Start Finish
execution Ready Running execution
Sleeping
3
12/07/2021
Ready state
– All processes that are ready to execute but without
the CPU are at the ready state
– If there is only 1 CPU in the system, all processes
except one are at the ready state
Running state
– The process that actually possesses the CPU is at the
running state
– If there is only 1 CPU in the system, at most there is
only one process is at the running state
Sleeping state
– The process that is waiting for other resources, e.g.
I/O, is at the sleeping state
4
12/07/2021
PROCESS MANAGEMENT
• Process management is one of the most important
and relevant tasks in operating system design
which investigates the process management in
Unix/Linux.
COUPLING
Coupling is a measure of the degree of dependency
between two software components(classes, modules,
packages, or the like)
A good software system should have high cohesion
within each component and low coupling between
components.
In operating systems, in order to achieve high efficiency,
the process management is usually implemented via a
global variable that accesses all the current active
processes in the system.
6
12/07/2021
7
12/07/2021
9
12/07/2021
12
12/07/2021
13
12/07/2021
14
12/07/2021
FREEBSD SYSTEM
supports transparent multiprogramming by context
switching—that is, by switching between the execution
context of processes.
Context switching is done frequently, so increasing the
speed of a context switch noticeably decreases time
spent in the kernel.
The FreeBSD time-share scheduler uses a priority-based
scheduling policy
15
12/07/2021
OUTCOME OF COMPARISON
The number of instances of process control global
variable can affect the maintenance of the operating
system kernel.
This effect is demonstrated in the relationship between
the number of kernel lines of code modified and the
number of instances and number of definitions of
process controller global variable.
We conclude that the way process management
implemented in Linux makes it more difficult to
maintain than FreeBSD and Darwin.
16
LOAD-SHARING CLUSTERS OF
HETEROGENEOUS UNIX
WORKSTATIONS
INTRODUCTION
Load-Sharing is when multiple computers are linked together to
share computational workload or function as a single virtual
computer.
Logically, from the user side, they are multiple machines, but
function as a single virtual machine. Requests initiated from the
user are managed by, and distributed among, all the standalone
computers to form a cluster.
Preemptive process migration can cause the execution site of a job to change
even during its execution.
• The main drawback of non preemptive process is that they assume the same
operating system to be running on all machines in the cluster
DISTRIBUTED PROCESS MANAGEMENT PROTOCOL (DPMP)
DPMP defines a set of messages that are exchanged by the machines in the cluster, and a set of
conventions that all machines in the cluster must follow so that migrated processes can run in
an environment very similar to the one that they would have found on their originating
machines.
• DPMP may be implemented either inside the kernel, or at the user level by using a
library that intercepts system calls. A kernel implementation is likely to be more
efficient than a user level implementation.
• A user level implementation would be more portable but may also entail some loss in
transparency.
THE CHIEF CHARACTERISTICS OF OUR APPROACH THAT DISTINGUISH IT FROM OTHER SYSTEMS FOR PROCESS MIGRATION ARE:-
CONCLUSION
27
12/07/2021
• THANKYOU
28