在C / UNIX中扫描内存

时间:2014-09-18 22:48:16

标签: c unix operating-system

我需要扫描程序调用过程的整个内存,并分别检查哪些块是只读的,读写的或不可访问的。这听起来很直接但我开始时遇到了麻烦。我想知道是否有人可以通过提供扫描调用过程内存的相关功能来指出我正确的方向

例如,要开始,如何获取调用进程的起始和结束内存地址?

1 个答案:

答案 0 :(得分:1)

这可能与内核有关,但在Linux上,/ proc文件系统可以访问它:

/proc/[pid]/mem是进程内存的内容,因此您只需要识别父亲的pid,如果您有权限,则可以对其进行扫描。

文件的实际布局在某种程度上取决于相关的可执行类型和内核。

http://linux.die.net/man/5/proc