Question:

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
collegedunia
Verified By Collegedunia

The Correct Option is C

Approach Solution - 1

Step 1: Understanding system calls.
System calls provide an interface between user programs and the operating system kernel, allowing controlled access to system resources.
Step 2: How system calls are triggered.
User programs cannot directly execute kernel-level instructions. Instead, they trigger a controlled transfer of control to the kernel.
Step 3: Role of software interrupts.
This transfer is typically achieved using a software interrupt or trap instruction, which switches the CPU from user mode to kernel mode.
Step 4: Final conclusion.
Hence, system calls are usually invoked using software interrupts.
Was this answer helpful?
0
0
Show Solution
collegedunia
Verified By Collegedunia

Approach Solution -2

A system call needs to safely transfer control from an unprivileged user program into the privileged operating system kernel. Let's check each mechanism:

  1. A privileged instruction: Privileged instructions are ones only the kernel itself is allowed to execute, a user program can't simply issue one directly, since the whole point of privilege levels is to prevent user code from executing kernel-only instructions on its own.
  2. A jump instruction: A plain jump just changes the instruction pointer within the same privilege level; it does not elevate the CPU from user mode into kernel mode, so it can't be used to safely invoke protected kernel routines.
  3. Software interrupt: A software interrupt (or trap instruction) is a special instruction a user program IS allowed to execute; it deliberately triggers a controlled switch to kernel mode at a predefined entry point, letting the OS safely take over on the user program's behalf. This is exactly how system calls are implemented in essentially all mainstream operating systems.
  4. Hardware interrupt: Hardware interrupts are triggered by external devices (like a timer or disk controller) signaling the CPU, they aren't something a running user program deliberately issues to request an OS service.

Only one of these mechanisms is both issuable by user code and capable of safely elevating privilege to the kernel.

Therefore, the correct answer is Software interrupt.

Was this answer helpful?
0
0