当前位置: 首页 > news >正文

红古微信网站建设外贸平台app下载

红古微信网站建设,外贸平台app下载,wordpress 页面 列表,营业执照注册官网文章目录 一、简介二、内核函数调用跟踪参考链接#xff1a; 一、简介 Ftrace 是 Linux 官方提供的跟踪工具#xff0c;在 Linux 2.6.27 版本中引入。Ftrace 可在不引入任何前端工具的情况下使用#xff0c;让其可以适合在任何系统环境中使用。 Ftrace 可用来快速排查以下相… 文章目录 一、简介二、内核函数调用跟踪参考链接 一、简介 Ftrace 是 Linux 官方提供的跟踪工具在 Linux 2.6.27 版本中引入。Ftrace 可在不引入任何前端工具的情况下使用让其可以适合在任何系统环境中使用。 Ftrace 可用来快速排查以下相关问题 特定内核函数调用的频次 function内核函数在被调用的过程中流程调用栈 function stack内核函数调用的子函数流程子调用栈function graph由于抢占导致的高延时路径等 Ftrace 跟踪工具由性能分析器profiler和跟踪器tracer两部分组成 性能分析器用来提供统计和直方图数据需要 CONFIG_ FUNCTION_PROFILERy 函数性能分析直方图 跟踪器提供跟踪事件的详情 函数跟踪function跟踪点tracepointkprobeuprobe函数调用关系function_graphhwlat 等 除了操作原始的文件接口外也有一些基于 Ftrace 的前端工具比如 perf-tools 和 trace-cmd 界面 KernelShark等。整体跟踪及前端工具架构图如下 Ftrace 的使用的接口为 tracefs 文件系统需要保证该文件系统进行加载 $ sysctl -q kernel.ftrace_enabled1 $ mount -t tracefs tracefs /sys/kernel/tracing$ mount -t debugfs,tracefs tracefs on /sys/kernel/tracing type tracefs (rw,nosuid,nodev,noexec,relatime) debugfs on /sys/kernel/debug type debugfs (rw,nosuid,nodev,noexec,relatime) tracefs on /sys/kernel/debug/tracing type tracefs (rw,nosuid,nodev,noexec,relatime)$ ls -F /sys/kernel/debug/tracing # 完整目录如下图tracing 目录下核心文件介绍如下表格当前可仅关注黑体加粗的项其他项可在需要的时候再进行回顾 文件描述available_tracers可用跟踪器hwlat blk function_graph wakeup_dl wakeup_rt wakeup function nopnop 表示不使用跟踪器current_tracer当前使用的跟踪器function_profile_enabled启用函数性能分析器available_filter_functions可跟踪的完整函数列表set_ftrace_filter选择跟踪函数的列表支持批量设置例如 tcp、tcp 和 tcp 等set_ftrace_notrace设置不跟踪的函数列表set_event_pid设置跟踪的 PID表示仅跟踪 PID 程序的函数或者其他跟踪tracing_on是否启用跟踪1 启用跟踪 0 关闭跟踪trace_options设置跟踪的选项trace_stat目录函数性能分析的输出目录kprobe_events启用 kprobe 的配置uprobe_events启用 uprobe 的配置events ( 目录 )事件Event跟踪器的控制文件 tracepoint、kprobe、uprobetrace跟踪的输出 Ring Buffertrace_pipe跟踪的输出提供持续不断的数据流适用于程序进行读取 perf_tools 包含了一个复位所有 ftrace 选型的工具脚本在跟踪不符合预期的情况下建议先使用 reset-ftrace 进行复位然后再进行测试。 二、内核函数调用跟踪 基于 Ftrace 的内核函数调用跟踪整体架构如下所示 这里我们尝试对于内核中的系统调用函数 __arm64_sys_openat 进行跟踪前面两个下划线需要注意的是 __arm64_sys_openat 是在 arm64 结构体系下 sys_openat 系统调用的包装如果在 x86_64 架构下则为 __x64_sys_openat() 由于我们本地的电脑是 M1 芯片所以演示的样例以 arm64 为主。 在不同的体系结构下可以在 /proc/kallsym 文件中搜索确认。 后续的目录如无特殊说明都默认位于 /sys/kernel/debug/tracing/ 根目录。 # 使用 function 跟踪器并将其设置到 current_tracer $ sudo echo function current_tracer# 将跟踪函数 __arm64_sys_openat 设置到 set_ftrace_filter 文件中 $ sudo echo __arm64_sys_openat set_ftrace_filter# 开启全局的跟踪使能 $ sudo echo 1 tracing_on# 运行 ls 命令触发 sys_openat 系统调用新的内核版本中直接调用 sys_openat $ ls -hl # 关闭 $ sudo echo 0 tracing_on $ sudo echo nop current_tracer# 需要主要这里的 echo 后面有一个空格即 “echo 空格 $ sudo echo set_ftrace_filter # 通过 cat trace 文件进行查看 $ sudo cat trace # tracer: function # # entries-in-buffer/entries-written: 224/224 #P:4 # # _----- irqs-off # / _---- need-resched # | / _--- hardirq/softirq # || / _-- preempt-depth # ||| / delay # TASK-PID CPU# |||| TIMESTAMP FUNCTION # | | | |||| | |sudo-15099 [002] .... 29469.444400: __arm64_sys_openat -invoke_syscallsudo-15099 [002] .... 29469.444594: __arm64_sys_openat -invoke_syscall我们可以看到上述的结果表明了函数调用的任务名称、PID、CPU、标记位、时间戳及函数名字。 在 perf_tools 工具集中的前端封装工具为 functrace 需要注意的是该工具默认不会设置 tracing_on 为 1 需要在启动前进行设置即 ”echo 1 tracing_on“。 perf_tools 工具集中 kprobe 也可以实现类似的效果底层基于 kprobe 机制实现ftrace 机制中的 kprobe 在后续章节会详细介绍。 参考链接 问题排查利器Linux 原生跟踪工具 Ftrace 必知必会perf-tools使用方法
http://www.hkea.cn/news/14579945/

