我遇到內存使用麻煩的錯誤,所以我想使用DTrace檢查malloc和free在Solaris 10上如何使用Dtrace檢查Solaris 10上的malloc?
我用下面的命令
dtrace -l | grep malloc
輸出是:
7000 fbt unix prom_malloc entry
7001 fbt unix prom_malloc return
7141 fbt genunix cacl_malloc entry
7142 fbt genunix cacl_malloc return
12319 fbt genunix rmallocmap_wait entry
12320 fbt genunix rmallocmap_wait return
13078 fbt genunix rmalloc_wait entry
13079 fbt genunix rmalloc_wait return
13526 fbt genunix rmallocmap entry
13527 fbt genunix rmallocmap return
16846 fbt genunix rmalloc entry
16847 fbt genunix rmalloc return
25931 fbt tmpfs tmp_memalloc entry
25932 fbt tmpfs tmp_memalloc return
似乎沒有malloc。
我檢查了Solaris Internal,發現malloc調用sbrk。所以我使用下面的命令:
dtrace -l | grep sbrk
但沒有發現。
那麼,如何使用Dtrace檢查Solaris 10上的malloc?
我想這個工具將是對您有用:http://theunixshell.blogspot.com/2013/11/finding-memory-leaks-on-solaris-is-no.html – Vijay
@Vijay:非常感謝您的意見,這是一個非常酷的工具! –
@Vijay:你願意打開你的工具的源代碼嗎? –