当前位置:   article > 正文

操作系统:页面置换算法/进程调度算法_页面调度策略和替换算法的区别

页面调度策略和替换算法的区别

写博客的原因是因为上次的百度网盘面试被问到了,但那时只记得LRU、FIFO算法,其他的没想起来 

一、页面置换算法: 

        设计原因:当没有足够的物理内存时,系统通过把进程的一部份转移到硬盘上以设法容纳进程。当再次需要进程中的被转移到硬盘上的那一部分时,再返回到物理内存中。这个上过程称为页面调度,它使得系统即使在有限的物理内存的条件下也能够具备多任务处理的能力。

1 .理想页面置换算法(OPT): 


  这是一种理想的算法,在实际中不可能实现。

       该算法的思想是:发生缺页时,所调出的页应该是以后不再访问的页(永远不会再使用)或最长时间内不再被访问的内存页面(距当前最长时间后再访问的页)予以淘汰


2.先进先出页面置换算法(FIFO): 

        即字面意思很好理解,当发生缺页时,把先进来的先淘汰。

        思路:选择最先进入内存的页面予以淘汰。 


3. 最近最久未使用算法(LRU): 


  思想:当发生缺页时,在给定的一定数量的物理页中,选择在最近一段时间内最久没有使用过的页,把它淘汰。 


4. 少使用算法(LFU): 

  思想:根据页面被访问的次数来判断,选择到当前时间为止被访问次数最少的页转换

二、进程调度算法

1.先进先出算法(FIFO): 


  同页面置换算法FIFO一样

       思想:当发生进程调度时,按照进程进入就绪队列的先后次序来选择。即每次进程调度时,将就绪队列的队首进程(第一个)投入运行。 


2.时间片轮转算法(RR): 


  分时系统的一种调度算法。

       思想:将CPU的处理时间划分成一个个的时间片,就绪队列中的进程轮流运行一个时间片。当时间片结束时,就强迫进程让出CPU,该进程进入就绪队列,等待下一次调度,同时,进程调度又去选择就绪队列中的一个进程,分配给它一个时间片,以投入运行。

     简单理解就是:多个进程都要运行,然后排队,每次只能一个进程运行一个时间片的时间长度,当时间用完时,若进程未完成就变为就绪状态进去就绪队列,等待下一次进程给你分配的时间片 ,一直循环,直到进程运行完毕。


3. 最高优先级算法(HPF): 


又可以理解为抢占式,根据进程的级别划分,只要我等级比你高,我就可以先运行,如果你正在运行,那我就抢过来自己运行。

       思想:进程调度每次将处理机分配给具有最高优先级的就绪进程。最高优先级算法可与不同的CPU方式结合形成可抢占式最高优先级算法和不可抢占式最高优先级算法。 

      简单理解就是:多个车辆要排队过收费站(普通百姓车辆),这时候来了一辆救护车/军队车辆,因为救护车/军队车辆优先级高(要救人/执行任务),所以收费站要优先处理救护车/军队车辆。


4.多级队列反馈法: 


  思想:几种调度算法的结合形式多级队列方式。
 

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号