syscallbyproc.d
位于DTraceToolkit的Proc
文件夹下,其功能是统计进程使用系统调用的次数。脚本代码就一行(略去版权信息):
syscall:::entry { @num[execname] = count(); }
脚本代码分析如下:
监听syscall Pr[......]
syscallbyproc.d
位于DTraceToolkit的Proc
文件夹下,其功能是统计进程使用系统调用的次数。脚本代码就一行(略去版权信息):
syscall:::entry { @num[execname] = count(); }
脚本代码分析如下:
监听syscall Pr[......]
昨天看到Adam
发的推特:“hoping for DTrace in the next Red Star OS update!
”,我就在想:如果想把DTrace
移植到一个新的操作系统上,从哪里获得DTrace
的源码包呢?现在Mac OS X
,FreeBSD
都有DTrace
了,难道从这些系统上fork[......]
creatbyproc.d
位于DTraceToolkit的Proc
文件夹下,其功能是打印调用creat
系统调用的进程名和创建的文件名。脚本代码就一行(略去版权信息):
syscall::creat*:entry { printf("%s %s", execname, copyinstr(arg[......]
lockbyproc.d
位于DTraceToolkit的Locks
文件夹下,其功能是统计进程在获得“adaptive mutex
”等待时间的总和。脚本代码就一行(略去版权信息):
lockstat:::adaptive-block { @time[execname] = sum(arg1);[......]
lockbydist.d
位于DTraceToolkit的Locks
文件夹下,其功能是统计进程在获得“adaptive mutex
”等待时间的分布。脚本代码就一行(略去版权信息):
lockstat:::adaptive-block { @time[execname] = quantiz[......]