在Linux上搜索进程的内存

4

我该如何在Linux中搜索进程的内存状态?具体而言,我希望识别感兴趣的特定区域,并在规律的时间间隔内查看它们,可能偶尔会插入新值。

我怀疑答案涉及调用ptrace()和读取/proc/[pid]/mem, 但需要更多信息。

3个回答

2

我相信你可以通过解析/proc/[pid]/maps来实现你想要的目标——我曾经用它来诊断无效指针。


我想要一些更多的信息和一个演示 :P - Matt Joiner
жҲ‘еҲҡеҲҡжөҸи§ҲдәҶValgrindзҡ„aspacemgr-linux.cж–Ү件пјҢе®ғиҜ»еҸ–/proc/self/maps -- дёҚе®№жҳ“зҗҶи§ЈпјҢдҪҶд№ҹи®ёдҪ еҸҜд»Ҙд»ҺдёӯиҺ·еҸ–дҝЎжҒҜгҖӮ - Gregory Pakosz

2
我已经为所需功能开发了一些代码。
模块 memutil提供进程内存区域迭代,以及借助 ptrace模块和 readmem可执行文件进行Python或C内存读取的帮助。
如果有任何问题或独立工具的请求,请随时提出。

0
也许使用 GDB 是一个选项吗?您应该能够使用断点周期性地读取内存之类的操作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接