微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何从另一个程序中访问内存

我有一个封闭源码的第三方程序,我想要能够

>知道分配给程序的内存
>访问该内存(只读是好的)

像vmmap(1),heap(1)和leaks(1)这样的功能似乎与我需要的功能类似,但是我找不到源代码(OS X版本),并且无法弄明白工作.优选地,这将全部在用户空间中完成,可能以root身份运行,如果我可以避免,我不想为了绕过内存保护而编写内核代码.

我尝试使用共享内存传递我想要阅读的地址作为shmat(2)的第二个参数,但这最终不成功(可能不是其预期的用法和/或不好的做法),仍然让我没有办法确定我正在寻找什么记忆(拥有记忆的程序必须向我报告其地址).

是否有一种方法来禁用特定程序的内存保护,以便在尝试读取/写入分配给其他进程的内存时不会发生故障?有没有更好的方法,不会使错误严重损坏我的整个系统?

这是如何实现的?

解决方法

原文地址:https://www.jb51.cc/c/116181.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