作业管理
- 一、作业管理
- 1.1 作业控制
- 1.2 作业的状态及其转换
- 1.3 作业控制块和作业后备队列
- 二、作业调度
- 2.1 调度算法的选择
- 2.2 作业调度算法
- 2.3 作业调度算法性能的衡量指标
- 三、人机界面
作业:系统为完成一个用户的计算任务(或一次事务处理)所做的工作总和。如对用户编写的程序经过编译、连接、装入以及执行等步骤得到结果,这其中的每一个步骤称为一个作业步。
作业管理程序:操作系统用来控制作业进入、执行和撤销的一组程序。
一、作业管理
1.1 作业控制
两种方式控制用户作业的运行:脱机和联机。
- 在脱机控制方式中,作业运行的过程是无须人工干预的,因此,用户必须将自己想让计算机干什么的意图用作业控制语言(JCL)编写成作业说明书,连同作业一起提交给计算机系统。
- 在联机控制方式中,操作系统向用户提供了一组联机命令,用户可以通过终端输入命令,将自己想让计算机干什么的意图告诉计算机,以控制作业的运行过程,此过程需要人工干预。
作业组成:程序、数据和作业说明书。
- 作业说明书包括作业基本情况、作业控制、作业资源要求的描述,它体现用户的控制意图。其中,作业基本情况包括用户名、作业名、编程语言和最大处理时间等;作业控制包括作业控制方式、作业步的操作顺序、作业执行出错处理;作业资源要求的描述包括处理时间、优先级、主存空间、外设类型和数量、实用程序要求等。
1.2 作业的状态及其转换
作业的状态有4种:提交、后备、执行和完成。
- 提交。作业提交给计算机中心,通过输入设备送入计算机系统的过程称为提交状态。
- 后备。通过 Spooling 系统将作业输入到计算机系统的后备存储器(磁盘)中,随时等待作业调度程序调度时的状态。
- 执行。一旦作业被作业调度程序选中,为其分配了必要的资源,并建立相应的进程后该作业便进入了执行状态。
- 完成。当作业正常结束或异常终止时,作业进入完成状态。此时,由作业调度程序对该作业进行善后处理。如撤销作业的作业控制块,收回作业所占的系统资源,将作业的执行结果形成输出文件放到输出井中,由 Spooling 系统控制输出。
1.3 作业控制块和作业后备队列
作业控制块(JCB)是记录与该作业有关的各种信息的登记表。JCB 是作业存在的唯一标志,主要包括用户名、作业名和状态标志等信息。
作业后备队列由若干个JCB 组成。由于在输入井中有较多的后备作业,为了便于作业调度程序调度,通常将作业控制块排成一个或多个队列,而这些队列称为作业后备队列。
二、作业调度
2.1 调度算法的选择
选择的调度算法必须与系统的整个设计目标一致。如批处理操作系统要求处理能力;分时操作系统要求用户的响应时间;实时操作系统要求即使响应和处理与时间有关的时间等。调度算法需要考虑一下因素:
- 均衡使用系统资源。使“IO 繁忙”的作业和“CPU 繁忙”的作业搭配起来执行。
- 平衡系统和用户的要求。确定算法时要尽量缓和系统和用户之间的矛盾。
- 缩短作业的平均周转时间。在多用户环境下,作业“立即执行”往往难以做到,但是应保证进入系统的作业在规定的截止时间内完成,而且系统应设法缩短作业的平均周转时间。
2.2 作业调度算法
单道批量处理算法:
- 先到先服务;
- 短作业优先;
- 响应比高者优先。响应比定义为:
作业响应时间为作业进入系统后的等待时间与作业的执行时间之和。响应比高者优先算法在每次调度前都要计算所有备选作业(在作业后备队列中)的响应比,然后选择响应比最高的作业执行。该算法比较复杂,系统开销大。
多道批量处理:在多道批量处理系统中,通常采用优先级调度算法和均衡调度算法进行作业调度。
- 优先级调度算法的基本思想是:为了照顾时间要求紧迫的作业,或者为了照顾“IO 繁忙”的作业,以充分发挥外设的效率;或者在一个兼顾分时操作和批量处理的系统中,为了照顾终端会话型作业,以便获得合理的响应时间,需要采用基于优先级的调度策略,即高优先级优先由用户指定优先级,优先级高的作业先启动。
- 均衡调度算法的基本思想是:根据系统的运行情况和作业本身的特性对作业进行分类。作业调度程序轮流地从这些不同类别的作业中挑选作业执行。这种算法力求均衡地使用系统的名种资源,即注意发挥系统效率,又使用户满意。例如,将出现在输入井中的作业分成A、B、C三个队列。A 队:短作业,其计算时间小于某个值,无特殊外设要求,B队:要用到磁带的作业,它们要使用一条或多条私用磁带。C队:长作业,其计算时间超过一定值。
2.3 作业调度算法性能的衡量指标
在一个以批量处理为主的系统中,通常用平均周转时间或平均周转系数来衡量调度性能的优劣。
从用户的角度来说,总是希望自己的作业在提交后能立即执行,这意味着当等待时间为0时,作业的周转时间最短.。但是,作业的执行时间,并不能直观地衡量出系统的性能,而周转系数却能直观反映系统的调度性能。从整个系统的角度,不可能满足每个用户的这种要求,而只能是系统的平均周转时间或平均周转系数最小。
Note:先到先运行,后到有拥堵时先运行短作业,采用短作业优先的作业调度算法。
显然,作业的平均周转时间越短,意味着这个作业在系统中停留的时间越短,因而系统的利用率也就越高。另外,也能使用户都感到比较满意。因此,用平均周转时间和平均周转系数来衡量调度性能比较合理。就平均周转时间和平均周转系数来说,最短作业优先算法最小,先来先服务算法最大,响应比高者优先算法居中。
三、人机界面
用户界面(User Interace)是计算机中实现用户与计算机通信的软件、硬件部分的总称。
用户界面也称用户接口,或人机界面。
用户界面的硬件部分包括用户向计算机输入数据或命令的输入装置,以及由计算机输出供用户观察或处理的输出装置。用户界面的软件部分包括用户与计算机相互通信的协议、约定、操纵命令及其处理软件。计算机用户界面的发展过程可分为4个阶段:控制面板式(开关、穿孔纸、指示灯及打印机)、字符用户界面(键盘、显示器及打印机)、图形用户界面(图形、视频等超文本)及新一代用户界面(VR)。