Linux

計算發出的系統呼叫的數量

  • June 6, 2020

是否有任何工具可以計算整個系統中例如在一秒鐘內發出的系統呼叫的數量(如 global strace)?(類似於vmstat對每秒中斷或上下文切換次數所做的事情)

一種可能性是使用perf. 如果你只想要一個全域計數,每秒更新一次,執行

perf stat -e raw_syscalls:sys_enter -a -I 1000 sleep 5

這將顯示系統呼叫的全域計數,每秒,持續 5 秒。該sleep 5命令確定跟踪將持續多長時間;該-I參數確定輸出計數的頻率。

perf還可以按類型計算呼叫:

perf stat -e 'syscalls:sys_enter_*' -a -I 1000 sleep 5

或顯示top所有程序的類似視圖,按系統呼叫計數,每兩秒更新一次:

perf top -e raw_syscalls:sys_enter -ns comm

引用自:https://unix.stackexchange.com/questions/591243