我正在尝试分析为嵌入式Linux系统编写的进程。这是我们正在开发的产品。进程名称设置为" dummy"出于保密原因。有人建议我用perf来剖析假人。所以我尝试了一堆不同的perf命令,以便了解在dummy中定义的内部函数在热区中以及我们如何调用libc和libglib中的内容。这是假人在99%CPU下运行时的perf top示例。它以" perf top -G -p"
运行+ 13.75% libc-2.18.so [.] 0x000547a2
+ 7.52% [kernel] [k] __do_softirq
+ 6.97% libglib-2.0.so.0.3600.4 [.] 0x00089d60
+ 2.87% libpthread-2.18.so [.] 0x000085c4
+ 2.71% libpthread-2.18.so [.] pthread_mutex_lock
+ 2.62% libc-2.18.so [.] malloc
+ 2.51% [kernel] [k] vector_swi
+ 1.87% [kernel] [k] _raw_spin_unlock_irqrestore
+ 1.49% [kernel] [k] __getnstimeofday
+ 1.45% dummy [.] chksum_crc32_int
+ 1.34% [kernel] [k] fget_light
+ 1.29% [kernel] [k] _raw_spin_unlock_bh
+ 1.28% [kernel] [k] memcpy
+ 1.24% [adkNetD] [k] adk_netd_clean_nca_queue
.
.
.
即使我有一些想法,我也完全不理解输出。所以这是我的问题。
00054750 t _int_malloc