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

只做公司网站方案成立公司代理

只做公司网站方案,成立公司代理,建设网站投资多少钱,php程序员一、理论 1.背景 抓取开机 trace 需要使用 userdebug 版本#xff0c;而我们测试开机性能问题时都要求使用 user 版本#xff0c;否则会有性能损耗问题。因此想要在抓取开机性能trace 时#xff0c;需要在 user 版本上打开 atrace 功能之后才能抓取 trace#xff0c;默认 …一、理论 1.背景 抓取开机 trace 需要使用 userdebug 版本而我们测试开机性能问题时都要求使用 user 版本否则会有性能损耗问题。因此想要在抓取开机性能trace 时需要在 user 版本上打开 atrace 功能之后才能抓取 trace默认 release user 版本是无法直接抓取 trace 的。 2.sepolicy修改 涉及的更改主要是 atrace.te 和 domain.te 文件 prebuilts/api/30.0/private 下的文件更改是因为需要与 private下的文件保持一致。 private/atrace.te atrace 配置原先只在 userdebug 和 eng 版本中才生效这里是放开对版本类型的限制使 atrace 配 置对user 版本同样有效。 private/domain.te 同理因为 atrace 是 domain 类型这里是放开 user 版本下 atrace 对 debugfs_tracing_debug 类型的 读写权限。 Android版本    Api Level  SDK Android 14 (Developer Preview) Android 13.0(T)    33 Android 12.0(S)    31,32 Android 11.0(R)    30 Android 10.0(Q)    29 Android 9.0(Pie)    28 Android 8.1(Oreo)    27 Android 8.0(Oreo)    26 Android 7.1(Nougat)    25 Android 7.0(Nougat)    24 Android 6.0(Marshmallow)    23 Android 5.1(Lollipop)    22 Android 5.0(Lollipop)    21 Android 4.4W(KitKat Wear)    20 Android 4.4(KitKat)    19 Android 4.3(Jelly Bean)    18 Android 4.2(Jelly Bean)    17 Android 4.1(Jelly Bean)    16 Android 4.0.3(IceCreamSandwich)    15 Android 4.0(IceCreamSandwich)    14 Android 3.2(Honeycomb)    13 Android 3.1(Honeycomb)    12 Android 3.0(Honeycomb)    11 Android 2.3.3(Gingerbread)    10 Android 2.3(Gingerbread)    9 Android 2.2(Froyo)    8 Android 2.1(Eclair)    7 Android 2.0.1(Eclair)    6 Android 2.0(Eclair)    5 Android 1.6(Dout)    4 Android 1.5(Cupcake)    3 Android 1.1(Base)    2 Android 1.0(Base)    1 3. 抓取trace 3.1 QCOM平台 3.1.1 抓取atrace日志 替换 atrace.rc 系统中预置的atrace.rc 是 user 版本的 rc 需要替换成我们修改过的 atrace.rc 。命令如下 adb push atrace.rc /system/etc/init/atrace.rc 关闭原生 trace 功能设置 atrace 触发器。命令如下 $ adb shell # setprop persist.traced.enable 0 # setprop persist.debug.atrace.boottrace 1 重启设备 设备重启后在适当的位置抓取 atrace 数据。建议尽快抓取否则可能出现缓冲区不足导致前面数 据被冲掉的情况。命令如下 $ adb shell atrace --async_stop -z -c -o /data/local/tmp/atrace.out 将 /data/local/tmp/atrace.out 下的数据 pull 出来然后使用 sdk 中的 systrace.py 工具将 atrace 数据 转换成 html 格式。 $ python systrace.py --from-fileatrace.out 3.1.2 抓取zygote启动阶段的trace数据        由于上面的抓取 atrace 数据的方式是通过 persist.debug.atrace.boottrace 属性来出来的而 persist 属性 触发器的触发时机是在加载data 分区 persist 属性文件之后。这个时间点远远晚于 zygote 的启动时间所 以是抓不到zygote 启动阶段的 trace 数据。        如果想要抓取 zygote 启动阶段的 trace 数据需要手动将 boottrace 的启动时间调整到 zygote 启动之前。 关闭属性触发器 $ adb shell # setprop persist.debug.atrace.boottrace 0 修改设备上的init.rc文件 首先将设备中的init.rc文件pull出来 $ adb pull /system/etc/init/hw/init.rc 修改init.rc文件 这里是在启动 zygote-start 的位置直接将 boottrace 服务启动起来 将 init.rc push 回设备 $ adb push init.rc /system/etc/init/hw/ 重启设备 接下来的操作与 3.1.1 章节重启后的内容一致。 3.2 MTK平台 3.2.1 抓取atrace日志 关闭原生 trace 功能 $ adb shell # setprop persist.traced.enable 0 打开 mtk systrace 工具 # setprop persist.vendor.boot_trace 1 重启设备 抓取 trace 数据 $ adb shell cat /sys/kernel/tracing/trace SYS_FRACE 通过 trace2html 工具将 trace 数据转换成 html 格式 二、执行操作 如需在启动过程中启用 systrace请执行以下操作 在 frameworks/native/cmds/atrace/atrace.rc 中修改如下 write /sys/kernel/debug/tracing/tracing_on 0write /sys/kernel/tracing/tracing_on 0更改为 write /sys/kernel/debug/tracing/tracing_on 1write /sys/kernel/tracing/tracing_on 1这将启用跟踪功能默认处于停用状态。 在 device.mk 文件中添加以下 PRODUCT_PROPERTY_OVERRIDES debug.atrace.tags.enableflags802922 PRODUCT_PROPERTY_OVERRIDES persist.traced.enable0在设备专属 init.rc 文件中添加以下行 on property:sys.boot_completed1 // This stops tracing on boot complete write /d/tracing/tracing_on 0 write /d/tracing/events/ext4/enable 0 write /d/tracing/events/f2fs/enable 0 write /d/tracing/events/block/enable 0在设备启动后提取跟踪记录 adb root adb shell atrace --async_stop -z -c -o /data/local/tmp/boot_trace adb pull /data/local/tmp/boot_trace 三、项目中实际应用MTK QCOM通用 1.system/core/rootdir/init.rc 添加如下开机完成关闭trace on property:sys.boot_completed1write /d/tracing/tracing_on 0write /d/tracing/events/ext4/enable 0write /d/tracing/events/f2fs/enable 0write /d/tracing/events/block/enable 0 2.frameworks/native/cmds/atrace/atrace.rc 原本start boottrace 触发条件是on late-init  persist.debug.atrace.boottrace1 下面的修改是直接将on late-init 改成了on early-init 并将persist.debug.atrace.boottrace  条件去掉直接触发start boottrace   可以不用使用我下面的修改可以按照你们需要调整start boottrace  例如可以在init.rc 不同的trigger阶段去启动boottrace  service. 3.device/qcom/xxx/xxxx.mk  或者build/target/product/base_system.mk 添加属性配置 4.BoardConfig.mk  BOARD_KERNEL_CMDLINE 追加下面字段 BOARD_KERNEL_CMDLINE trace_buf_size64M trace_eventcpu_frequency,sched_cpu_util,sched_boost_cpu,cpufreq_interactive,cpu_idle,cpu_frequency,cpu_frequency_limits,sched_wakeup,sched_switch,sched_blocked_reason,sched_cpu_hotplug 高通项目一般在device/qcom/xxxx/BoardConfig.mk MTK项目一般在device/mediatek/xxxx/BoardConfig.mk
http://www.hkea.cn/news/14283614/

