虚拟内存缺页中断
在做了09年408的一道关于求虚存访存时间的os题,发现了一些问题:跟书上讲的流程不太一样。具体在,缺页中断流程和求EAT的部分。思考后,发现课本上的地址转换有点问题。
ps:刚发现这问题,有人来问题,立马无私的讲给她。无奈这是个傻子,找到证据后发给她图,居然看不出来问题!看不出来!看不出来!
-
缺页中断
缺页中断不同与一般中断,表现在:
1.缺页中断在指令执行期间触发中断,中断处理完成后,将重启该命令。
2.缺页中断将会发生多次,这与机器的指令和数据分布有关,如跨页指令和数据。 -
地址转化
1.当发生缺页中断时,系统进行中断处理(有空闲块,调入页面;无空闲根据置换算法,替换一个出去)。
至于快表(TLB)的更新,一般认为也由os在中断处理中完成。09年408OS那道题目就假设中断处理包括TCB也更新.
2.完成中断处理后,重启该命令。
3.该命令让将进行地址转换,先检索TLB,命中,获得物理块,直接运算得出物理地址。 -
第四版OS
1.请求页式管理,地址转换流程错误。
这个流程在中断处理结束修改完快表,直接完成了地址转换。有悖于上述缺页中断的处理方式。该书第三版的流程图,则是中断处理之后,重新启动流程。