Operating system 操作系统对页面错误的响应

Operating system 操作系统对页面错误的响应,operating-system,interrupt,fault,68000,mmu,Operating System,Interrupt,Fault,68000,Mmu,当出现页面错误时,MMU引发异常(中断)。操作系统停止当前进程并处理此引发的中断 1) 这是否意味着(对于68K体系结构,其中有7条中断线,第7条不可屏蔽)MMU生成的中断为7级 2) 此外,如果在引发中断时有一个非常重要的过程(不需要虚拟寻址字的数据)正在进行,该怎么办?操作系统做什么 异常不一定是中断。中断是异常,但也有非中断的异常 页面错误异常是异常,但不是中断 始终处理非中断异常。页面错误异常是一个同步异常,当它发生时,是因为当前代码引发了它,所以操作系统应该以适当的方式处理它(这可能包

当出现页面错误时,MMU引发异常(中断)。操作系统停止当前进程并处理此引发的中断

1) 这是否意味着(对于68K体系结构,其中有7条中断线,第7条不可屏蔽)MMU生成的中断为7级


2) 此外,如果在引发中断时有一个非常重要的过程(不需要虚拟寻址字的数据)正在进行,该怎么办?操作系统做什么

异常不一定是中断。中断是异常,但也有非中断的异常

  • 页面错误异常是异常,但不是中断

  • 始终处理非中断异常。页面错误异常是一个同步异常,当它发生时,是因为当前代码引发了它,所以操作系统应该以适当的方式处理它(这可能包括恐慌,因为在一段代码中出现了一个页面错误,而这不是预期的)


  • 至于第二个问题,你所说的如此重要的过程是什么意思?如果内存被调出,中断(PF)之后会由操作系统进行页面交换,否则这通常是一个bug,因此很自然地宁愿杀死进程也不让他再做任何伤害(行为可能未定义)。还是说重要=实时?如果进程不能承受因页面错误而中断的代价,它应该将必要的页面标记为不可浏览,然后就根本不会发生PF(错误除外)。