我怎么能访问正在运行的程序的内存?

时间:2016-06-01 07:35:40

标签: c linux memory-management mmap

假设我有一个C程序:

#include<stdio.h>
#include<time.h>

int main()
{
    int a = rand() % 1000;
    return 0;
}

如何找到&#34; a&#34;的价值?没有在控制台上打印它,但通过linux终端命令访问其地址以从中读取值?

或者一般来说,如何在不看其实现的情况下映射二进制文件的所有写入值(如&#34; blackbox&#34;)?

1 个答案:

答案 0 :(得分:3)

可通过/proc/pid/mem访问内存,索引为/proc/pid/maps,Python原型为how-do-i-read-from-proc-pid-mem-under-linux