MMAP上的/ proc / PID / MEM [英] mmap on /proc/pid/mem

查看:851
本文介绍了MMAP上的/ proc / PID / MEM的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

有没有人成功mmap'ing一个的/ proc / PID / MEM与Linux内核2.6文件?我得到一个ENODEV(没有这样的设备)错误。我的电话是这样的:

Has anybody succeeded in mmap'ing a /proc/pid/mem file with Linux kernel 2.6? I am getting an ENODEV (No such device) error. My call looks like this:

char * map = mmap(NULL, PAGE_SIZE, PROT_READ, MAP_SHARED, mem_fd, offset);

和我已经看的/ proc / PID / maps文件在调试,当执行到达这个电话核实,抵消了堆栈减去PAGE_SIZE顶部的值。我也核实了ptrace的mmap设置是设置errno为ENODEV。

And I have verified by looking at the /proc/pid/maps file while debugging that, when execution reaches this call, offset has the value of the top of the stack minus PAGE_SIZE. I have also verified with ptrace that mmap is setting errno to ENODEV.

推荐答案

请参阅<$c$c>proc_mem_operations /usr/src/linux/fs/proc/base.c / proc中/.../纪念品不支持 MMAP

这篇关于MMAP上的/ proc / PID / MEM的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