zoukankan      html  css  js  c++  java
  • Linux内核调试方法总结之ftrace

    ftrace

    【用途】

    ftrace包含一系列跟踪器,用于不同的场合,比如跟踪内核函数调用(function tracer)、跟踪上下文切换(sched_switch tracer)、查看中断被关闭的时长(irqsoff tracer)、跟踪内核中的延迟以及性能问题等。Ftrace是内建于Linux的内核跟踪工具,依赖于内核配置宏(Kernel Hacking->Tracers)和debugfs。

    【原理】

                           

    ftrace本质上是一种静态代码插装技术,不需要支持某种变成接口让用户自定义trace行为,这样可以提高系统的稳定性。其具体实现有两种机制:mcount机制,通过编译器内建的打桩工具在编译时植入桩代码,通过gcc –pg选项使能,用于实现function和function_graph两种tracer;tracepoint机制,与常见的钩子函数机制是一样的,在关键函数中添加钩子函数实现。

    【使用技巧】

    http://www.ibm.com/developerworks/cn/linux/l-cn-ftrace/index.html

  • 相关阅读:
    函数式编程,高阶函数,纯函数,函数柯里化
    JS防抖与节流
    闭包使用场景
    Promise 内部实现
    视图组件
    认证 权限 频率控制 组件
    序列化组件
    Django之中间件及Auth认证模块
    Cookie,Session
    forms组件
  • 原文地址:https://www.cnblogs.com/justin-y-lin/p/5424546.html
Copyright © 2011-2022 走看看