栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

是否有比解析/ proc / self / maps更好的方法来确定内存保护?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

是否有比解析/ proc / self / maps更好的方法来确定内存保护?

我不知道

VirtualQuery
Linux上的等效功能。但是,其他可行或不可行的方法是:

  • 您设置了捕获SIGBUS / SIGSEGV的信号处理程序,然后继续进行读取或写入。如果内存受到保护,则将调用您的信号捕获代码。如果不是,则不调用您的信号捕获代码。无论哪种方式,您都会赢。

  • 您可以在每次调用时进行跟踪,

    mprotect
    并建立相应的数据结构,以帮助您了解某个区域是否受读或写保护。如果您可以访问所有使用的代码,那么这很好
    mprotect

  • mprotect
    通过将代码与重新定义函数的库链接起来,可以监视过程中的所有调用
    mprotect
    。然后,您可以构建必要的数据结构,以了解某个区域是否受到读或写保护,然后调用系统
    mprotect
    以真正设置保护。

  • 您可以尝试使用

    /dev/inotify
    和监视文件
    /proc/self/maps
    中的任何更改。我想这是行不通的,但值得尝试。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/369486.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号