Consider the following interrupt protection levels in Linux, and arrange them…
2025
Consider the following interrupt protection levels in Linux, and arrange them in the increasing order of their priorities.
A. User-Mode Programs (Preemptible)
B. Bottom Half Interrupt Handlers
C. Top Half Interrupt Handlers
D. Kernel System Service Routines (Preemptible)
Choose the correct answer from the options given below:
- A.
B → A → C → D
- B.
C → B → A → D
- C.
C → A → B → D
- D.
A → D → B → C
Attempted by 43 students.
Show answer & explanation
Correct answer: D
Answer (in increasing order of priority): User-Mode Programs (preemptible) → Kernel System Service Routines (preemptible) → Bottom Half Interrupt Handlers → Top Half Interrupt Handlers
Explanation:
User-Mode Programs (preemptible): these run in user space and are the most easily preemptible, so they have the lowest priority.
Kernel System Service Routines (preemptible): run in kernel mode and preempt user processes, but they can still be interrupted by interrupt contexts, so they are higher than user-mode but lower than interrupt-related handlers.
Bottom Half Interrupt Handlers: include softirqs/tasklets that execute in an interrupt context after the top half; they have higher priority than preemptible kernel code because they run as part of interrupt handling.
Top Half Interrupt Handlers: are hardware interrupt handlers executed immediately in interrupt context and have the highest priority.
Key idea: priority increases from ordinary user processes up through preemptible kernel routines to bottom-half softirqs and finally to top-half hardware interrupt handlers.
A video solution is available for this question — log in and enroll to watch it.