【问题标题】:Linux Memory ManagementLinux 内存管理
【发布时间】:2011-04-15 19:19:25
【问题描述】:

有什么方法可以标记页面只执行没有读取权限? (即能够在该页面上执行指令,而无需对该可执行页面的读取权限。)

我的最终目标是制作一个我可以执行但没有其他进程能够对该页面进行任何数据访问的页面..

【问题讨论】:

  • 只是出于好奇,您打算如何在不读取页面的情况下允许执行权限?我的意思是……你需要阅读指令来执行它们,对吧?

标签: memory-management linux-kernel


【解决方案1】:

这是与内核和硬件相关的事情之一,如mprotect() manual page 中所述:

PROT_EXEC 是否有任何不同于 PROT_READ 的效果取决于架构和内核版本。

在最近的 Linux/x86 内核上,如果您的 CPU 支持 NX-bit,这些标志肯定是离散的。在其他 x86 CPU 上,这取决于您的内核是否支持 Exec-Shield 或其他类似的 NX 位仿真。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-11-23
    • 1970-01-01
    • 1970-01-01
    • 2011-11-29
    • 2020-06-13
    • 1970-01-01
    • 2015-09-28
    • 2011-06-14
    相关资源
    最近更新 更多