c/c++语言开发共享如何在内存中映射_particular_区域?

我有一个程序。 我希望它能够在不同的运行中映射特定的内存区域。

我只想拥有这个特定的内存区域,比如0xabcdabcd到0xdeadbeef我将mmap映射到一个特定的文件。 无论如何要保证这个吗? (我必须以某种方式确保其他东西没有加载到这个特定的区域)。

编辑:

如何确保在内存中没有其他任何内容?

    你不能确保没有别的东西占用那个记忆区域 – 先到先得。 但是,由于你需要内存的一个特定部分,我猜你有一个非常专业的环境,所以你只需要确保你是第一个(使用启动脚本)

    你需要做两件事:

    对于起始地址,您需要确保它是页面大小的倍数。 要获取pagesize,请使用call sysconf(_SC_PAGESIZE) (这是Linux上的相应调用,其他平台可能不同)。

    将地址传递给addr地图。 尝试在8KB边界上获取它。 你可以试试mlock()

      以上就是c/c++开发分享如何在内存中映射_particular_区域?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/550191.html

      (0)
      上一篇 2021年1月14日
      下一篇 2021年1月14日

      精彩推荐