Linux入门——进程调度

1.先来先服务(FCFS)

(FCFS:first come first served)所有调用算法中最简单的一种,在此调度算法中,所有进程按照请求CPU的先后顺序依次使用CPU,用完之后下一个继续使用,类似于排队购物,队伍最前的人先结账,其他人只能等着,等第一个结束后第二个在结账。

算法优点:简单并且好实现,一条队列可以满足要求

算法缺点:短进程可能要等待的时间远远大于执行时间

2.短作业优先调度算法

短作业优先,又称为短进程优先。是指对短进程优先调度的方法,在一定程度上改进了FCFS,对预计运行时间短的进程优先分配CPU。

算法优点:缩减了进程等待时间,提高系统吞吐量

算法缺点:长进程可能长时间得不到执行。并且对于突发事件没办法及时处理

3.时间片轮转法

时间片轮转法是一种很早期就存在的调度算法,首先OS会将要执行的进程排成队列,然后将CPU划分成若干时间片,从队首开始分配时间片,通常几十ms到几百ms不等,当第一个进程时间片执行完后,会有一个中断信号暂停执行,并将其放置到就绪队列的末尾。

算法优点:系统能在给定时间响应所有进程的请求

算法缺点:对时间片大小的选择有很大要求,且不利于处理紧急作业。

4.多级反馈队列调度算法

进程在进入待调度的队列等待时,首先进入优先级最高的Q1等待。  
首先调度优先级高的队列中的进程。若高优先级中队列中已没有调度的进程,则调度次优先级队列中的进程。例如:Q1,Q2,Q3三个队列,只有在Q1中没有进程等待时才去调度Q2,同理,只有Q1,Q2都为空时才会去调度Q3。 
对于同一个队列中的各个进程,按照时间片轮转法调度。比如Q1队列的时间片为N,那么Q1中的作业在经历了N个时间片后若还没有完成,则进入Q2队列等待,若Q2的时间片用完后作业还不能完成,一直进入下一级队列,直至完成。  

在低优先级的队列中的进程在运行时,又有新到达的作业,那么在运行完这个时间片后,CPU马上分配给新到达的作业(抢占式)。 

5.优先权调度算法

从队列里选择优先权最高的进程,先进行调度。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值