相关文章:

  • 广告页面制作seo刷排名公司
  • 做医疗网站要几个人宽甸县建设局网站
  • 建设企业网站的原因食品网站制作
  • 深圳云购网站制作免费推广网店
  • 网站建设和执纪监督wordpress豆瓣
  • 云南制作网站的公司南宁哪个网络公司建网站好
  • 福建微网站建设价格建站网站的图片
  • 智能网站灰色关键词排名优化
  • 中国医生电影网络营销推广方法套模版做的网站好优化吗
  • 云南网站制作公司视频网站设计模板
  • 自己做网站好难挣钱做互联网产品和运营必备的网站
  • 网站开发工程师题天猫seo搜索优化
  • 高校文明建设网站网建会
  • 深圳国内网站设计公司做网站原型的软件
  • 关于网站建设公司大全vultr做网站怎么样
  • ps怎么做网站手机必备网站
  • 茂名网站制作网页网站域名注册
  • 关于小学网站建设的论文开个公司做购物网站
  • 中国建设银行贵州省分行网站大站网站建设
  • 百度搜索网站带图片运营笔记 wordpress
  • 买空间去哪个网站网络营销方式ppt
  • 网站建设开发方式包括哪些单页面网站
  • 公司怎么开网站邢台信息港123招聘
  • 网站运营工作内容wordpress 长页面
  • 龙华网网站建筑网站图纸
  • 锦州网站建设渠道网站模板怎么弄的
  • 医疗网站建设 中企动力百度网站官网入口
  • 2019一个网站开发要多少钱wordpress运行加速
  • 瑞金网站建设推广二级栏目网站
  • 上海网站建设找哪家seo做的最好的网站