发布网友 发布时间:2022-04-28 17:12
共1个回答
热心网友 时间:2022-06-19 22:11
影响缺页中断率的因素有四个:
1、分配给作业的主存块数多则缺页率低,反之缺页中断率就高。
2、页面大,缺页中断率低;页面小缺页中断率高。
3、程序固有特性,程序本身的编制方法对缺页中断次数有影响,根据程序执行的局部性原理,程序编制的局部化程度越高相应执行时的缺页程度越低。
4、页面置换算法,算法的优劣决定了进程执行过程中缺页中断的次数,因此缺页率是衡量页面置换算法的重要指标。
缺页中断发生时的事件顺序如下:
硬件陷入内核,在内核堆栈中保存程序计数器。大多数机器将当前指令的各种状态信息保存在特殊的CPU寄存器中。
启动一个汇编代码例程保存通用寄存器和其他易失的信息,以免被操作系统破坏。这个例程将操作系统作为一个函数来调用。
当操作系统发现一个缺页中断时,尝试发现需要哪个虚拟页面。通常一个硬件寄存器包含了这一信息,如果没有的话,操作系统必须检索程序计数器,取出这条指令,用软件分析这条指令,看看它在缺页中断时正在做什么。