Os - 3

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 12

PROCESS

MANAGEMENT

Presented By:

Ms. Megha Kumar


Assistant Professor
Department of CSE
Process 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

● Multiple parts
● The program code, also called text section
● Current activity including program counter, processor registers
● Stack containing temporary data
Process Concept (contd.)
● Function parameters, return addresses, local variables
● Data section containing global variables
● Heap containing memory dynamically allocated during run time

● Program is passive entity stored on disk (executable file), process is active


● Program becomes process when executable file loaded into memory

● Execution of program started via GUI mouse clicks, command line entry of its name, etc

● One program can be several processes


● Consider multiple users executing the same program
Process in Memory
Process 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 State
Process Control Block (PCB)
Information associated with each process (also called task control
block)

● Process state – running, waiting, etc


● Program counter – location of instruction to next execute
● CPU registers – contents of all process
● CPU scheduling information- priorities, scheduling queue pointers
● Memory-management information – memory allocated to the
process
● Accounting information – CPU used, clock time elapsed since
start, time limits
● I/O status information – I/O devices allocated to process, list of
open files
CPU Switch From Process to Process
Process Scheduling
● Maximize CPU use, quickly switch processes onto CPU for time sharing

● Process scheduler selects among available processes for next execution on CPU

● Maintains scheduling queues of processes


● 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
Representation of Process Scheduling

Queueing diagram represents queues, resources, flows


Schedulers
● Short-term scheduler (or CPU scheduler) – selects which process should be executed next and
allocates CPU
● Sometimes the only scheduler in a system
● Short-term scheduler is invoked frequently (milliseconds) ⇒ (must be fast)

● Long-term scheduler (or job scheduler) – selects which processes should be brought into the ready
queue
● Long-term scheduler is invoked 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

● Long-term scheduler strives for good process mix


Addition of Medium Term Scheduling
● Medium-term scheduler can be added if degree of multiple programming needs to decrease
● Remove process from memory, store on disk, bring back in from disk to continue
execution: swapping

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