(1)首先每当程序所要访问的页面未在内存时(存在位为0),便向CPU发出一缺页中断,中断处理程序首先保护CPU环境,分析中断原因后,转入缺页中断处理程序。
(2)该程序通过查找页表,得到该页在外存上的物理块后,如果此时内存能容纳新页,则启动磁盘I/O,将所缺之页调入内存,然后修改页表。
(3)如果内存已满,则需按照某种置换算法从内存中选出一页准备换出;如果该页未被修改过(修改位为0),可不必将该页写回磁盘;但如果此页已被修改(修改位为1),则必须将它写回磁盘,然后把所缺的页调入内存,并修改页表中的相应表项,置其存在位为“1",并将此页表项写入快表中。
(4)在缺页调入内存后,利用修改后的页表形成所要访问的物理地址,再去访问内存数据。整个页面的调入过程对用户是透明的。
本文详细介绍了当程序访问不在内存中的页面时,操作系统如何通过缺页中断处理程序将所需页面调入内存的过程。包括中断处理、页表查找、页面置换算法及页面调入等关键步骤。

3010

被折叠的 条评论
为什么被折叠?



