如果虚拟内存页面是可执行的,那么它是否意味着它是可读的?

时间:2012-01-16 11:45:40

标签: x86 protection virtual-memory

如果我在x86系统上创建了一个虚拟内存页面并且页面保护设置为只可执行,那么它是否意味着该页面也是可读的?

2 个答案:

答案 0 :(得分:1)

假设IA-32e模式:是的,页表条目没有禁止读取的位,只写(位1,R / W)。假设第2位(U / S,用户/监督)允许访问,页面始终可读。位63,EXB是执行禁止位。这就是保护标志。英特尔处理器手册中的第3.10.3章。

答案 1 :(得分:0)

我认为x86没有单独的可执行标志,所有可读页面都是可执行的。所以我猜这意味着答案是"是的" (即使逻辑是倒退的)。