Chapter 2: ProcessesChapter 2: Processes
Mr. SUBHASIS DASH
SCHOLE OF COMPUTER
ENGINEERING.
KIIT UNIVERSITY, BHUBANESWAR
subhasisbbsr@gmail.com
Process ManagementProcess Management
A process is a program in execution. It is a unit of work within the
system. Program is a passive entity, process is an active entity.
Process needs resources to accomplish its task
CPU, memory, I/O, files
Initialization data
Process termination requires reclaim of any reusable resources
Single-threaded process has one program counter specifying
location of next instruction to execute
Process executes instructions sequentially, one at a time, until
completion
Multi-threaded process has one program counter per thread
Typically system has many processes, some user, some operating
system running concurrently on one or more CPUs
Concurrency by multiplexing the CPUs among the processes /
threads
Process Management ActivitiesProcess Management Activities
The operating system is responsible for the following activities
in connection with process management:
Creating and deleting both user and system processes
Suspending and resuming processes
Providing mechanisms for process synchronization
Providing mechanisms for process communication
Providing mechanisms for deadlock handling
Process ConceptProcess Concept
An operating system executes a variety of programs:
Batch system – jobs
Time-shared systems – user programs or tasks
Textbook uses the terms job and process almost
interchangeably
Process – a program in execution; process execution
must progress in sequential fashion
A process includes:
program counter
stack
data section
ProcessinMemory
Process StateProcess State
As a process executes, it changes state
new: The process is being created
running: Instructions are being executed
waiting: The process is waiting for some event to occur
ready: The process is waiting to be assigned to a processor
terminated: The process has finished execution
Diagram of Process StateDiagram of Process State
Process Control Block (PCB)Process Control Block (PCB)
Information associated with each
process
Process state
Program counter
CPU registers
CPU scheduling information
Memory-management information
Accounting information
I/O status information
P
CPU Switch From Process toCPU Switch From Process to
ProcessProcess
Process Scheduling QueuesProcess Scheduling Queues
Job queue – set of all processes in the system
Ready queue – set of all processes residing in main memory,
ready and waiting to execute
Device queues – set of processes waiting for an I/O device
Processes migrate among the various queues
Ready Queue And Various I/O DeviceReady Queue And Various I/O Device
QueuesQueues
SchedulingScheduling
[continued……][continued……]
Two types of queue :
-- READY QUEUE. & DEVICE QUEUE.
-- RECTANGLES ARE REPRESENTED AS QUEUES.
Circles represents resources :
-- SERVES THE QUEUES.
Arrows represents flow :
-- EXECUTION FLOW OF PROCESS IN A SYSTEM.
Working Procedure :
-- Process put into ready queue [process selection] & wait [start] for execution.
-- Process could issue an I/O request & then place it in I/O queue.
-- Process executes for given time slice until expires ,then CPU switches to other
process.
-- Process could create new sub-process [ child process] & wait for termination.
-- Interrupt could forcibly removed a process from execution & put it back to ready
queue.
Representation of ProcessRepresentation of Process
SchedulingScheduling
SchedulersSchedulers
 During process life time , it switches from one
scheduling queue to another.
 Process selection is carried out by scheduler.
Long-term scheduler (or job scheduler) –
selects which processes should be brought into ready queue from disk
Executes less frequently.
Controls degree of multiprogramming
 Avg. No. of process creation = Avg. No. of process
termination.
Short-term scheduler (or CPU scheduler) –
selects which process should be executed next and allocates CPU
CPU selects process & execute quite frequently.
Addition of Medium Term SchedulingAddition of Medium Term Scheduling
Schedulers (Cont.)Schedulers (Cont.)
Short-term scheduler is invoked very frequently (milliseconds) ⇒
(must be fast)
Long-term scheduler is invoked very infrequently (seconds, minutes)
⇒ (may be slow)
The long-term scheduler controls the degree of multiprogramming
Processes can be described as either:
I/O-bound process – spends more time doing I/O than
computations, many short CPU bursts
CPU-bound process – spends more time doing computations;
few very long CPU bursts
Context SwitchContext 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
Context-switch time is overhead; the system does no useful work
while switching
Time dependent on hardware support
End of Chapter 2End of Chapter 2