相关文章:

  • 爱站库广告公司记账管理软件
  • 网站建设之织梦模板广东网页空间价格
  • 南联网站建设公司wordpress 使用插件下载
  • 枣强网址建站初中文凭怎么自考大专
  • 创建一个网站的技术百度优化seo
  • 杭州做网站 做小程序青海网站建设 小程序开发
  • 建设网站用户名河南专业网络推广公司
  • 管家婆免费资料网站163企业邮箱申请
  • 天梭手表官方网站湛江制作公司网站
  • 国外建筑网站app网站空间登录
  • 嘉兴网站制作维护建个平台需要多少资金
  • 建设银行瓶窑支行网站wordpress小说主题模板下载地址
  • 网站内容的特点网站内链 工具
  • 做网站上找王思奇delphi xe10网站开发
  • 做网站需不需要营业执照阿里云个人备案可以做企业网站吗
  • 无锡网站程序烟台seo外包
  • 广州哪些做网站的公司做网页的软件叫什么dw
  • 排版设计网站江门网站推广多少钱
  • 淘宝客网站根目录闽侯县网站建设
  • 惠来建设局网站德清淘宝网站建设
  • 做个网站多少钱一年苏州seo公司排名
  • 做网站换服务器怎么整普宁市建设局网站
  • 宁波网站建设制作方法各种浏览器的网址
  • 江苏华建建设股份有限公司网站自己的网站做弹出广告
  • 网站怎么做是满屏中信建设有限责任公司总经理
  • 如何设计网站站点淘客个人网站怎么建设
  • 网站开发环境实验报告最优的手机网站建设
  • 惠民县建设局网站重庆全网推广
  • 快速做网站流量数据统计分析千万不要报电子商务
  • 自学免费网站建设做网站技术路线