首页 > 编程知识 正文

下列进程调度算法中,进程调度算法例题分析

时间:2023-05-04 06:14:45 阅读:190091 作者:559

文章目录1 .先服务(FCFS、 first come first serve ) 1.1算法思想1.2算法规则1.3工作/用于进程调度的1.4是否可切割1.5优点缺点1.6是否导致饥饿2 .短作业优先) SJF shortest job first ) 2.1算法思想2.2算法规则2.3作业/进程调度用2.4是否可切割2.5优缺点2.6是否导致饥饿3 .高响应比优先(HRRN ) 3.1算法思想3.2算法规则3.3作业/调度3.4是3.5优缺点3.6是否导致饥饿4 .时间round-robin ) 4.1算法思想4.2算法规则4.3作业/进程调度4.4是否可以抢占4.5优缺点4.6是否导致饥饿5 .优先级调度5.1算法思想5.2算法规则5.3作业/进程调度5.4是否可切割5.5优缺点5.6是否导致饥饿6 .多级反馈队列6.1算法思想6.2算法规则6.3工作/进程调度6.4是否可抢占6.5优缺点6.6是否会导致饥饿7.1前期服务7.2短期工作优先7.2.1最短时间剩余7.3快速响应比7.4小时分片轮换7.5优先级调度7.6多级反馈队列7.6

1 .首先服务(FCFS,第一公共第一服务器) 1.1算法思想

主要从“公平”的角度考虑

1.2算法规则按照作业/进程到达的优先级进行服务。

1.3用于作业/进程调度的作业调度时,考虑哪个作业先到达备份队列; 用于进程调度时,请考虑哪些进程将首先到达就绪队列

1.4能否抢占非抢占式算法

1.5优缺点:实现公平、算法简单的缺点:排在长作业(流程)后面的短作业需要等待长时间,授权周转时间大,对短作业来说用户体验不好。 也就是说,FCFS有利于长作业,不利于短作业。 1.6是否会导致饥饿

2 .短任务优先(SJF,shortest job first ) 2.1算法思想寻求最小平均等待时间、最小平均周转时间

2.2算法规则最短的作业、进程优先获得服务(“最短”意味着服务请求时间最短) )。

2.3用于作业/进程调度的两种类型都可以。 用于进程调度时,称为“短进程优先算法”(SPF,shortest process first )

2.4能否抢占sjf和SPF是非抢占式算法,但也有抢占式版本——的最短剩馀时间优先算法(SRTN,shortest remaining time next )

2.5坏处:“最短”的平均等待时间、平均周转时间的坏处:不公平。 有利于短工作,不利于长工作。 可能会发生饥饿现象。 另外,作业/进程的执行时间由用户提供,未必是真实的,也未必能够实现真正的短作业优先。 2.6是否会导致饥饿。 如果不断有短的工作/过程到来,长的工作/过程就有可能长时间得不到服务,出现“饥饿”现象。 如果一直得不到服务,就叫“饿死”。

3 .高响应比优先(HRRN ) 3.1算法综合考虑思想作业/进程的等待时间和服务请求时间

3.2算法规则在每次调度时计算每个作业/进程的响应比,选择响应比最高的作业/进程提供服务。

响应比=(时延请求服务时间(/请求服务时间) ) 3.3作业/进程调度

3.4由于能否抢占是一种非抢占算法,只有当前正在运行的作业/进程主动放弃处理器时,才需要调度,需要计算响应比。

3.5综合考虑优缺点的等待时间和运行时间(请求服务时间)等待时间相同是请求服务时间短的优先) SJF的优点)请求服务时间相同的情况下,等待时间长的优先) FCFS的优点)对于长工作来说,等待时间长3.6是否会导致饥饿

4.RR,Round-Robin(4.1算法以公平的思路,按顺序服务于各个进程,使各个进程在一定的时间间隔内能够实现相应。

4.2算法规则按照各进程到达准备就绪队列的顺序,按顺序对各进程执行一个时间片(例如100ms )。 如果进程没有在一定时间内运行,则剥夺处理器,使进程返回就绪队列的末尾并返回队列。

4.3将作业/进程调度用于进程调度(只有在作业放入内存并建立相应的进程之后,才分配处理器时间片) )。

4.4是否可以抢占。 时间片的轮转调度算法是抢占式算法,因为当进程在时间片内运行时,会被强制剥夺处理器的使用权。 时钟装置发生时钟中断,通知CPU超时。

4.5优缺点:公平,响应迅速,可应用于时分操作系统。 缺点:由于流程切换频率较高,所以不区分有一定开销的任务的紧急度。 4.6是否会导致饥饿。

5 .优先级调度5.1算法的思想是随着计算机的发展,特别是实时操作系统的出现,越来越多的应用场景需要根据任务的紧急程度来确定处理顺序。

5.2算法规则各作业/进程有各自的优先顺序,在调度时选择优先顺序最高的作业/进程

5.3用于作业/进程调度

可以。甚至,还会用于I/O调度中。

5.4 是否可抢占

抢占/非抢占都有。区别在于非抢占式只需在进程主动放弃处理机时进行调度即可,而抢占式还需在就绪队列变化时,检查是否会发生抢占。

5.5 优缺点 用优先级区分紧急程度,重要程度,适用于实时操作系统。可灵活的调整对各种作业/进程的偏好程度。若源源不断地有高优先级进程到来,则可能导致饥饿。 5.6 是否会导致饥饿

6. 多级反馈队列 6.1 算法思想

对其他调度算法的折中权衡。

6.2 算法规则 设置多级就绪队列,各级队列优先级从高到低,时间片从小到大新进程到达时先进入第一队列……只有第k即队列为空时,才会为第 k+1 级对头的进程分配时间片 6.3 用于作业/进程调度

用于进程调度。

6.4 是否可抢占

抢占式的算法。在k级队列的进程运行过程中,若更上级的队列(1-【k-1】级)中进入了一个新进程,则由于新进程处于优先级更高的队列中,因此新进程会抢占处理机,原来运行的进程放回k级队列队尾。

6.5 优缺点 对各类型进程相对公平(FCFS优点)每个新到达的进程都可以很快得到相应(RR的优点)短进程只用较少的时间就可完成(SPF的优点)不必实现估计进程的运行时间(避免用户作假)可灵活地调整对各类进程的偏好程度,比如CPU密集型进程,I/O密集型进程 6.6 是否会导致饥饿

7.例题解析 7.1 先来先服务

7.2 短作业优先

7.2.1 最短时间剩余

7.3 高响应比

7.4 时间片轮转

7.5 优先级调度

7.6 多级反馈队列

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。