【发布时间】:2015-03-24 03:27:28
【问题描述】:
是否有工具可以在整个执行过程中跟踪/记录进程的内存访问?我发现vmtrace 合适,但它似乎已经死了(至少无法访问下载链接)。
有关内存访问的其他信息也很有用,例如页面错误。
【问题讨论】:
-
您能否说明您希望收集哪些数据?我假设您不想记录对每个内存字节的每次读取或写入访问。那么你想看到的究竟是什么?例如,您是否只想知道曾经读/写过哪些页面(没有任何排序)?
-
@Alan Au 是的,基本上我想按照流程执行的顺序跟踪每一次访问(以字节粒度)。
-
这是一个非常严格的要求。 vmtrace 似乎并没有真正做到这一点。它只记录在页面级别。所以我认为这对你没有帮助。有没有办法缩小这个要求?我可能是错的,但即使有这样的工具,运行起来也可能不切实际,因为在记录每条指令和数据读写的同时运行即使是最简单的程序也会花费大量的时间(每条指令都可以有多个内存访问)。