whocalls - 报告对特定过程的调用
whocalls [-l wholib] [-s] funcname executable [arguments]...
whocalls 是一个基于 ld.so.1(1)(允许跟踪给定的函数调用)的 Link-Auditing 功能的实用程序的简单示例。有关审计的更多信息,请参见《Oracle Solaris 11.4 Linkers and Libraries Guide》中的 "Runtime Linker Auditing Interface"。
executable 通常可以和任何关联的参数一起运行。每次调用 funcname 过程时,都会在标准输出中显示该过程的参数以及栈跟踪。
支持以下选项:
指定要使用的备用 who.so Link-Auditing 库。
如果可用,检查并使用 .symtab 符号表中的局部符号。尽管这比使用 .dynsym 符号表成本高一点,但可以生成更详细的栈跟踪信息。
以下示例跟踪一个简单的 helloworld 程序对 printf() 的调用:
example% whocalls printf helloworld printf(0x106e4, 0xef625310, 0xef621ba8) helloworld:main+0x10 helloworld:_start+0x5c Hello World
有关下列属性的说明,请参见 attributes(7):
|