页面置换次数和缺页中断怎么判断次数的区别

  在请求分页系统中可以通過查询页表中的状态位来确定所要访问的页面是否存在于内存中。每当所要访问的页面不在内存时会产生一次缺页中断怎么判断,此时操作系统会根据页表中的外存地址在外存中找到所缺的一页将其调入内存。
  缺页本身是一种中断与一般的中断一样,需要经过4个處理步骤:
  2. 分析中断原因
  3. 转入缺页中断怎么判断处理程序进行处理
  4. 恢复CPU现场继续执行
  但是缺页中断怎么判断时由于所偠访问的页面不存在与内存时,有硬件所产生的一种特殊的中断因此,与一般的中断存在区别
   1. 在指令执行期间产生和处理缺页中斷怎么判断信号
   2. 一条指令在执行期间可能产生多次缺页中断怎么判断
   3. 缺页中断怎么判断返回时,执行产生中断的那一条指令洏一般的中断返回时,执行下一条指令

  进程运行过程中如果发生缺页中断怎么判断,而此时内存中有没有空闲的物理块是为了能夠把所缺的页面装入内存,系统必须从内存中选择一页调出到磁盘的对换区但此时应该把那个页面换出,则需要根据一定的页面置换算法(Page Replacement Algorithm)来确定

  置换以后不再被访问,或者在将来最迟才回被访问的页面缺页中断怎么判断率最低。但是该算法需偠依据以后各业的使用情况而当一个进程还未运行完成是,很难估计哪一个页面是以后不再使用或在最长时间以后才会用到的页面所鉯该算法是不能实现的。但该算法仍然有意义作为很亮其他算法优劣的一个标准。

  采用固定分配局部置换的策略嘉定系统为某进程在内存中分配了3个物理块,页面访问顺序为2、3、2、1、5、2、4、5、3、2、5、2假定系统未采用预调页策略,即未事先调入任何页面进程運行时,一次将2、3、1三个页面调入内存发生3次缺页中断怎么判断。当第一次访问页面5时产生第4次缺页中断怎么判断,根据OPT算法淘汰頁面1,因为它在以后不会在使用了;第5次缺页中断怎么判断时淘汰页面2,因为它在5、3、2三个页面中是在将来最迟才会被页面访问的页媔。以此类推:
  注意:第4次中断时将最后不会访问的1剔除将最后才访问的3放入最下面的内存块中,以后的调度过程中最后不会访問或最后才被访问的页面总是放在最下面的内存块中。内存块从上到下依次存放最先访问的页面

  置换最先调入内存的页面,即置换在内存中驻留时间最久的页面按照进入内存的先后次序排列成队列,从队尾进入从队首删除。但是该算法會淘汰经常访问的页面不适应进程实际运行的规律,目前已经很少使用

  仍然以OPT算例为例子。

  一般来说分配给进程嘚物理块越多,运行时的缺页次数应该越少使用FIFO时,可能存在相反情况分配4个物理块的缺页竟然比3个物理块的缺页次数还多!
  例洳:进程访问顺序为0、2、1、3、0、2、4、0、2、1、3、4。

0 0 0
0 0
0 0
0 0 0 0
0 0 0
0 0
0 0
0 0
0 0 0 0

  置换最近一段时间以来最长时间未访问过的页面根据程序局部性原理,刚被访问的页面可能马上又要被访问;而较长时间内没有被访问的页面,可能最近不会被访问
  LRU算法普偏地適用于各种类型的程序,但是系统要时时刻刻对各页的访问历史情况加以记录和更新开销太大,因此LRU算法必须要有硬件的支持

  仍然以OPT算例为例子。

  系统使用特殊的堆栈来存放内存中每一个页面的页号每当访问一页时就调整一次,即把被访问页面的页号从棧中移出再压入栈顶因此,栈顶始终是最新被访问页面的页号栈底始终是最近最久未被访问的页号。当发生缺页中断怎么判断时总昰淘汰栈底页号所对应的页面。

  1. 温静计算机操作系统原理,武汉大学出版社.

一般中断只需2113要保护现场后僦直接5261跳到需及时处理的地方

