- 博客(3)
- 资源 (8)
- 收藏
- 关注
原创 Redhat Enterprise 4.3中静态编译perf
注:编译中使用的perf源码和内核版本并不是标准版中的源码,是我们内部的一个版本。这篇文章主要是提供一些思路,在你的环境中编译遇到的问题可能和我这里的不同,源文件或者Makefile文件的内容也会不一致。如果有问题,欢迎交流。 perf是在kernel 2.6.31中才加入到内核树中,较早的发行版本中内核版本都比较老,都没有带perf。如果要使用perf,需要自己去编译。这里进行的是
2013-11-11 16:50:50 6562
原创 Kprobes源码分析----kprobe的处理
在探测点注册kprobe后,会在执行到探测点的指令时触发断点异常(trap 3)。kprobes在断点异常的通知链die_chain上注册了自己的处理函数,这个函数就是kprobe_exception_notify()。kprobe_exception_notify()不仅会接收到断点异常的通知,还会接收到调试异常(trap 1)和保护异常的通知。这篇文章主要围绕这个函数的处理来展开。
2013-11-10 09:26:10 2862
原创 Kprobes源码分析----kprobe的注册
kprobes是一个动态地收集调试和性能信息的工具,使用它几乎可以跟踪任何函数或被执行的指令。它的机制也很简单,就是将被探测的位置的指令替换为断点指令(不考虑jmp优化),断点指令被执行后会通过notifier_call_chain机制来通知kprobes,kprobes会首先调用用户指定的pre_handler接口。执行pre_handler接口后会单步执行原始的指令,如果用户也指定了post_
2013-11-07 13:44:30 3356
Linux_C高级程序员指南.pdfLinux_C高级程序员指南.pdf
2011-04-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人