[linux的3.2]我想知道是否有可能找出在程序中打开的文件的内存位置。 假设我在a.cpp下面的代码编译为a.out:
FILE *f = fopen("myfile", "r");
将内容映射到a.out的内存空间吗? 如果是这样,我怎么能find它(页?范围?)了?
谢谢
FILE *指向的结构包含有关文件状态的一些信息。 内容不映射到程序的内存空间。
如果要将文件内容映射到内存空间,则必须使用mmap()函数。 这会给你一个指向进程逻辑内存空间内存区域的指针。 这个内存区域将保存文件的内容。