美文网首页
Systrace 基本流程

Systrace 基本流程

作者: IOXusu | 来源:发表于2023-06-24 09:22 被阅读0次

基本流程

Systrace是android性能调试优化的常用工具,它可以收集进程的活动信息,如界面布局、UI渲染、binder通信等;也可以收集内核信息,如cpu调度、IO活动、中断等;这些信息会统一时间轴,在Chrome浏览器中显示出来,非常方便工程师性能调试、优化卡顿等工作。

简易的流程图如下,systrace是基于ftrace实现的,而ftrace 是 Linux 内核中的调试跟踪机制。

image.png
  1. 首先systrace指定抓取trace的类别等参数,然后触发手机端的/system/bin/atrace 开启对应文件节点的信息记录,接着atrace会读取 ftrace 的缓存,生成只包含ftrace信息的atrace_raw。

  2. Systrace会进一步收集系统的ps、task等信息,这些信息是为了协助解析atrace_raw中的ftrace信息,比如ps信息可以得到进程的名称,而不是难记的pid号。处理后的ftrace信息将和systrace目录下的prefix.html、systrace_trace_viewer.html、suffix.html整合为一体,成为单个的html文件。

  3. 当浏览systrace信息时,Chrome浏览器借助systrace解析器(通过chrome://tracing访问),解析上面生成的trace.html文件,把其中原始的ftrace信息分门别类,再按照时间轴聚合排列,绘制出不同色块,简洁可观的显示在html页面上。

相关文章

网友评论

      本文标题:Systrace 基本流程

      本文链接:https://www.haomeiwen.com/subject/wiheydtx.html