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

Context Switching'

Context switching involves saving the state of a process currently running on the CPU, loading the state of a different process, and switching between the two so that multiple processes can share a single CPU. When a process is interrupted or needs to wait for I/O, its context is saved to an area called a process control block and a new process's context is loaded from its own process control block. This allows each process to resume from where it left off.
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)
230 views

Context Switching'

Context switching involves saving the state of a process currently running on the CPU, loading the state of a different process, and switching between the two so that multiple processes can share a single CPU. When a process is interrupted or needs to wait for I/O, its context is saved to an area called a process control block and a new process's context is loaded from its own process control block. This allows each process to resume from where it left off.
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/ 1

Context Switching involves storing the context or state of a process so that it can be

reloaded when required and execution can be resumed from the same point as earlier.
This is a feature of a multitasking operating system and allows a single CPU to be
shared by multiple processes.
A diagram that demonstrates context switching is as follows:
In the above diagram, initially Process 1 is running. Process 1 is switched out and Process 2 is
switched in because of an interrupt or a system call. Context switching involves saving the state of
Process 1 into PCB1 and loading the state of process 2 from PCB2. After some time again a context
switch occurs and Process 2 is switched out and Process 1 is switched in again. This involves
saving the state of Process 2 into PCB2 and loading the state of process 1 from PCB1.
Context Switching Triggers
There are three major triggers for context switching. These are given as follows:
 Multitasking: In a multitasking environment, a process is switched out of the CPU so
another process can be run. The state of the old process is saved and the state of the new
process is loaded. On a pre-emptive system, processes may be switched out by the
scheduler.

 Interrupt Handling: The hardware switches a part of the context when an interrupt occurs.
This happens automatically. Only some of the context is changed to minimize the time
required to handle the interrupt.

 User and Kernel Mode Switching: A context switch may take place when a transition
between the user mode and kernel mode is required in the operating system.

Context Switching Steps


The steps involved in context switching are as follows:

 Save the context of the process that is currently running on the CPU. Update the process
control block and other important fields.
 Move the process control block of the above process into the relevant queue such as the
ready queue, I/O queue etc.
 Select a new process for execution.
 Update the process control block of the selected process. This includes updating the process
state to running.
 Update the memory management data structures as required.
 Restore the context of the process that was previously running when it is loaded again on
the processor. This is done by loading the previous values of the process control block and
registers.

Context Switching Cost


Context Switching leads to an overhead cost because of TLB flushes, sharing the cache
between multiple tasks, running the task scheduler etc. Context switching between two
threads of the same process is faster than between two different processes as threads
have the same virtual memory maps. Because of this TLB flushing is not required.

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