问题描述
我已经选择了几个跟踪标签,当我运行跟踪(从 DDMS
)我得到以下的输出:
I've selected several of the trace tags and when I run the trace (from DDMS
) I get the following output:
Unexpected error while collecting system trace. Unable to find trace start marker 'TRACE:':
error opening /sys/kernel/debug/tracing/options/overwrite:
No such file or directory (2)
错误openi
(切断这里的错误)
error openi
(cuts off the error here)
确实有在内核目录中没有调试文件,但该机制将生成必要的路径?
indeed there is no debug file in the kernel directory, but which mechanism will generate the necessary path?
推荐答案
它看起来像你的手机运行的是启动(内核)的形象,不支持systrace。
It looks like your cellphone is running a boot(kernel) image that does not support systrace.
错误打开/ SYS /内核/调试/跟踪/选项/覆盖:没有这样的文件或目录(2)
"error opening /sys/kernel/debug/tracing/options/overwrite: No such file or directory (2)"
此错误消息意味着亚行守护进程(在设备侧的adb模块运行)找不到/ SYS /内核/调试/跟踪/选项/覆盖设备的文件系统上。 systrace工作在亚行和内核虽然在/ sys /内核/调试sysfs的节点/跟踪通信。如果这些节点不会暴露你的手机是什么原因,systrace是行不通的。
This error message means adb daemon (the adb module running on device side) could not find /sys/kernel/debug/tracing/options/overwrite on your device's file system. systrace works over adb and communicates with kernel though sysfs nodes under /sys/kernel/debug/tracing. If these nodes are not exposed on you phone for whatever reason, systrace just will not work.
因此,使用你应该先得到一个shell您的设备上:
So you should first get a shell on your device using:
亚行外壳
然后浏览确认是否/ SYS存在的话,如果/ SYS /内核/调试/跟踪的存在。
Then browse to confirm if /sys exists at all and if /sys/kernel/debug/tracing exists.
如果他们在那里这是极不可能的,你必须要调试systrace.py弄清楚怎么来systrace认为节点都没有了。否则,你需要闪存,systrace支持不同的启动映像,因为sysfs的是由内核控制(主要是由在编译时配置)和init.rc,这两者是引导映像部分。
If they are there which is extremely unlikely, you have to debug systrace.py to figure out how come systrace think the nodes were not there. Otherwise, you need to flash a different boot image which has systrace support, because sysfs is controlled by kernel(mostly by configurations at compile time) and init.rc , both of which are part of boot image.
闪烁着不同的启动映像可能涉及解锁/生根设备。你可能得去扇等网站xdadeveloper的信息和图像。另一种选择是下载的内核源为您的设备,编译内核,使自己的引导映像。 Linux是在你的设备的GPL因此制造商有义务释放他们所使用的专用内核的源$ C $ C。
Flashing a different boot image might involve unlocking/rooting the device. You probably have to go to fan sites like xdadeveloper for information and image. Another option is to download the source of kernel for your device, compile kernel and make the boot image yourself. Linux is under GPL thus manufacturer of your device is obligated to release the source code of the specialized kernel they use.
这篇关于Android的DDMS v22.0.1无法生成使用Droid的剃刀4.1.2 systrace的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!