2015-05-26 42 views
0

如何在Solaris上顯示進程的所有函數調用?顯示進程的所有堆棧歷史記錄

dbx和pstack打印調用堆棧。我想要的是該進程調用的所有函數的列表。換句話說,該過程的幾個pstacks的輸出。

回答

0

您可以使用truss-u選項來查看進程所生成的所有函數調用。

truss -u a.out -u : yourprogram args ... 

將顯示對程序中的函數和函數庫(如libc)中的函數的所有調用。

truss -u a.out -u :: yourprogram args ... 

還將跟蹤從庫函數到其他庫函數的調用。這將是更多的輸出;對printf的調用將導致對C庫函數的其他幾十個調用。