【发布时间】:2015-07-25 08:33:01
【问题描述】:
系统如何限制进程写入只读的内存区域?特别是,假设硬件不能够为内核完成这项工作,Linux 内核如何能够强制执行这些权限?
我最初的猜测是这些内存区域没有映射到进程的地址空间,所以每当进程尝试访问这些内存区域时,就会产生一个页面错误,它允许内核控制检查一切是否正常为了。我意识到这可能会大大降低性能,所以我在这里寻求帮助,了解是否有更智能的方法来强制执行这些权限。
【问题讨论】:
-
SuperUser 可能更适合回答这个问题。
-
我也会尝试在那里询问。非常感谢。
-
什么样的MMU不支持页面上的“只读”权限,Linux甚至可以在上面运行?无论如何,您最初的猜测是正确的,是的,考虑到程序代码通常被映射为只读,这将非常慢。我认为这样的架构不会找到很多客户。
标签: memory-management linux-kernel