码迷,mamicode.com
首页 > 其他好文 > 详细

ftrace.txt

时间:2014-08-19 22:13:15      阅读:261      评论:0      收藏:0      [点我收藏+]

标签:des   使用   os   io   文件   for   工作   linux   

                ftrace - 函数跟踪器
                ========================

Copyright 2008 Red Hat Inc.
   Author:   Steven Rostedt <srostedt@redhat.com>
  License:   The GNU Free Documentation License, Version 1.2
               (dual licensed under the GPL v2)
Reviewers:   Elias Oltmanns, Randy Dunlap, Andrew Morton,
             John Kacur, and David Teigland.
Written for: 2.6.28-rc2
Updated for: 3.10
翻译:王飞   wangfei_cn@yeah.net
校对:王飞   wangfei_cn@yeah.net

简介
---

Ftrace做为一个kernel内部的跟踪器,其设计目的是让内核开发人员以及系统设计人员了解linux内核的运
行时行为,在用户态就可以做故障诊断以及性能调优等工作。

尽管ftrace被大家当作是一个典型的函数跟踪器,实际上它是由一组跟踪工具组成的一个框架。比如可以利用
跟踪中断关闭和打开的延迟来诊断其间到底发生了什么。同样也可以分析抢占以及进程的调度行为,比如睡眠
唤醒。

Ftrace的一个大众的用法是它的事件跟踪。遍及内核,有数百个静态的事件跟踪点,通过debugfs我们可以
使能这些事件跟踪,以便搞清楚内核子系统到底做了什么。


实现细节
------

请参考ftrace-design.txt以获得更多细节。


文件系统
------

用户可以通过debugfs接口来控制和使用ftrace,并且同样从debugfs得到结果。

当我们编译内核时把debugfs编译选项打开后(使能ftrace功能后会自动打开),会自动创建目录
sys/kernel/debug,我们可以通过编辑/etc/fstab文件来自动挂在debugfs:

 debugfs       /sys/kernel/debug          debugfs defaults        0       0

或者我们可以在运行时手动mount:

 mount -t debugfs nodev /sys/kernel/debug

为了快速访问该目录,你可以建立一个软链接:

 ln -s /sys/kernel/debug /debug

当你编译内核时使能了任何ftrace的子选项时,同样会在debugfs目录下建立一个叫tracing的目录,此文
余下部分假定读者已经处在该目录(cd /sys/kernel/debug/tracing),并且我们的注意力集中在该目
录上,不会关注别的内容。

就是这样!(假设你的kernel已经打开了ftrace选项)

在挂载debugfs之后,你可以看到有一个“tracing”目录,这个目录包含了ftrace的控制和输出的文件节点。
这里对一些关键文件进行了解释:

  注意:所有表示时间的值都是指微秒。

    current_tracer:

    显示当前配置的跟踪器。

ftrace.txt,布布扣,bubuko.com

ftrace.txt

标签:des   使用   os   io   文件   for   工作   linux   

原文地址:http://www.cnblogs.com/kernel-road/p/3923140.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!