在Linux OS中禁用ASLR后,是否修复了虚拟到物理映射

时间:2013-11-13 09:44:39

标签: linux gcc operating-system virtual-memory computer-architecture

我在Linux OS中使用gcc。我已禁用ASLR。现在我得到的数据总是与我预期的数组相同。

现在,我的问题是,在程序执行期间,虚拟到物理地址的映射是否也相同,或者在执行程序期间虚拟到物理地址的映射是否会发生变化?

我的问题的任何答案/指针都将受到高度赞赏。提前谢谢。

1 个答案:

答案 0 :(得分:0)

通常,从虚拟地址到物理地址的映射在执行期间保持不变,只有少数例外。例如,如果您的阵列所在的页面成为要交换到磁盘的受害者,则操作系统可能会稍后将其重新映射到另一个物理地址。

但是为什么你需要将你的阵列固定在物理内存中?您只能从内核操作物理内存,如果您已在内核中执行某些操作,则可以始终执行分页来获取实际和最新的翻译。