0% found this document useful (0 votes)
6 views

Unit 1 Process Management

The document provides an overview of process management in operating systems, defining a process as a program in execution and detailing its life cycle, which includes states such as start, ready, running, waiting, and terminated. It discusses the Process Control Block (PCB) that maintains essential information about each process and outlines the role of process scheduling and different types of schedulers (long-term, short-term, and medium-term). Additionally, it covers operations related to process creation and termination, emphasizing the relationship between parent and child processes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

Unit 1 Process Management

The document provides an overview of process management in operating systems, defining a process as a program in execution and detailing its life cycle, which includes states such as start, ready, running, waiting, and terminated. It discusses the Process Control Block (PCB) that maintains essential information about each process and outlines the role of process scheduling and different types of schedulers (long-term, short-term, and medium-term). Additionally, it covers operations related to process creation and termination, emphasizing the relationship between parent and child processes.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 22

Process Management

-Ashu Mehta
Database Systems
Process
A process is basically a program in execution.
The execution of a process must progress in a
sequential fashion.
A process is defined as an entity which
represents the basic unit of work to be
implemented in the system.
To put it in simple terms, we write our
computer programs in a text file and when we
execute this program, it becomes a process
which performs all the tasks mentioned in the
program.
Process States/Life Cycle
Start : This is the initial state when a process is first
started/created.
Ready : The process is waiting to be assigned to a
processor. Ready processes are waiting to have the
processor allocated to them by the operating system
so that they can run.
Running: Once the process has been assigned to a
processor by the OS scheduler, the process state is set
to running and the processor executes its instructions.
Waiting: Process moves into the waiting state if it
needs to wait for a resource, such as waiting for user
input, or waiting for a file to become available.
Terminated or Exit: Once the process finishes its
execution, or it is terminated by the operating system,
it is moved to the terminated state where it waits to be
removed from main memory.
Process Control Block (PCB)
A Process Control Block is a data structure
maintained by the Operating System for every
process.
Each process is represented in the operating
system by a process control block, also
called a task control block.
 A PCB keeps all the information needed to
keep track of a process.
The PCB is maintained for a process
throughout its lifetime, and is deleted once
the process terminates.
Process ID: Unique identification for each of
the process in the operating system.
Process State: The current state of the
process i.e., whether it is ready, running,
waiting, or whatever.
Pointer: A pointer to parent process.
Priority: Tells about the priority of processes.
Program Counter: Program Counter is a
pointer to the address of the next instruction
to be executed for this process.
CPU registers: Various CPU registers where
process need to be stored for execution for
running state.
IO status information: This includes a list
of I/O devices allocated to the process.
Accounting information: This includes the
amount of CPU used for process execution,
time limits, execution ID etc.
Process Scheduling
The process scheduling is the activity of the
process manager that handles the removal of
the running process from the CPU and the
selection of another process on the basis of a
particular strategy.
Process scheduling is an essential part of a
Multiprogramming operating systems. Such
operating systems allow more than one
process to be loaded into the executable
memory at a time and the loaded process
shares the CPU using time multiplexing.
Process Scheduling Queues

The Operating System maintains the following


important process scheduling queues −
Job queue − This queue keeps all the processes
in the system.
Ready queue − This queue keeps a set of all
processes residing in main memory, ready and
waiting to execute. A new process is always put
in this queue.
Device queues − The processes which are
blocked due to unavailability of an I/O device
constitute this queue.
Two-State Process Model

Running
When a new process is created, it enters into
the system as in the running state.
Not Running
Processes that are not running are kept in
queue, waiting for their turn to execute. Each
entry in the queue is a pointer to a particular
process. Queue is implemented by using linked
list
Schedulers

Schedulers are special system software


which handle process scheduling in various
ways.
Their main task is to select the jobs to be
submitted into the system and to decide
which process to run.
Schedulers are of three types −
Long-Term Scheduler
Short-Term Scheduler
Medium-Term Scheduler
Long Term Scheduler

It is also called a job scheduler.


Long-term scheduler (or job scheduler) –
selects which processes should be brought
into the ready queue.
It selects processes from the queue and loads
them into memory for execution. Process loads
into the memory for CPU scheduling.
On some systems, the long-term scheduler may
not be available or minimal. Time-sharing
operating systems have no long term scheduler.
Short Term Scheduler
It is also called as CPU scheduler.
Short-term scheduler (or CPU scheduler) –
selects which process should be executed next.
Its main objective is to increase system
performance.
 It is the change of ready state to running state of
the process. CPU scheduler selects a process
among the processes that are ready to execute and
allocates CPU to one of them.
Short-term schedulers, also known as dispatchers,
make the decision of which process to execute next.
Short-term schedulers are faster than long-term
schedulers.
Medium Term Scheduler

A running process may become suspended if it


makes an I/O request. A suspended processes
cannot make any progress towards completion.
In this condition, to remove the process from
memory and make space for other processes, the
suspended process is moved to the secondary
storage. This process is called swapping, and the
process is said to be swapped out or rolled out.
Medium-term scheduling is a part of swapping.
It removes the processes from the memory. The
medium-term scheduler is in-charge of handling
the swapped out-processes.
Context Switch
When CPU switches to another process, the
system must save the state of the old process
and load the saved state for the new process.
Operations on processes
Process creation
Process termination
Process Creation
Process creation is a task of creating new
processes.
 There are different ways to create new process.
A new process can be created at the time of
initialization of operating system or by system calls.
The process, which creates a new process using
system calls, is called parent process while the new
process that is created is called child process.
 The child processes can create new processes
using system calls.
Corresponding to every task that is performed there
is a process associated with it.
For instance, a new process is created every time a
user logs on to a computer system, an application
program such a MS Word is initiated, or when a
document printed.
Process termination
Process termination is an operation in
which a process is terminated after the
execution of its last instruction.
This operation is used to terminate or end any
process.
When a process is terminated, the resources that
were being utilized by the process are released
by the operating system.
When a child process terminates, it sends the
status information back to the parent process
before terminating.
The child process can also be terminated by the
parent process if the task performed by the child
process is no longer needed.
A child process cannot run when its parent
process has been terminated.

You might also like