Linux kernel 如何判断操作导致英特尔CPU出现页面错误?

Linux kernel 如何判断操作导致英特尔CPU出现页面错误?,linux-kernel,x86,Linux Kernel,X86,页面错误处理程序如何知道它在读或写操作中出错?此指示的任何标志/状态值?页面错误处理程序不应关心页面是否由于读或写操作而被访问。但是,它只检查页面所属的vma及其可用性,并在出现页面错误时确定其是否可写、可读或可执行。这是通过验证页面访问的有效性来实现的,页面错误处理程序必须在vm区域列表或AVL树中搜索覆盖被访问页面的vm区域。如果vm区域存在且其访问权限标志vm_READ、vm_WRITE和vm_EXEC允许访问,则访问有效。此外,您可能还对与页面错误错误代码相关联的其他标志感兴趣。页面错误

页面错误处理程序如何知道它在读或写操作中出错?此指示的任何标志/状态值?

页面错误处理程序不应关心页面是否由于读或写操作而被访问。但是,它只检查页面所属的vma及其可用性,并在出现页面错误时确定其是否可写、可读或可执行。这是通过验证页面访问的有效性来实现的,页面错误处理程序必须在vm区域列表或AVL树中搜索覆盖被访问页面的vm区域。如果vm区域存在且其访问权限标志vm_READ、vm_WRITE和vm_EXEC允许访问,则访问有效。此外,您可能还对与

页面错误错误代码相关联的其他标志感兴趣。页面错误代码包含一个W/R位,指示访问是写入1还是读取0。