【问题标题】:why mtrace utility is not supporting mmap() allocations?为什么 mtrace 实用程序不支持 mmap() 分配?
【发布时间】:2014-10-30 01:00:12
【问题描述】:

为什么 Linux mtrace 实用程序不跟踪通过 mmap() / munmap() cals 完成的内存分配?实施的方式和挑战是什么?

我需要一个可靠的工具来跟踪我的应用程序完成的内存分配,该应用程序大量使用 mmap() 调用。 valgrind 无法支持我启用 setuid 的应用程序,并发出此错误“无法执行 setuid/setgid 可执行文件 :: Valgrind 不支持 setuid 可执行文件。”

谢谢, 沙拉湾

【问题讨论】:

    标签: c memory-management memory-leaks linux-kernel mtrace


    【解决方案1】:

    我不知道您使用的是哪个 mtrace 实用程序。但是对于 nmap,mtrace 具有不同的实用程序,前提是 http://nmap.org。您必须下载该实用程序,该实用程序可在http://nmap.org/nsedoc/scripts/mtrace.html 获得。提供以下描述

    查询从源主机到目标主机的多播路径。

    这通过发送 IGMP Traceroute 查询并侦听 IGMP Traceroute 响应来工作。 Traceroute Query 被发送到第一跳并包含有关源、目标和多播组地址的信息。第一跳默认为多播所有路由器地址。默认的多播组地址是 0.0.0.0,默认目标是我们自己的主机地址。必须提供源地址。解析响应以获取有关接口地址、使用的协议和错误代码的有趣信息。

    这类似于 Cisco IOS 中提供的 mtrace 实用程序。

    【讨论】:

    • 我认为,您的意思是 mtrace 表示“多播跟踪”。我的问题是 GNU 在 Linux 中提供的“内存跟踪”实用程序。
    猜你喜欢
    • 2017-01-24
    • 2015-02-22
    • 1970-01-01
    • 2022-11-23
    • 1970-01-01
    • 2017-10-16
    • 1970-01-01
    • 1970-01-01
    • 2010-09-07
    相关资源
    最近更新 更多