SystemTrap是监控和跟踪运行中的Linux内核操作的动态方法。
http://www.ibm.com/developerworks/cn/linux/l-systemtap/
使用SystemTrap需要使用trap来运行一个stp脚本
如何安装:
Centos下直接yum install systemtrap就行了
测试是否可以运行
运行:stap -ve 'probe begin { log("hello world") exit() }'
可以看到systemtap是先解析分析stp脚本,然后生成对应的c程序,再接着生成ko文件,后面运行ko可执行文件
对应于systemTrap的流程:
SystemTap的官网
探针
SystemTap有个探针的概念,比如我希望在每次进行系统调用的时候都触发一次逻辑,那么就要使用
kernel.function("sys_sync") {
...
}