我想向 Linux 中的页面错误处理程序添加代码,特别是我有兴趣修改用于写入时复制的代码,即do_wp_page
. 然而,困境是我想要测试我的应用程序的机器不在我的控制范围内。不能在该机器上修改操作系统或内核,因为它是由多个用户使用的共享机器。
现在我正在寻找一种方法来定义我自己的页面错误处理程序,它只用于我正在运行的应用程序。也许我可以使用内核模块(我认为我也必须要求一些管理权限)或者我可以在用户空间中定义它。请注意,我不希望它用于处理 SIGSEGV 信号,所以不要说使用mprotect
. 我想处理写页面错误时的真实副本。我在这里有什么选择?