Question:medium

System calls are usually invoked by using which one of the following means?

Show Hint

System calls rely on software-generated interrupts or traps, not hardware interrupts.
Updated On: Jul 6, 2026
  • A privileged instruction
  • A jump instruction
  • Software interrupt
  • Hardware interrupt
Show Solution

The Correct Option is C

Approach Solution - 1

User programs run at a restricted privilege level and can't directly execute kernel-only instructions or jump straight into kernel code, that would defeat the whole purpose of protection between user programs and the OS.
What they can do is execute a special trap/software-interrupt instruction, which is specifically designed to hand control to the kernel at a safe, predefined entry point, switching the CPU into kernel mode in a controlled way.
Hardware interrupts, by contrast, come from external devices, not from the user program requesting a service.
So the correct answer is software interrupt.
Was this answer helpful?
0
Show Solution

Approach Solution -2

Another angle is to ask who initiates each of these mechanisms, and whether that matches how a program requests OS services:

  1. Privileged instruction: Can only be initiated by code already running in kernel mode, a user program has no legal way to execute one directly, so this can't be how user code asks for a service.
  2. Jump instruction: Initiated by the running program itself, but it only moves execution within the program's own privilege level, it can't hand control to the kernel.
  3. Software interrupt: Deliberately initiated by the running user program itself, precisely to ask the operating system for a service, and it's built specifically to switch privilege levels safely when executed.
  4. Hardware interrupt: Initiated by an external device asynchronously, not by the user program wanting a service at a specific point in its code.

Only the software interrupt is both initiated by the requesting program and capable of safely reaching kernel code.

Therefore, the correct answer is Software interrupt.

Was this answer helpful?
0