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

Introduction of Process Management

A process is an active program instance running in memory that has its own memory space, resources, and state. The operating system tracks and schedules processes to share resources like the CPU. A process is made up of different sections in memory for code, stack, data, and heap. It has attributes like a process ID, state, registers, and scheduling information stored in a process control block. Processes can be in different states like running, ready, waiting, or terminated. The operating system performs context switches to load and unload process contexts from memory to efficiently share the CPU.

Uploaded by

Smita Hushe
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
40 views

Introduction of Process Management

A process is an active program instance running in memory that has its own memory space, resources, and state. The operating system tracks and schedules processes to share resources like the CPU. A process is made up of different sections in memory for code, stack, data, and heap. It has attributes like a process ID, state, registers, and scheduling information stored in a process control block. Processes can be in different states like running, ready, waiting, or terminated. The operating system performs context switches to load and unload process contexts from memory to efficiently share the CPU.

Uploaded by

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

Introduction of Process Management

Program vs Process: A process is a program in execution. For example,


when we write a program in C or C++ and compile it, the compiler creates
binary code. The original code and binary code are both programs. When we
actually run the binary code, it becomes a process. 
A process is an ‘active’ entity instead of a program, which is considered a
‘passive’ entity. A single program can create many processes when run
multiple times; for example, when we open a .exe or binary file multiple
times, multiple instances begin (multiple processes are created). 
Process Management  
If operating system supports multiple users than services under this are very
important . In this regard operating systems has to keep track of all the
completing processes , Schedule them, dispatch them one after another. But
user should feel that he has the full control of the CPU.
some of the systems calls in this category are as follows.
1.  create a child process  identical to the parent.
2.  Terminate a process
3.  Wait for a child process to terminate
4.  Change the priority of process
5.  Block the process
6.  Ready the process
7.  Dispatch a process
8.  Suspend a process
9.  Resume a process
10.  Delay a process
11. Fork a process
What does a process look like in memory? 

 Text Section:  A Process, sometimes known as the Text Section,


also includes the current activity represented by the value of
the  Program Counter. 
 Stack:  The stack contains temporary data, such as function
parameters, returns addresses, and local variables. 

 Data Section: Contains the global variable. 


 Heap Section:  Dynamically allocated memory to process during its
run time. 
 Attributes or Characteristics of a Process: A process has the
following attributes.
 1. Process Id: A unique identifier assigned by the
operating system
 2. Process State: Can be ready, running, etc.
 3. CPU registers: Like the Program Counter (CPU registers must
be saved and
 restored when a process is swapped in and
out of CPU)
 4. Accounts information: Amount of CPU used for process
execution, time limits, execution ID etc
 5. I/O status information: For example, devices allocated to
the process,
 open files, etc
 6. CPU scheduling information: For example, Priority
(Different processes
 may have different priorities,
for example
 a shorter process assigned high
priority
 in the shortest job first
scheduling)
 All of the above attributes of a process are also known as the context
of the process. Every process has its own process control
block(PCB), i.e each process will have a unique PCB. All of the above
attributes are part of the PCB. 
 States of Process: A process is in one of the following states: 
 1. New: Newly Created Process (or) being-created process.

 2. Ready: After creation process moves to Ready state, i.e.
the
 process is ready for execution.

 3. Run: Currently running process in CPU (only one process at
 a time can be under execution in a single processor).

 4. Wait (or Block): When a process requests I/O access.

 5. Complete (or Terminated): The process completed its
execution.

 6. Suspended Ready: When the ready queue becomes full, some
processes
 are moved to suspended ready state

 7. Suspended Block: When waiting queue becomes full.


 Context Switching: The process of saving the context of one process
and loading the context of another process is known as Context
Switching. In simple terms, it is like loading and unloading the process
from the running state to the ready state. 
 When does context switching happen? 
1. When a high-priority process comes to a ready state (i.e. with higher
priority than the running process) 
2. An Interrupt occurs 
3. User and kernel-mode switch (It is not necessary though) 
4. Preemptive CPU scheduling used. 
 Context Switch vs Mode Switch: A mode switch occurs when the
CPU privilege level is changed, for example when a system call is
made or a fault occurs. The kernel works in more a privileged mode
than a standard user task. If a user process wants to access things
that are only accessible to the kernel, a mode switch must occur. The
currently executing process need not be changed during a mode
switch. 
 A mode switch typically occurs for a process context switch to occur.
Only the kernel can cause a context switch. 
 CPU-Bound vs I/O-Bound Processes: A CPU-bound process
requires more CPU time or spends more time in the running state. 
An I/O-bound process requires more I/O time and less CPU time. An
I/O-bound process spends more time in the waiting state. 

You might also like