Tracking System Call Volume Per Process
script examples
monitoring system calls (volume per process)
examples of SystemTap scripts
monitoring system calls (volume per process)
monitoring system calls (volume per process)
examples of SystemTap scripts
system calls volume (per process), monitoring
examples of SystemTap scripts
uses systemtap/testsuite/systemtap.examples/process/syscalls_by_p*.stp
This section illustrates how to determine which processes
are performing the highest volume of system calls. In
previous sections, we've described how to monitor the top system
calls used by the system over time ().
We've also described how to identify which applications use a
specific set of "polling suspect" system calls the most
(). Monitoring the volume of
system calls made by each process provides more data in
investigating your system for polling processes and other resource
hogs.
syscalls_by_proc.stp
lists the top 20 processes performing the
highest number of system calls. It also lists how many system calls each process
performed during the time period. Refer to
for a sample output.
Sample Output
Collecting data... Type Ctrl-C to exit and display results
#SysCalls Process Name
1577 multiload-apple
692 synergyc
408 pcscd
376 mixer_applet2
299 gnome-terminal
293 Xorg
206 scim-panel-gtk
95 gnome-power-man
90 artsd
85 dhcdbd
84 scim-bridge
78 gnome-screensav
66 scim-launcher
[...]
If you prefer the output to display the process IDs instead of the process names,
use the following script instead.
syscalls_by_pid.stp
As indicated in the output, you need to manually exit the script in order to display the
results. You can add a timed expiration to either script by simply adding
a timer.s() probe; for example, to instruct the script to expire after
5 seconds, add the following probe to the script:
probe timer.s(5)
{
exit()
}