Navigation

    全志在线开发者论坛

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • 在线文档
    • 社区主页

    【FAQ】全志R系列如何在Tina下使用bootchartd来分析rootfs启动时间?

    其它全志芯片讨论区
    r329 r328 r818 faq 技术支持
    1
    1
    1330
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • q1215200171
      budbool LV 9 last edited by q1215200171

      问题背景

      硬件: R818
      软件: Tina2.5及以上
      操作: bootchart工具打开后无法开机。
      说明: 客户程序较复杂,系统应用起来时间有25秒,需要优化。bootchart无使用说明。

      问题简述

      Tina整体启动时间中rootfs占用的比重很大,但是rootfs启动过程中log很多,在自启动脚本中也添加不了打印,造成启动时间统计非常不便。

      Tina SDK有集成busybox bootchart工具,可使用该工具分析rootfs启动过程各个进程的启动时刻以及耗费时间等信息,可以让用户分析启动过程并进行针对性优化。

      解决办法

      该方法支持Tina所有方案。

      Tina上开启bootchartd方法:
      ① make menuconfig,打开CONFIG_BUSYBOX_CONFIG_BOOTCHARTD
      ② 修改文件env-x.x.cfg,将“init=/sbin/init”修改为“init=/sbin/bootchartd”
      ③ 编译,烧写固件,设备启动后,等待一段时间(1min左右),直到出现/var/log/bootlog.tgz,使用adb pull将该文件拉到PC端。
      ④ 在PC端解压附件工具bootchart.tar.xz,运行命令“./bootchart/pybootchartgui.py bootlog.tgz”,生成bootchart.png图片,打开可得系统各进程的启动时间。

      bootchart.png图片分析

      bootchart.png效果如下图所示,图中横坐标是时间,纵坐标是各进程信息。图上方两条是CPU和I/O的使用情况;下方是各个进程的运行状态,包含各个进程开始执行时间与结束时间,进程条上有颜色信息,表示对CPU、I/O的占用情况。

      e076818e05064a89b48968ee2e674996.jfif

      优化思路:

      • 将主应用程序一起主应用依赖的程序提前执行,其他程序延后执行。
      • 调整进程启动顺序,使CPU、I/O不要太高,避免竞争产生等待。

      附件:bootchart.tar.xz

      1 Reply Last reply Reply Quote Share 1
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • Referenced by  q1215200171 q1215200171 
      • 1 / 1
      • First post
        Last post

      Copyright © 2024 深圳全志在线有限公司 粤ICP备2021084185号 粤公网安备44030502007680号

      行为准则 | 用户协议 | 隐私权政策