syscalls

When a user-space program invokes a system call (e.g., read()), what is the correct sequence of events that transitions execution into the kernel?

A

The program triggers a hardware interrupt on the CPU bus, which the kernel's device driver handles

B

The program jumps directly to the kernel function address, executes it, and returns

C

The program executes a trap instruction, the CPU switches to kernel mode using the trap table, the kernel handler runs, then control returns to user mode

D

The program sends a message to the kernel process via IPC, the kernel process handles it and sends back the result