zil*_*n01 2 memory winapi executable portable-executable
我注意到(至少在Win32上)在可执行文件中,代码段(.text)具有"读取"访问位设置,以及"执行"访问位.是否有任何真正合理的理由让代码自己阅读而不是自己执行?我认为这是其他部分的用途(例如.rdata).
(具体来说,我在谈论IMAGE_SCN_MEM_READ.)
IMAGE_SCN_MEM_EXECUTE |IMAGE_SCN_MEM_READ被映射到内存中PAGE_EXECUTE_READ,相当于PAGE_EXECUTE_WRITECOPY.这是启用写时复制访问所必需的.写时复制意味着任何修改页面的尝试都会导致正在创建的页面的新的进程私有副本.
需要写入副本有几个不同的原因:
| 归档时间: |
|
| 查看次数: |
248 次 |
| 最近记录: |