data_sources: { config { name: "linux.ftrace" ftrace_config { ftrace_events: "sched/sched_switch" ftrace_events: "power/suspend_resume" ftrace_events: "sched/sched_process_exit" ftrace_events: "sched/sched_process_free" ftrace_events: "task/task_newtask" ftrace_events: "task/task_rename" ftrace_events: "ftrace/print" atrace_categories: "gfx" atrace_categories: "input" atrace_categories: "view" atrace_categories: "wm" atrace_categories: "am" atrace_categories: "audio" atrace_categories: "video" atrace_categories: "res" atrace_categories: "dalvik" atrace_categories: "rs" atrace_categories: "bionic" atrace_categories: "power" atrace_categories: "pm" atrace_categories: "ss" atrace_categories: "network" atrace_categories: "aidl" atrace_categories: "rro" atrace_categories: "binder_driver" atrace_categories: "binder_lock" atrace_apps: "com.android.systemui" atrace_apps: "com.android.server" atrace_apps: "*" } } } duration_ms: 30000
时间: 2024-03-31 11:36:19 浏览: 24
这是一个Perfetto的配置文件示例,用于指定系统跟踪的数据源和缓冲区设置。具体解释如下:
- data_sources: {}:定义了一个数据源。
- config {}: 定义了数据源的配置信息。
- name: "linux.ftrace":指定数据源的名称为linux.ftrace。
- ftrace_config {}:指定数据源为Ftrace数据源,并指定其配置信息。
- ftrace_events: "...":指定要跟踪的Ftrace事件名称。
- atrace_categories: "...":指定要跟踪的ATrace事件类别。
- atrace_apps: "...":指定要跟踪的ATrace事件应用程序。
- duration_ms: 30000:指定跟踪的时间长度为30秒。
该配置文件的作用是定义了一个数据源,并指定了数据源的名称、Ftrace事件名称、ATrace事件类别和应用程序,以及跟踪的时间长度。执行该配置文件可以启动Perfetto进行系统跟踪,并收集指定的Ftrace和ATrace事件数据。
相关问题
Error: out/soong/.intermediates/frameworks/base/framework-minus-apex/android_common/aligned/framework-minus-apex.jar contains class file com.skydebug.ftrace.FtraceInfoHead, whose package name "com.skydebug.ftrace" is empty or not in the allow list build/soong/scripts/check_boot_jars/package_allowed_list.txt of packages allowed on the bootclasspath.
这是一个错误信息,可能是在进行Android系统的编译时出现的。具体的错误原因是在生成framework-minus-apex.jar这个jar包时,其中包含了一个空的或不在允许列表build/soong/scripts/check_boot_jars/package_allowed_list.txt中的包名为"com.skydebug.ftrace"的类文件com.skydebug.ftrace.FtraceInfoHead。
解决这个错误,您需要将com.skydebug.ftrace这个包名添加到允许列表build/soong/scripts/check_boot_jars/package_allowed_list.txt中。您可以进入该文件所在的目录,打开package_allowed_list.txt文件,将com.skydebug.ftrace这个包名添加到其中。然后重新编译Android系统即可。
Linux的/arch/arm64/kernel/ftrace.c中struct plt_entry的定义
在Linux的/arch/arm64/kernel/ftrace.c中,struct plt_entry的定义如下:
```c
struct plt_entry {
u32 insn1;
u32 insn2;
};
```
这个结构体是用来存储ARM64的Procedure Linkage Table(PLT)中的每个entry的。PLT是用来实现动态链接的一种机制,它是一个由一系列entry组成的表格,每个entry都是一个函数指针,指向对应的动态链接库中的函数。在ARM64中,每个entry是由两条32位的指令组成,这两条指令的具体内容取决于链接器和目标文件的实现。struct plt_entry中的insn1和insn2就是用来存储这两条指令的。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)