Operating System

  • 1.
    Chapter 2: ProcessesChapter2: Processes Mr. SUBHASIS DASH SCHOLE OF COMPUTER ENGINEERING. KIIT UNIVERSITY, BHUBANESWAR subhasisbbsr@gmail.com
  • 2.
    Process ManagementProcess Management Aprocess is a program in execution. It is a unit of work within the system. Program is a passive entity, process is an active entity. Process needs resources to accomplish its task CPU, memory, I/O, files Initialization data Process termination requires reclaim of any reusable resources Single-threaded process has one program counter specifying location of next instruction to execute Process executes instructions sequentially, one at a time, until completion Multi-threaded process has one program counter per thread Typically system has many processes, some user, some operating system running concurrently on one or more CPUs Concurrency by multiplexing the CPUs among the processes / threads
  • 3.
    Process Management ActivitiesProcessManagement Activities The operating system is responsible for the following activities in connection with process management: Creating and deleting both user and system processes Suspending and resuming processes Providing mechanisms for process synchronization Providing mechanisms for process communication Providing mechanisms for deadlock handling
  • 4.
    Process ConceptProcess Concept Anoperating system executes a variety of programs: Batch system – jobs Time-shared systems – user programs or tasks Textbook uses the terms job and process almost interchangeably Process – a program in execution; process execution must progress in sequential fashion A process includes: program counter stack data section ProcessinMemory
  • 5.
    Process StateProcess State Asa process executes, it changes state new: The process is being created running: Instructions are being executed waiting: The process is waiting for some event to occur ready: The process is waiting to be assigned to a processor terminated: The process has finished execution
  • 6.
    Diagram of ProcessStateDiagram of Process State
  • 7.
    Process Control Block(PCB)Process Control Block (PCB) Information associated with each process Process state Program counter CPU registers CPU scheduling information Memory-management information Accounting information I/O status information P
  • 8.
    CPU Switch FromProcess toCPU Switch From Process to ProcessProcess
  • 9.
    Process Scheduling QueuesProcessScheduling Queues Job queue – set of all processes in the system Ready queue – set of all processes residing in main memory, ready and waiting to execute Device queues – set of processes waiting for an I/O device Processes migrate among the various queues
  • 10.
    Ready Queue AndVarious I/O DeviceReady Queue And Various I/O Device QueuesQueues
  • 11.
    SchedulingScheduling [continued……][continued……] Two types ofqueue : -- READY QUEUE. & DEVICE QUEUE. -- RECTANGLES ARE REPRESENTED AS QUEUES. Circles represents resources : -- SERVES THE QUEUES. Arrows represents flow : -- EXECUTION FLOW OF PROCESS IN A SYSTEM. Working Procedure : -- Process put into ready queue [process selection] & wait [start] for execution. -- Process could issue an I/O request & then place it in I/O queue. -- Process executes for given time slice until expires ,then CPU switches to other process. -- Process could create new sub-process [ child process] & wait for termination. -- Interrupt could forcibly removed a process from execution & put it back to ready queue.
  • 12.
    Representation of ProcessRepresentationof Process SchedulingScheduling
  • 13.
    SchedulersSchedulers  During processlife time , it switches from one scheduling queue to another.  Process selection is carried out by scheduler. Long-term scheduler (or job scheduler) – selects which processes should be brought into ready queue from disk Executes less frequently. Controls degree of multiprogramming  Avg. No. of process creation = Avg. No. of process termination. Short-term scheduler (or CPU scheduler) – selects which process should be executed next and allocates CPU CPU selects process & execute quite frequently.
  • 14.
    Addition of MediumTerm SchedulingAddition of Medium Term Scheduling
  • 15.
    Schedulers (Cont.)Schedulers (Cont.) Short-termscheduler is invoked very frequently (milliseconds) ⇒ (must be fast) Long-term scheduler is invoked very infrequently (seconds, minutes) ⇒ (may be slow) The long-term scheduler controls the degree of multiprogramming Processes can be described as either: I/O-bound process – spends more time doing I/O than computations, many short CPU bursts CPU-bound process – spends more time doing computations; few very long CPU bursts
  • 16.
    Context SwitchContext Switch WhenCPU switches to another process, the system must save the state of the old process and load the saved state for the new process Context-switch time is overhead; the system does no useful work while switching Time dependent on hardware support
  • 17.
    End of Chapter2End of Chapter 2