0% found this document useful (0 votes)
19 views21 pages

Unit 1 Process Management

Uploaded by

Ayush Sharma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views21 pages

Unit 1 Process Management

Uploaded by

Ayush Sharma
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 21

Chapter 2

Process Management
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
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

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy