如何从Linux中的用户空间中找到变量的物理地址?

前端之家收集整理的这篇文章主要介绍了如何从Linux中的用户空间中找到变量的物理地址?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想找到用户空间进程中定义的变量的物理地址?有没有办法使用root权限?

解决方法

首先,你为什么要这样做?现代虚拟机系统的目的是从应用程序编程人员的方式去除植物存储器内存布局的复杂性.给他们每个自己的统一地址空间,使他们的生活更轻松.

如果您确实想要这样做,几乎完全需要使用内核模块.以正常方式获取变量的虚拟地址,使用它来索引到进程页表,并读取您找到的值(帧的物理地址).然后添加页面偏移量以获取完整的物理地址.请注意,在启用分页时,您将无法使用此地址.

(如果你幸运的话,你可以从/ proc文件系统获取一个VM区域的帧地址,因此不需要编写一个内核模块.)

猜你在找的Linux相关文章