电脑专家——操作系统知识详解(六)作业与作业管理

与作业有关的几个概念

l作业(Job):是让计算机完成的一件事或任务,可大可小,可多可少。一个作业实体由用户程序、数据及作业控制信息3个部分组成:程序部分表明了用户所要完成的功能;数据部分表明程序运行时的基础;作业控制信息(作业说明书)部分则表明用户对作业的控制意图,包括作业基本情况、作业控制、作业资源要求的描述;它体现用户的控制意图。如:预计运行时间、要求的资源情况、执行优先级等。
l作业步(Job steps) :作业顺序执行的工作单元。
l作业流(Job Stream) :作业步的控制流程。
l作业类别:有终端交互作业、批处理作业。
l作业管理的基本功能是:1.作业调度 2.作业控制。
l作业控制:作业控制就是用户使用操作系统提供的作业控制语言JCL或作业控制命令,来组织控制用户作业的运行。作业控制方式有:
1)脱机作业控制:就是用户先用系统提供的作业控制语言或控制命令,把要求系统进行的工作,包括发生故障时的处理方法写成作业说明书,随同源程序和数据一齐交给计算机系统。
2)联机作业控制:采用人-机对话的方式控制作业的运行。

作业状态及转换

一个作业进入计算机系统后,一般要经过几个阶段,每个阶段对应相应的状态,它们分别是;提交,后备, 执行, 完成。

(1) 提交——作业由用户手中经输入设备进入输入井的过程;

(2) 后备——一个作业处于随时等待作业调度程序调度的状态;

(3) 执行——一个作业从后备状态被选中,给它分配资源,它就进入了执行状态;

(4) 完成——当一个作业正常结束或异常终止,该作业进入完成状态。

作业控制块(JCB)和作业后备队列

作业控制块(JCB)是记录与该作业有关的各种信息的登记表。为了管理和调度作业,系统为每个作业设置了一个作业控制块(JCB)。它记录该作业的有关信息。是作业在系统中存在的唯一标志。包括用户名、作业名和状态标志等信息。
为了对已经接纳的作业进行管理,系统将把每个作业的JCB链接成队列,形成后备作业队列,当需要调度作业进入主存运行时,作业调度程序就扫描此队列,从中选出合适者,把它的作业控制块摘下来,插入到运行作业队列中。
作业调度
所谓作业调度(又称高级调度或宏观调度),就是按某种算法从处于后备状态的作业选择一个作业装入主存开始执行,完成这种功能的程序称为作业调度程序。
1.如何选择一个好的调度算法
(1)选择的调度算法应与系统的整个设计目标一致
(2)注意系统资源的均衡使用,使“I/O繁忙”的作业和“CPU繁忙”的作业搭配起来执行
(3)平衡系统和用户的要求。
2.作业调度算法
(1)先来先服务(FCFS)
作业平均周转时间=å(作业完成时刻i-作业提交时刻i)/n个作业
(2)短作业优先
在作业内容参差很不均衡时有合理性
(3)“响应比”高的优先
“响应(系数)比”:作业响应时间(等待和运行)/作业运行时间
(4)定时轮转法(按时间片):适合作业不定的情况
(5)优先级调度法:急事先办的原则
(6)均衡调度法
3.作业调度算法性能的衡量指标
1)周转时间:从作业提交到完成作业的时间。(作业等待进入内存+在就绪队列中等待+在CPU上运行+完成I/O操作)
作业的周转时间Ti:Ti=tci-tsi (tsi-作业提交时间; tci-作业完成时间)
设:系统中有n 个作业,则平均周转时间T为:
      
(i =1,2….n)
利用平均周转时间可衡量不同调度算法对相同作业流的调度性能。
2)带权周转时间W:能够合理反映作业长短差别的指标。
      W=T/R (R-实际运行时间)
平均带权周转时间:
      
利用平均带权周转时间可比较某种调度算法对不相同作业流的调度性能。
用户与操作系统间的接口
1.用户接口
操作系统是用户与计算机之间的接口,用户通过操作系统来使用计算机。那么用户是如何使用操作系统的呢?换句话说,用户和操作系统之间的接口是什么呢?
操作系统为了提供有效的服务,它必须支持与其用户(使用计算机来运行其应用程序的人)的通信。这个通信包括双向的信息传输:用户请求系统得到特 定的服务,而系统把服务的结果提供给用户。这种通信可以是直接的,例如,通过交互式终端上打入和显示的对话方式来实现。它也可以是间接的,例如,在批处理 方式下通过提交的作业或程序来实现与系统的通信。操作系统中负责管理这种通信的部分称为用户接口。
用户接口通常是以命令或系统调用的形式呈现在用户面前,前者是作业控制一级的接口,提供给用户在键盘终端上使用,称为命令接口;后者是程序一级的接口,提供用户在编程时调用,称为程序接口
命令接口又可进一步细分为联机用户接口和脱机用户接口:
1)联机命令接口:也称交互式命令接口。该接口是为联机用户提供的,它由一组键盘操作命令(终端处理程序)及命令解释程序(命令处理程序)所组成;
2)脱机用户接口:脱机用户接口是为批处理作业的用户提供的,故也称为批处理用户接口。它是由一组作业控制语言JCL所组成。
程序级接口是由一组系统调用组成。系统调用是指系统为用户程序调用操作系统所提供的子程序。
2.用户界面的发展:
第一代用户界面:操作命令和系统调用在一维空间(命令行界面);
第二代用户界面:图形界面在二维空间(图形界面);
第三代用户界面:虚拟现实在三维空间(虚拟现实的界面元素)。

0 评论:

发表评论