#!/usr/bin/env stap # # This script continuously lists the top 20 systemcalls on the system # global syscalls function print_top () { printf ("SYSCALL\t\t\t\tCOUNT\n") foreach ([name] in syscalls- limit 20) printf("%-20s\t\t%5d\n",name, syscalls[name]) printf("--------------------------------------\n") delete syscalls } probe kernel.function("sys_*") { syscalls[probefunc()]++ } # print top syscalls every 5 seconds probe timer.ms(5000) { print_top () }