中断上下文中的页面错误

Ban*_*oot 3 linux operating-system linux-kernel

可以在中断处理程序/原子上下文中发生页面错误吗?

ado*_*yan 6

它可以,但这将是一场灾难.:-)

  • 例如,当访问的虚拟地址映射到不存在的页面时,会发生Pagefault.在中断上下文中,这意味着内核错误,并且不同于用户空间访问,其中进程被杀死,杀死中断处理程序是疯狂选项,具有将硬件保持在未定义状态的高可行性.因此,内核恐慌,cpu锁定,需要重启 (3认同)
  • @ninjalj:如果答案有用的话,相信起来会更容易。 (2认同)

Unc*_*leO 1

是的。

处理程序或关键区域的代码可以跨越两个页面之间的边界。如果第二页不可用,则需要发生页面错误才能将其引入。

  • 正因如此,Linux 内核不可交换。:) (7认同)