首页 > 编程知识 正文

多级队列调度算法的优缺点,轮转调度算法优缺点

时间:2023-05-05 19:48:45 阅读:174634 作者:2888

调度算法是基于系统的资源分配策略规定的资源分配算法。 在某些调度算法中,可以应用于作业调度,也可以应用于过程调度,或者同时应用于这两者。 我要知道一些术语

到达时间、服务时间、开始时间

完成时间、等待时间

周转时间:完成时间-到达时间

授权周转时间:周转时间/服务时间

一、先来先服务(FCFS)/先进先出(FIFO)调度算法

(1)概念)按照作业/进程进入系统的先后顺序进行调度,先进入系统的先进行调度; 这意味着启动等待时间最长的作业/进程。 是最简单的调度算法,可用于作业调度和进程调度

)先服务)先出)的优缺点

*有利于长工作(过程),不利于短工作(过程)

有利于CPU繁忙作业(进程),不利于I/O繁忙作业(进程)

*用于批处理系统,不适合分时系统

二、短作业优先调度算法(SJF)

1、概念:从队列中选择一个执行时间最短的作业优先调度,既可以用于作业调度,也可以用于进程调度

2、SJ(p ) f调度算法也有不可忽视的缺点

*不利于长时间的工作。 更严重的是,如果长作业(进程)进入系统的备份队列(就绪队列),则调度程序总是优先调度那些)之后进入的)短作业)进程(长作业)。

*由于完全没有考虑作业(流程)的紧迫性,无法保证具有紧急性的作业(流程)能及时处理

*作业(进程)的长度仅基于用户提供的估计执行时间,用户可能有意或无意地缩短作业的估计执行时间,因此该算法实际上未必能够实现较短的作业优先调度。

三、高优先权调度算法

它可用于调度作业或进程

1、优先级调度算法的类型

)1)非抢占优先级调度算法

特征:系统将处理器分配给就绪队列中具有最高优先级的进程,然后继续运行,直到该进程完成,或者在发生任何事件且该进程放弃处理器时,系统将处理器重新启动

主要用于批处理系统,也可以用于实时性并不严格的部分实时系统

)2)抢占优先级调度算法

特点:将处理器分配给优先级最高的进程,但在运行中,如果出现优先级更高的其他进程,进程调度器会立即停止当前进程的运行,将处理器分配给新到达的优先级最高的进程

注:如果系统出现新的就绪流程,请进行优先级比较

该调度算法能更好地满足迫切的工作要求,因此常用于要求比较苛刻的实时系统,以及对性能要求较高的批处理和时分系统

2、优先级类型

高优先级调度算法需要比较作业或进程的优先级,因此需要知道其优先级

优先级分为静态优先级、动态优先级

(1)静态优先顺序

静态优先级是在创建进程时确定的,并且在进程运行期间保持不变。 一般来说,优先级用一个范围内的整数表示,例如07或0255,该整数称为优先级数

确定进程优先级的依据包括三个方面:

进程类型:系统进程优先级高于一般用户进程。

流程对资源的需求:对流程估计运行时间或内存需求较低的流程应给予较高的优先级。

用户请求:根据用户进程的紧急程度和用户支付费用的多寡决定优先级。

)2)动态优先级

概念:创建进程时赋予的优先级会随着进程的进展和等待时间的增加而变化,从而提高调度性能。 就绪队列中的进程被规定为随着等待时间的增加,优先级按速率a提高

特点:具有相同优先级初始值的进程首先进入就绪队列,通过动态优先级最高优先获得处理器。 这就是FCFS算法

在具有各自不同的优先顺序初始值的就绪进程的情况下,优先顺序初始值低的进程在等待充分的时间后,优先顺序有可能上升到最高,从而获得处理器

注意:采用抢占优先级调度算法时,通过重新规定当前进程的优先级按速率b降低,可以避免长时间占用处理器

四、高响应比优先调度算法

)概念)快速响应比优先调度算法既考虑了作业的执行时间,也考虑了作业的等待时间,综合了先行服务和最短作业优先两种算法的特点。

该算法中的响应比是指等待时间与作业执行的比,响应比的公式定义如下。

因为响应比=(等待时间-请求的服务时间) /所请求的服务时间,即RR=(ws )/s=1 w/s,所以响应比必须大于1。

)2)优缺点

优点:如果是等待时间相同的工作,请求服务的时间越短优先级越高,——有利于短工作

如果请求服务的时间是相同的作业,则等待时间越长则优先顺序越高,——先提供服务

长作业优先级随着等待时间的增加而变高,在该等待时间足够长的情况下,可以提高其优先级,还可以得到处理器——有利于长作业的效果

这是在照顾短工作的同时,考虑工作到达的优先顺序,使长工作长期得不到服务的权衡。

缺点:为了进行响应比计算,开销增加

五、简单的时间片轮转法(RR—Round Robin)

ng>
(1)概念:系统将所有的就绪进程按先来先服务的原则排成一个队列,每次调度时,把CPU分配给队首进程,并令其执行一个时间片;当执行的时间片用完时,由一个计时器发出时钟中断请求,调度程序便停止该进程的执行,并将其放就绪队列尾;然后,再把处理机分配给就绪队列中新的队首;时间片的大小从几ms到几百ms
(2)缺点:紧迫任务响应慢。
UNIX中采用:时间片+优先权
(3)时间片选取
太小,会频繁发生中断、进程上下文切换,增加系统开销,但利于短作业
太大,退化成FCFS
——时间片应该略大于一次典型交互的时间

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