![Linux内核中有类似mprotect的功能吗?](https://linux22.com/image/135439/Linux%E5%86%85%E6%A0%B8%E4%B8%AD%E6%9C%89%E7%B1%BB%E4%BC%BCmprotect%E7%9A%84%E5%8A%9F%E8%83%BD%E5%90%97%EF%BC%9F.png)
这保护Linux 中的系统调用允许调用程序将内存区域设置为只读/只执行、只读(不执行)、只执行等。显然它只能在用户空间中使用。 Linux 内核中是否有类似的函数允许我更改内核中的内存页面属性?
答案1
asm-generic/set_memory.h:int set_memory_ro(unsigned long addr, int numpages);
asm-generic/set_memory.h:int set_memory_rw(unsigned long addr, int numpages);
asm-generic/set_memory.h:int set_memory_x(unsigned long addr, int numpages);
asm-generic/set_memory.h:int set_memory_nx(unsigned long addr, int numpages);