背景
hi,粉丝朋友们:
大家好!
下面来介绍一下新的framework专题hal+perfetto+surafceflinger,这个专题主要就是分为3大块,但是彼此直接又是相互关联的。
比如surfaceflingre模块深入分析需要用到hal相关的模块,比如mapper,hwc等,所以说去分析surfaceflinger就必须要有一定hal基础比较好,还有就是perfetto,大家可能会以为他只是个性能优化工具。其实经常在分析性能时候都会面临一个问题那就是卡顿,分析卡顿是不是要分析systrace/perfetto的surfaceflinger进程,所以其实这3个模块都是有着紧密联系的。
具体内容列表
hal部分内容如下:
perfetto主要内容如下:
核心思路就是讲解清楚perfetto相关的基础知识,学会怎么看perfetto的trace,及怎么自己加和打印tag和trace等,有了这些知识后再会结合相关的业务来练习怎么看perfetto,比如surfaceflinger就是一个学习实战看perfetto的很好案例
surfaceflinger相关的知识部分:
包含了app层面的SurfaceControl,及新版本出现的BLASTBufferQueue相关,基本网络没有的知识点,不过这部分最重要就是vsync部分知识,这个属于最开始基础核心,一定要掌握
目前完成情况列表
1 课程介绍
2 hal发展总体介绍1
3 hal发展总体介绍2
4 经典hal深入讲解1
5 经典hal深入实战讲解2
6 经典hal深入实战讲解3
7 经典hal深入讲解4
8 hidl深入背景讲解1
9 hidl深入讲解2
10 hidl深入讲解3
11 hidl深入讲解-genarates原理
12 hidl实战部分1
13 hidl实战部分2
14 hidl的passthrough案例分析1
15 hidl的passthrough案例分析2
16 vndk介绍部分
17 vndk讲解1
18 vndk讲解2
19 aidl深入讲解1
20 aidl深入讲解2
21 aidl深入实战讲解2
22 aidl深入实战讲解2
23 aidl实战之java端调用
24 aidl的更新部分
25 vinf相关介绍
26 perfetto的背景及抓取方式
27 perfetto的查看基础知识讲解
28 perfetto使用技巧及自定义tag加入方式
29 perfetto使用小技巧分享
30 sf之surfacecontrol讲解1
31 sf之surfacecontrol讲解2
32 sf之transaction讲解1
33 sf之transaction讲解2
34 sf之vsync基础知识讲解1
35 sf之vsync基础知识讲解2
36 sf之vsync源码分析1
37 sf之vsync源码分析2
38 sf之vsync源码分析3
39 sf之vsync源码分析4
40 sf之vsync硬件校准部分深入讲解
41 sf之vsync总结部分1
42 sf之vsync总结部分2
43 sf之vsync与perfetto结合分析巩固1
44 sf之vsync与perfetto结合分析巩固2
45 sf之vsync与perfetto结合分析巩固3
46 -sf之vsync与perfetto结合分析巩固4
47 sf之transaction讲解1 --sf之setTransaction部分深入讲解
48 sf之flushTransation部分深入讲解
49 sf之commit部分
50 sf之commit部分与systrace分析巩固
上面是目前已经完成还剩下部分:
BLASTBufferQueue小模块
Sf的合成小模块
Mapper和HWC的hal实战分析部分
部分精彩片段:
上面的framework干货获取相关可以 私聊+v(androidframework007)