Отображение всей истории стека процесса
Как я могу отобразить все вызовы функций процесса в Solaris?
DBX и Pstack печатает стек вызовов. То, что я хочу, это список всех функций, вызываемых процессом. Другими словами, вывод нескольких pstacks процесса.
1 ответ
Решение
Вы можете увидеть все вызовы функций, которые делает процесс, как они их делают, используя ферму с -u
вариант.
truss -u a.out -u : yourprogram args ...
покажет все вызовы, сделанные к функциям в вашей программе и к функциям в библиотеках, таких как libc.
truss -u a.out -u :: yourprogram args ...
также будет отслеживать вызовы от библиотечных функций к другим библиотечным функциям. Это будет намного больше выходных; вызов printf
приведет к десяткам других вызовов функций библиотеки C.