栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

Linux中对程序的性能分析——使用trace查看函数调用关系即耗时

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Linux中对程序的性能分析——使用trace查看函数调用关系即耗时

1、背景

相信很多读者在学习或者工作过程中,往往会遇到这样的问题。需要分析某个用户态程序的性能或者是分析某个用户态程序实现的原理(这里一般指代码量较大或使用到的内核调用较为复杂的工程),一般需要分析程序的原因有这些,要学习程序的实现原理以及内核中的实现过程或是首先查看函数在底层的调用关系、与其他平台使用的性能相比过差分析其原因、需要改进该程序或重新实现等。

1.1、实现途径

起初各位小伙伴需要分析源代码时往往会通过“函数插桩”的方法来分析代码的执行流程,当然这种方法在代码量较小、调用层级不深的情况下使用起来方便得多,但是要面对到Linux内核源码的时候会显得有些束手无策,其原因可能因为不知从何找起,或者调用层级很深以及重复名字的函数很多不知该在何处插桩导致使用该方法很难达到我们分析的目的。([注]:当然ftrace也有这样的追踪方法)

2、工具的引入——Linux ftrace

Linux ftrace是内核提供给开发者和设计者的一个内部跟踪器,可以帮助开发者们搞清楚Linux Kernel中发生的调用关系以及正在发生的行为,同时可以用来分析或调试发生在内核空间的延时和性能问题。
由于ftrace提供了包含ringbuffer、tracefs等一套便捷的框架,因此各种trace也基于此在ftrace上实现出自己的功能,现如今<

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/860207.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号