전체 시스템(예: 전역 strace
)에서 발행된 시스템 호출 수를 계산할 수 있는 도구가 있습니까? (마치가상 머신 상태초당 인터럽트 또는 컨텍스트 스위치 수)
답변1
한 가지 가능성은 시스템 호출을 계산하는 데 사용하는 것입니다 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
또는 2초마다 업데이트되는 시스템 호출 횟수별로 모든 프로세스를 보여주는 유사한 보기 :
perf top -e raw_syscalls:sys_enter -ns comm