最短作业优先算法
以下是最短作业优先算法
最短作业优先调度算法是对预计执行时间短的作业(进程)优先分派处理机,通常后来的短作业不抢先正在执行的作业。这种算法称为这种算法会根据作业长短,也就是作业服务时间的多少来调度作业,服务时间短的会被优先调度执行。
这种算法的优点是比FCFS改善平均周转时间和平均带权周转时间,缩短作业的等待时间;提高系统的吞吐量。
算法的缺点在于对比较长的作业可能长期得不到调度,对长作业不利;还有就是作业的服务时间是用户向系统提交作业时设定好的,难免有些用户为了让自己的作业先调度,会把服务时间缩短,也就是有人为的因素在里面。
在典型的设计中,一个任务有以下三种状态:正在运行(Running,正在CPU中执行)待命(Ready,等待执行)阻塞(Blocked,任务暂停,等待一个事件的发生,例如接收一组数据)
由于CPU在某个时间只能执行一个任务,大部分任务,在大部分时间,处于阻塞或待命状态。可能会有大量项目在待命列表里等待执行,这取决于系统所需的任务数量以及调度器的类型。
通常情况下,对于简单的时间触发式调度器来说,待命任务列表的数据结构的设计要尽可能缩短最坏情况下,程序在调度器关键部分的执行时间,以防止其他任务一直在待命列表中,无法及时执行。
因此,在这种调度器中,应尽可能避免抢占式任务,甚至应该关闭调度器之外的所有中断。当然,待命任务列表的数据结构也应根据这个系统需要的最大任务数量做进一步的优化。
短作业优先怎么排先后顺序
当我们面临多个任务或作业时,短作业优先法则是一种常用的排序方法。这种法则的核心思想是根据作业的处理时间或长度来决定先后顺序,即优先处理时间短或长度小的作业。这种排序方法的优势在于它能够提高处理效率并减少总的等待时间。举一个简单的例子,假设我们有三个作业,分别需要10分钟、20分钟和30分钟来...
最短作业优先算法
最短作业优先调度算法是对预计执行时间短的作业(进程)优先分派处理机,通常后来的短作业不抢先正在执行的作业。这种算法称为这种算法会根据作业长短,也就是作业服务时间的多少来调度作业,服务时间短的会被优先调度执行。这种算法的优点是比FCFS改善平均周转时间和平均带权周转时间,缩短作业的等待时间;提...
...作业调度采用短作业优先调度算法,进程调度采用以优先数为基础的抢占...
a先到达先运行,运行20分钟后B到达,且优先级高于a,b即抢占cpu,运行过程中c,d到达,但是他们的优先级低于b,所以b一直运行完,此时所有的作业都在等待,现在是短作业优先,即是a先运行,然后是d,最后是c a 进入时间 10::50 结束:11:10 b 进入时间 10::20 结束:10:50 c ...
怎样实现短作业优先和高响应比优先算法
1.先来先服务调度算法(FCFS):就是按照各个作业进入系统的自然次序来调度作业。这种调度算法的优点是实现简单,公平。其缺点是没有考虑到系统中各种资源的综合使用情况,往往使短作业的用户不满意,因为短作业等待处理的时间可能比实际运行时间长得多。2.短作业优先调度算法(SPF): 就是优先调度并处理短...
作业调度的短作业优先
短作业优先(SJF, Shortest Job First)又称为“短进程优先”SPN(Shortest Process Next);这是对FCFS算法的改进,其目标是减少平均周转时间。 (1) 优点:比FCFS改善平均周转时间和平均带权周转时间,缩短作业的等待时间;提高系统的吞吐量;(2) 缺点:对长作业非常不利,可能长时间得不到执行;未能...
作业调度的算法有哪些?
1、算法有先来先服务 最简单的调度算法,按作业的先后顺序进行调度,只考虑每个作业的等待时间而未考虑执行时间的长短。2、最短作业优先算法 最短作业优先算法是对先来先服务算法的改进,其目标是减少平均周转时间。对预计执行时间短的作业优先分派处理机。通常后来的短作业不抢先正在执行的作业。 只考虑...
短作业优先是抢占式还是非抢占式
非抢占式。短作业优先是一种非抢占式的进程调度算法。在这种算法中,进程按照其估计的执行时间进行排序,执行时间最短的进程首先被调度。一旦一个进程开始执行,就会一直运行到完成,除非发生某些特殊情况。
什么调度算法适用于cpu繁忙型作业
最短作业优先(SJF)调度算法:该算法根据作业的执行时间来进行调度,优先调度执行时间最短的作业。这种算法可以最大化CPU的利用率,减少作业的等待时间和响应时间。高响应比优先(HRRN)调度算法也可适用于cpu繁忙型作用,该算法根据作业的等待时间和执行时间来计算响应比,优先调度响应比最高的作业,这种...
能使作业平均周转时间最小的作业调度算法是()
能使作业平均周转时间最小的作业调度算法是()A.先来先服务算法B.计算时间最短的作业优先算法C.优先级调度算法D.均衡调度算法正确答案:B短作业优先(SJF,ShortJobFirst)又称为“短进程优先”SPN(ShortProcessNext),这是对FCFS算法的改进,其目标是减少平均周转时间。优点:比FCFS改善平均周转时间和...
如何证明按短作业优先算法调度时其平均周转时间最短
按照最短作业优先,设第i个作业的等待时间为ai.则 a1 = 0 a2 = t1 a3 = t1 + t2 ...an = t1 + t2 + ... + t(i-1)总的等待时间为a1 + a2 + a3 + ... + an 现在只需要证明这个是最小就可以了。任意取2个作业i 和 j。 且ti < tj。交换ti和tj的顺序。则新等待时间变成...
翟韵华富:[答案] 这种算法会根据作业长短,也就是作业服务时间的多少来调度作业,服务时间短的会被优先调度执行. 算法的缺点在于对比较长的作业可能长期得不到调度,对长作业不利;还有就是作业的服务时间是用户向系统提交作业时设定好的,难免有些用户...
岫岩满族自治县17039587087: 操作系统相关算法:SJF和SPF的区别最短作业优先算法SJF(Shortest Job First ) 和最短进程优先SPF(shortest - process - first:SPF)有什么区别啊? - ?
翟韵华富:[答案] SJF的调度算法是从后备队列中选择一个或若干个估计运行时间最短的作业,将它们调入内存运行;而SPF调度算法是从就绪队列中选出一个估计运行时间最短的进程,将处理机分配给它,使它立即执行并一直执行到完成,或发生某事件而被阻塞放...
岫岩满族自治县17039587087: 什么是短作业优先的作业调度算法? - ?
翟韵华富:[答案] 短作业优先(SJF, Shortest Job First)又称为“短进程优先”SPN(Shortest Process Next);这是对FCFS算法的改进,其目标是减少平均周转时间. 定义 对预计执行时间短的作业(进程)优先分派处理机.通常后来的短作业不抢先正在执行的作业.
岫岩满族自治县17039587087: 作业调度算法的短作业优先法 - ?
翟韵华富: 短作业优先(SJF, Shortest Job First)又称为“短进程优先”SPN(Shortest Process Next);这是对FCFS算法的改进,其目标是减少平均周转时间. (1) 优点: 比FCFS改善平均周转时间和平均带权周转时间,缩短作业的等待时间; 提高系统的...
岫岩满族自治县17039587087: 剩余时间最短者优先和短进程优先两种调度算法中有什么区别?两者的平均周转时间如何? - ?
翟韵华富:[答案] 最短进程优先算法是一种非剥夺式算法,总是选取预计作业时间最短的作业优先运行;最短剩余时间优先算法是非剥夺式的,但可以改造成剥夺式的调度算法,称抢占式最短作业优先算法. 至于二者的平均周转时间,比如有四个进程P1,P2,P3,P4,...
岫岩满族自治县17039587087: 证明在非抢占式调度算法中最短作业优先算法具有最小的平均等待时间 - ?
翟韵华富: 不太清楚你说的算法,但是最短作业优先听起来和小学奥数的某些题目很像.如果是类似的话,那么:设有n个作业,长度分别为t1,t2……tn,那么因为调度方法数量为n!有限,故必有总等待时间最小的方法.反设这个方法不是最短作业优先的,那么必然会出现紧邻的两个任务i、j前长后短(ti>tj)的情况.交换这两个任务,此时前后的任务总等待时间不变,而i的等待时间增加了tj,j的等待时间减少了ti,因为ti>tj,所以总时间改变量tj-ti<0,即时间变得更短,矛盾.所以最短作业优先算法的总等待时间最小,而平均等待时间=总等待时间/n,所以平均等待时间也最小.如果我有弄错的地方请连我Baidu Hi,谢谢
岫岩满族自治县17039587087: 操作系统里的 短作业优先调度算法(可抢占式) 和 最短剩余时间优先调度算法 有什么不同啊? - ?
翟韵华富: 计算的对象不同,一个是作业整体的时间,另外一个是作业剩余的时间. 这些算法,通常是在一个很小的地方改变,就是一个新的算法.
岫岩满族自治县17039587087: 处理机的三种调度算法的基本原理 - ?
翟韵华富: 在早期的计算机系统中,对cpu的管理是十分简单的,因为那是它和其他系统资源一样,为一个作业所独占,不存在处理机分配和调度的问题.但随着多道程序设计技术的出现,系统在调度作业执行时,必须考虑到每个作业用户得到处理机的均...
岫岩满族自治县17039587087: 作业的调度算法有几种?各自的优缺点是什么? - ?
翟韵华富:[答案] 先来先服务 时间片轮转 最短作业优先 多级反馈队列 优先级 最高响应比
岫岩满族自治县17039587087: 【讨论】如何证短作业优先算法的平均周转时间最短 - ?
翟韵华富: 假设有n个作业,按照运行时间排序t1 < t2 <... < tn平均周转时间 = (总的运行时间 + 总的等待时间)/n其中总的运行时间是定值,n为定值,因此要平均周转时间最短既要求总的等待时间最短.按照最短作业优先,设第i个作业的等待时间为ai.则a...