操作系统:页面置换算法/进程调度算法

本文深入探讨了页面置换算法,包括理想算法(OPT)、先进先出(FIFO)、最近最久未使用(LRU)及少使用(LFU),以及进程调度算法如先进先出(FIFO)、时间片轮转(RR)、最高优先级(HPF)和多级队列反馈法,解析其原理与应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

一、页面置换算法: 

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

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


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

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


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

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

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


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


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


4. 少使用算法(LFU): 

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

二、进程调度算法

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


  同页面置换算法FIFO一样

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


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


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

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

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


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


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

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

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


4.多级队列反馈法: 


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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值