Red Hat Training
A Red Hat training course is available for Red Hat Enterprise Linux
4.4. 用户空间的内存保护密钥(也称为 PKU 或 PKEYS)
内存保护密钥提供了一种机制,可以强制实施基于页面的保护域,但不需要在应用更改保护域时修改页表。它的工作原理是将每个页表条目中的 4 位忽略到一个"保护键",从而给出 16 个可能的键。
内存保护密钥是某些 Intel CPU 芯片组的硬件功能。要确定您的处理器是否支持此功能,请检查 /proc/cpuinfo
中是否存在 pku
$ grep pku /proc/cpuinfo
为了支持此功能,CPU 提供了一个新的用户可访问寄存器(PKRU),每个密钥有两个独立位(Access Disable and Write Disable)。有两个新指令(RDPKRU 和 WRPKRU)可用于读取和写入新寄存器。
更多文档(包括编程示例)可在由 kernel
中找到。
-doc 软件包提供的 /usr/share/doc/kernel-doc-*/Documentation/x86/protection-
keys.txt