trace
also: strace, ltrace, system call tracing
A debugging technique that monitors system calls, function calls, or program execution to observe what a process is doing in real-time.
Trace refers to the ability to follow and log the execution of a program or system calls. Linux provides tools like strace and ltrace that intercept and display system calls, signals, and library function calls made by a running process.
For example, running strace ls /tmp shows every system call ls makes—including open(), read(), write(), and exit()—with their arguments and return values. This reveals what files are accessed, what permissions are checked, and where a program might be failing.
Tracing is invaluable for debugging mysterious crashes, understanding program behavior, detecting performance bottlenecks, and learning how applications interact with the kernel and system libraries.