Kprobe和debugfs

本文介绍了Linux系统中强大的调试工具kprobes,它可以在不中断CPU操作的情况下进行性能分析和调试。同时,文章探讨了debugfs接口,这是一种用户态观察内核信息的方法,通过debugfs_create_file将file operations与debugfs文件关联,并利用seq file接口简化管理。文章还对比了procfs和debugfs,阐述了它们各自在用户与内核数据交换中的作用和适用场景。
摘要由CSDN通过智能技术生成

最新发现linux有个巨好用的工具--kprobes.几乎可以在任何指令上probe,这样对kernel的性能分析和调试都有很大的帮助。关键这和bdi3000这样的调试工具相比可以不需要中断cpu操作,代价是多些指令消耗。

在读kprobes源码的时候又研究了下debugfs接口,这也是个在用户态下观察内核信息的好方法。debugfs从名称上看是个文件系统,里面的接口是文件的file operations. 使用debugfs_create_file将file operations同debugfs特定文件链接起来。使用seq file接口来管理file operations时,仅需要定制file_open接口,这里引入一个 seq_operations 结构。

debugfs, procfs一度让我十分迷惑,二者功能上如功类似,为什么这个关键的特性都会在内核里存在呢?IBM documents 中的这篇文章给我了答案:[[

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值