Sunday, December 29, 2013

Difference between interrupt context and process context

Process context: When the kernel is running code on behalf of some process, we refer to the kernel running in process context. The kernel could be running in process context because of executing a system call like read() or write().

Interrupt context: When the kernel is not running in process context, we say that it is running in interrupt context. The kernel runs in interrupt context because of either of these conditions:

  1. Actually receiving an interrupt on the IRQ line.
  2. Soft-IRQ
  3. Timer firing
Hence, the kernel can be running only in either one of the two.


Post a Comment