2014-09-05 26 views
1

爲什麼Linux mtrace實用程序沒有跟蹤通過mmap()/ munmap()cals完成的內存分配?如何以及在實施方面遇到什麼挑戰?爲什麼mtrace工具不支持mmap()分配?

我需要一個可靠的工具來跟蹤由我的應用程序完成的大量使用mmap()調用完成的內存分配。 valgrind無法支持我的setuid啓用的應用程序,併發出此錯誤'無法執行setuid/setgid可執行文件:: Valgrind不支持setuid可執行文件。'

感謝, Saravanan

回答

0

我不知道你正在使用的命令mtrace的效用。但是對於nmap,mtrace具有不同的效用,只要http://nmap.org即可。您必須下載http://nmap.org/nsedoc/scripts/mtrace.html提供的該實用程序。提供以下描述

查詢從源到目標主機的多播路徑。

這可以通過發送IGMP Traceroute Query並偵聽IGMP Traceroute響應來工作。 Traceroute Query被髮送到第一跳幷包含關於源,目的地和多播組地址的信息。第一跳默認爲多播所有路由器地址。默認多播組地址爲0.0.0.0,默認目的地是我們自己的主機地址。必須提供源地址。解析響應以獲取有關接口地址,使用的協議和錯誤代碼的有趣信息。

這與Cisco IOS中提供的mtrace實用程序類似。

+1

我認爲,你的意思是mtrace'多播跟蹤'。我的問題是在Linux中由GNU提供的「內存跟蹤」實用程序。 – 2014-10-21 15:34:32