1 Context Switching Group 1 – Presented by David Calhoun Question 3.7: What are the actions taken by the kernel to context- switch between processes?
1
Context SwitchingGroup 1 – Presented by David Calhoun
Question 3.7: What are the actions taken by the kernel to context-switch between processes?
2
Multitasking (real life)
(Look carefully...)
3
Multitasking (OS)
(process scheduler)
4
What is a context switch?
-process of suspending and resuming processes
-triggered by interrupt (for instance, an IO interrupt), preemptive multitasking, or as part of
user/kernel mode switching
-process context represented by the Process Control Block (PCB)
5
Process Control Block (PCB)
The PCB is "the manifestation of a process in an operating system"
Harvey M. Deitel (1984) [1982]. An introduction to operating systems
6
What's in the PCB?
7
PCB components
-PCB implementations differ, but generally contain:
Process ID (PID) Process state (fig 3.2) (ready, running, waiting,
etc) Registers (including Program Counter) Memory management info (address space of
the process)More complete list: p. 104
8
Overhead
Switching contextsinvolves a lot ofoverhead (typically afew milliseconds).
Think of the overheadinvolved in multitaskingin real life.