Intel MPK介绍

Intel MPK介绍是一种用户空间基于页的内存权限管理机制

大家好,欢迎来到IT知识分享网。

Intel MPK (Memory Protection Keys)

MPK是一种用户空间基于页的内存权限管理机制。

标记

权限控制

PKRU (protection key rights for user pages) 是一个32位的寄存器,用于存储每个key的访问权限。每个key具有两个对应的位(访问禁止写禁止)。这些权限仅在数据访问时强制执行,而对指令提取无效。

在这里插入图片描述
指令RDPKRUWRPKRU分别用于读和写PKRU,这两条指令都不是特权指令,在用户空间运行,不需要上下文切换,开销小(20cycles左右)。

硬件支持情况

在这里插入图片描述

与系统调用mprotect区别:

  1. 更新PKRU不需要系统调用,比mprotect快很多(MPK在标记页的时候需要进行系统调用)。
  2. MPK的保护时线程本地的,不同线程的访问权限可能不一致,与对应的PKRU有关,而mprotect会影响整个进程。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/106785.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信