非抢占方式
抢占方式
非抢占方式
非抢占方式:又称非剥夺方式、不可剥夺方式、不可抢占方式。这种调度方式是指一旦将处理机分配给某进程后,便让该进程一直执行,直到该进程完成或发生某事件而进入阻塞状态,才把处理机分配给其他进程。
非抢占方式中引起进程调度的因素有:进程结束、因某种原因而阻塞、执行同步原语等。
特点:简单,系统开销小,但无法处理紧急任务。
抢占方式
抢占方式:又称剥夺方式、可剥夺方式。这种调度方式是指允许调度程序根据某种原则去停止正在执行的进程,将已分配给该进程的处理机重新分配给其他进程。
抢占原则有:优先权、短作业优先、时间片。
按调度方式对优先权调度算法分类
非抢占式优先权算法:系统一旦将处理机分配给就绪队列中优先权最高的进程后,该进程便一直运行下去,直到完成或因发生某事件使该进程放弃处理机时,系统才将处理机分配给另一个更高优先权的进程。
抢占式优先权调度算法:将处理机分配给优先权最高的进程,使之运行。在进程运行过程中,一旦出现了另一个优先权更高的进程时,进程调度程序就停止原运行进程,而将处理机分配给新出现的高优先权进程。
优先权的类型
优先权分为两种:
静态优先权
动态优先权
静态优先权
静态优先权是在创建进程时确定的,确定之后在整个进程运行期间不再改变。
确定依据有:
进程类型:系统,用户
进程对资源的需求:执行时间,资源数量
用户要求:紧迫程度
到达时间:先到则优先权高
特点:简单易行,系统开销小,但不精确。
动态优先权
动态优先权是指在创建进程时,根据进程的特点及相关情况确定一个优先权,在进程运行过程中再根据情况的变化调整优先权。
确定原则有:占用CPU时间,等待时间。
例:优先数=CPU使用时间/2+基本优先数
CPU使用时间衰减函数:
Decay(CPU)=CPU/2
响应比
响应比定义如下:
响应比=作业响应时间/估计运行时间
由于响应时间为作业进入系统后的等待时间加上估计运行时间。因此
响应比=1+作业等待时间/估计运行时间
5.最高响应比优先调度算法
最高响应比优先调度算法是对短作业优先调度算法和先来先服务调度算法的一种综合。
在每次调度作业运行时,先计算后备作业队列中每个作业的响应比,然后挑选响应比最高者投入运行。
特点:
有利于短作业-----等待时间相同,短作业优先,
考虑等待时间----运行时间相同,等待时间长的作业优先运行。
最高响应比优先算法例