请说明操作系统作业管理的功能?作业调度算法是指按照什么样的原则来选取作业并投入运行?调度算法的合理性直接影响系统的效率,作业调度算法有哪些?对算法的选择需要考虑哪些问题?

admin2009-02-24  34

问题 请说明操作系统作业管理的功能?作业调度算法是指按照什么样的原则来选取作业并投入运行?调度算法的合理性直接影响系统的效率,作业调度算法有哪些?对算法的选择需要考虑哪些问题?

选项

答案作业调度是操作系统作业管理的主要功能。 作业调度是从预先存放在辅助存储设备中的一批用户作业中,按照某种方法选取若干作业,为它们分配必要的资源,决定调入内存的顺序,并建立相应的用户作业进程和为其服务的其他系统进程,然后再把这些进程提交给进程调度程序处理的一个过程。作业管理是宏观的高级管理,进程管理是微观的低级管理。作业调入内存后,已经获得了除CPU所有运行资源,但因为未得到处理机分配还不能运行,要通过进程调度分配处理机后再运行。这些状态之间完成的作业调度和转接。 操作系统的作业调度算法: (1)先来先服务(FCFS)。它类似于进程调度中的先进先出(FIFO)调度,它按照作业到达的先后次序调度作业,排队等待时间最长的作业被优先调度。这种调度算法有利于长作业,而不利于短作业。一个执行时间非常短的作业,也不得不排队等待,直到轮到自己运行。 (2)短作业优先(SJF)。它类似于进程调度中的最短CPU运行期优先算法。它按照作业要求运行的时间来调度,运行时间短的作业优先调度。自然,这种算法有利于短作业,且在大多数作业都是短作业的情况具有较大的合理性。但它又忽略了作业等待时间的长短,不利于长作业,可能会使一个运行时间较长的作业长期得不到调度。 (3)响应比高优先(HRN)。综合上述两者,既考虑作业等待时间,又考虑作业执行时间,求两者时间之比(即相应比),高者优先。它在进行调度时,需要首先计算每个作业的响应比。虽然是一种较好的折中,但增加了系统的开销,因为每次都要计算响应比。 (4)优先级调度。这种算法根据的是为作业所确定的优先级别,优先级别高者优先调度。然而,影响算法的是优先级的确定,因为它并不是算法本身的过程。优先级的确定有许多因素,如作业的紧急程度、作业的资源要求、作业的类别等等。这种调度算法往往与其他算法配合使用。 根据不同的应用环境而采用不同的算法。通常对算法的选择可以考虑如下问题, (1)使系统有最高的吞吐率,能够处理尽可能多的作业。 (2)使系统达到最高的资源利用率,不让处理机空闲。 (3)对各种作业合理调度,使各类用户都满意。 (4)不增加操作系统本身开销,不使系统过于复杂。

解析
转载请注明原文地址:https://jikaoti.com/ti/EyE7FFFM
0

相关试题推荐
最新回复(0)