注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

gmd20的个人空间

// 编程和生活

 
 
 

日志

 
 

kprobes和systemtap  

2010-01-15 19:45:03|  分类: linux相关 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
呵呵,在deep_pro的空间看到的,就去看了看,
Kprobes 一个通过动态插入断点到内核代码或者动态patch一下内核代码,在某个地方安装回调函数,可以实时捕获中断,然后回调你的处理函数的东西。可以用来在内核的某个地址,打印一些调试信息的等。已经集成在内核里面了,内核文档的说明写的很清楚了,
http://lxr.linux.no/#linux+v2.6.32/Documentation/kprobes.txt
黑啊有几个例子http://lxr.linux.no/#linux+v2.6.32/samples/kprobes/
看完,上面说明,copy一个例子下来应该就可以试试了,几个关键的结构在 http://lxr.linux.no/#linux+v2.6.32/include/linux/kprobes.h 里定义

我试了一下jprobe ,结果两次的的导致系统重启了,好像这个比较危险啊,不知道是不是我原型定义的不对还是gcc生成的代码结构不一样怎么的。一到捕获的时候就系统就挂掉了。 下周回来再仔细看看,不过用kprobes来调试应该方便很多,如果不用重新编译整个系统kprobes和systemtap - widebright - widebright的个人空间  就是不太稳定,最后结果也一样了


systemtap  http://sourceware.org/systemtap/
应该是对Kprobes的包装来的,可以直接用他的脚本来写,然后他自动帮你生成kprobe的模块,应该就是这样意思吧。不过我不是很喜欢这种,还要安装他的东东,又要学他的脚本,还不如我直接kprobe来的简单直接。
  评论这张
 
阅读(600)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017