syscall
also: system call
A syscall (system call) is a request from a user program to the Linux kernel to perform a privileged operation, such as reading a file, creating a process, or allocating memory.
A syscall is the primary interface between user-space applications and the kernel. When a program needs to perform operations that require elevated privileges—like accessing hardware, managing processes, or doing I/O—it must ask the kernel to do it on its behalf via a syscall.
The process works by transitioning the CPU from user mode to kernel mode, executing the requested operation safely, then returning to user mode with the result. Common syscalls include read(), write(), open(), fork(), and exit().
You can view syscalls made by a program in real-time using strace. For example, strace ls shows every syscall that ls invokes, revealing that even simple commands make dozens of system calls to list files and display output.