缺页4102中断除1653了保护现场之外还要判断内存中是否有足够的空间存储所需的页或段,然后再把所需页调进來再使用

一般中断在处理完之后返回时,执行下一条指令

缺页中断怎么判断返回时,执行产生中断的那一条指令

在指令执行期间产苼和处理缺页中断怎么判断信号,一条指令在执行期间可能产生多次缺页中断怎么判断。

一般中断只产生一次发生中断指令后转入相應处理程序进行处理,恢复被中断程序现场

产生缺页中断怎么判断的几种情况

1、当内存管理单元(MMU)中确实没有创建虚拟物理页映射关系,并且在该虚拟地址之后再没有当前进程的线性区(vma)的时候这将杀掉该进程。

2、当MMU中确实没有创建虚拟页物理页映射关系并且在該虚拟地址之后存在当前进程的线性区vma的时候,这很可能是缺页中断怎么判断并且可能是栈溢出导致的缺页中断怎么判断。

3、当使用malloc/mmap等唏望访问物理空间的库函数/系统调用后由于linux并未真正给新创建的vma映射物理页,此时若先进行写操作将和2产生缺页中断怎么判断的情况┅样;若先进行读操作虽然也会产生缺页异常,将被映射给默认的零页等再进行写操作时,仍会产生缺页中断怎么判断这次必须分配1粅理页了,进入写时复制的流程

4、当使用fork等系统调用创建子进程时,子进程不论有无自己的vma它的vma都有对于物理页的映射,但它们共同映射的这些物理页属性为只读即linux并未给子进程真正分配物理页,当父子进程任何一方要写相应物理页时导致缺页中断怎么判断的写时複制。


知道合伙人数码行家 推荐于

贵州民族大学在校大学生


缺页中断怎么判断与一般中断的区别;

1、一般中断只需要保护现场然后就直接跳到需及时处理的地方

2、缺页中断怎么判断除了保护现场之外,还要判断内存中是否有足够的空间存储所需的页或段然后再把所需页調进来再使用。

(1)缺页中断怎么判断返回时继续处理中断的指令而一般中断返回后执行下一条指令。

(2)一条指令可以发生多次缺页Φ断怎么判断一般只能发生一次一般中断

一般中断只需要保护现场然后就直接跳到需及时处理的地方。而缺页中断怎么判断除了保护现場之外还要判断内存中是否有足够的空间存储所需的页或段,然后再把所需页调进来再使用

下载百度知道APP抢鲜体验

使用百度知道APP,立即抢鲜体验你的手机镜头里或许有别人想知道的答案。

的:3个内存块构成一个队列前3個页面依次入队(3个缺页),内存中为3-2-1;接着要访问4号页面内存中没有(1个缺页),按FIFO1号页面淘汰,内存中为4-3-2;接着要访问1号页面內存中没有(1个缺页),按FIFO2号页面淘汰,内存中为1-4-3;接着要访问2号页面内存中没有(1个缺页),按FIFO3号页面淘汰,内存中为2-1-4;接着要訪问5号页面内存中没有(1个缺页),按FIFO4号页面淘汰,内存中为5-2-1;接着要访问1号页面内存中有(命中),内存中为5-2-1;接着要访问2号页媔内存中有(命中),内存中为5-2-1;接着要访问3号页面内存中没有(1个缺页),按FIFO1号页面淘汰,内存中为3-5-2;接着要访问4号页面内存Φ没有(1个缺页),按FIFO2号页面淘汰,内存中为4-3-5;接着要访问5号页面内存中有(命中),内存中为4-3-5;缺页中断怎么判断次数=9 (12次访问呮有三次命中)LRU不同于FIFO的地方是,FIFO是先进先出LRU是最近最少用,如果1个页面使用了要调整内存中页面的顺序,如上面的FIFO中: 接着要访问1號页面内存中有(命中),内存中为5-2-1;在LRU中则为接着要访问1号页面,内存中有(命中)内存中为1-5-2;

我要回帖

更多关于 缺页中断怎么判断 的文章

 

随机推荐