作业调度算法 | StriveZs的博客

作业调度算法

处理机调度的层次:

  • 高级调度:其主要功能是根据某种算法,决定将外存上处于后备队列中的哪个几个作业调度内存。
  • 低级调度:主要功能是根据某种算法,决定就绪队列中的哪个进程应获得处理机。
  • 中级调度:主要目的是提高内存利用率和系统吞吐量,功能是将内存上暂时不用的进程调入外存。

CPU利用率=(CPU有效工作时间)/(CPU有效工作时间+CPU空闲等待时间)   周转时间:是指从作业被提交给系统开始,到作业执行完毕的时间(其中也包括作业等待CPU的时间) 带权周转时间=(周转时间)/(需要系统为它提供服务的时间) 上面两个常在作业调度时,用来计算作业的平均周转时间和平均带权周转时间使用。   作业调度算法: **     先来先服务调度算法(FCFS):** 实质上就是先到的作业先使用处理机,后到的则等待直到它接受调度使用处理机。 平均周转时间=(2+5+5)/3 平均带权周转时间=(1+1.25+5)/3 **      短作业优先算法(SJF)** 算法思想:从外存后备队列中选择需要提供服务时间最短的作业调入内存,给它分配处理机。 **     优先级调度算法** 优先级调度算法基于作业的紧迫程度来对作业进行调度。该优先级是由外部赋予,调度算法根据该优先级进行作业调度。 **    高响应比优先调度算法** 该算法定义了一个动态的优先权用来作为调度算法的依据,优先权高的作业优先被调度。 优先权的计算公式=(等待时间+要求服务时间)/要求服务时间 这样既考虑到了作业的等待时间又考虑到了作业运行时间。 由于计算过程比较麻烦这里就不给出过程了,只需在一个作业处理完毕后,在计算等待队列中所有作业的优先权即可,然后在根据优先权进行作业调度。

StriveZs wechat
Hobby lead  creation, technology change world.
  • Post author: StriveZs
  • Post link: 1393.html
  • Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 3.0 unless stating additionally.