1.27k likes | 1.44k Views
大型机高级系统管理技术. 第 4 章 作业控制子系统. 第 4 章 作业控制子系统. MVS 操作系统通过 JES 子系统对系统中绝大多数的作业进行控制和管理,包括从系统外部接收作业、对系统中的作业进行调度、管理作业的输出等。 在定制 MVS 系统时客户可以选择使用两个不同的 JES 子系统: JES2 和 JES3 。. 第 4 章 作业控制子系统. 在 MVS 系统中,一个作业的生命期分为六个阶段: 输入 (Input) 转换 (Conversion) 运行 (Processing) 输出 (Output) 打印 (Print/Punch)
E N D
大型机高级系统管理技术 第4章 作业控制子系统
第4章 作业控制子系统 • MVS操作系统通过JES子系统对系统中绝大多数的作业进行控制和管理,包括从系统外部接收作业、对系统中的作业进行调度、管理作业的输出等。 • 在定制MVS系统时客户可以选择使用两个不同的JES子系统:JES2和JES3。
第4章 作业控制子系统 • 在MVS系统中,一个作业的生命期分为六个阶段: 输入(Input) 转换(Conversion) 运行(Processing) 输出(Output) 打印(Print/Punch) 清除(Purge)
第4章 作业控制子系统 JES2和JES3 • 基本工作类似,将作业读入系统、转换为系统可识别的格式、调度作业的运行、处理作业的输出、最终将作业从系统中清除。 • JES3针对多处理器
4.1 JES2的简述 • JES2所支持的系统配置 • JES2的功能 • JES2的客户化 • JES2的交互(JES2的消息诊断,系统控制)
4.1.1 JES2的配置 • 几个问题: • JES2是如何管理它的工作的? • JES2的数据保存在哪里,JES2又是如何保证数据的完整性的? • JES2支持哪些处理系统的配置类型?
4.1.1.1 JES2中数据集的管理 JES2中两种类型的数据集: • SPOOL数据集 • 检查点数据集 所有这些数据集都保存在DASD设备上(direct access storage devices)。
4.1.1.1 JES2中数据集的管理 • SPOOL(Simultaneous peripheral operations online) • SPOOL在本课程中一般解释成是系统对作业处理的一个过程,包含几层含义: 使用DASD设备上的存储空间作为一个缓冲存储器,用来降低在外围设备和程序之间传递数据的延迟。 将输入流读到获将输出流写到一个中间设备上,等待接下来的处理或输出。 当系统忙于其它的工作时,用来执行一些操作,如打印。 • 有些情况下我们也使用SPOOL这个词来表示那些包含了SPOOL数据集的DASD设备。
4.1.1.1 JES2中数据集的管理 • SPOOL数据集 JES2将所接收的作业(包括JCL、作业的控制语句、作业的数据)写到一个SPOOL数据集中,等待系统空闲时在处理。 SPOOL数据集实际上是所有输入的作业和JES2管理的系统输出的一个存储仓库。
4.1.1.1 JES2中数据集的管理 检查点数据集: • 描述一组JES2维护的位于DASD设备或一些相关设备上的数据集。检查点数据集同样包含了JES2中作业队列和输出队列的一个备份,这些备份信息中包含了系统中有哪些作业正在被处理,以及每一个作业被处理到哪一步。 • 同SPOOL数据集同样,位于一个多配置系统检查点数据集可以被系统中的所有成员访问,但任何一个时刻只能有一个成员可以控制这些数据集。 • JES2定期对检查点数据集进行更新。 • 检查点数据集中的数据除了在JES2或系统发生故障时使用外,这些数据对于JES2中作业的处理也是非常关键的。
4.1.1.1 JES2中数据集的管理 检查点处理 : • 定期地将成员系统中内存中的作业和输出队列中的内容复制到检查点数据集中。 检查点重构会话 • 一种动态的处理方法,通过这种方法当前的检查点数据集的配置情况可以被更改。
4.1.1.2 JES2的配置 JES2支持的系统配置: • 单系统结构(单处理器和一个JES2) • 多系统结构(最多可以包含32个处理器并且每个处理器都可以拥有自己的JES2) • 复合JES系统(多套JES2存在于一个MVS中) • 远程作业入口工作站(远端接入系统) • NJE结构(多个单系统或多系统的通过网络连接的结构)
4.1.1.2 JES2的配置 • 远程作业入口(RJE)的方法可以让本地的JES2处理系统的配置得以扩展,使用户不再局限于在一个地理位置上工作。 • 远程作业入口RJE是通过在一个不同的地理位置上定义一些的远程设备(如作业输入终端和输出设备等)的方法来实现的,这些远程设备通过卫星、电话线路等远程通信手段连接到MVS/JES2的主机上。
4.1.1.2 JES2的配置 • 网络作业入口(NJE)能将地理上分离的系统通过网络连接起来,进行通讯,传递作业,将输出送往任一个连接的输出设备。在这种方式下,网络中可能存在多个MVS/JES2系统,也可能存在非MVS/JES2系统,不同的系统之间可以进行资源的共享。
4.1.2 JES2的功能 • 作业处理的六个阶段 输入(Input) 转换(Conversion) 运行(Processing) 输出(Output) 打印(Print/Punch) 清除(Purge)
4.1.2 JES2的功能 • 图中包含了处于不同阶段的作业 ,例如: • 转换队列中包含等待运行的作业 • 运行队列中包含正在运行的作业 • 输出队列中的作业在等待它们的运行结果产生 • 硬拷贝队列包含所有已经产生运行结果的作业 • 清除队列包含所有等待被清除的作业
4.1.2.2 JES2的性能与功能 • 连接TSO/E(Time Sharing Options/Extensions)和MVS的桥梁。 • 通过JES2的初始化语句和JES2命令,提供数据处理和系统设置管理能力。 • JES2提供以下主要的功能,来管理MVS中作业的输入输出。所有的这些都在系统程序员的控制之下。 • 从MVS外得到作业 • 调度作业,优化系统效率 • 卸载作业和备份系统 • 高级打印输出 • 安全管理
4.1.3 JES2的客户化 JES2可以根据用户的运行要求进行配置: • 在创建JES2的初始化数据集时可以根据自己的需求去定义基本的配置 • JES2还提供了如退出点程序和双表结构等功能对配置进行修改
4.1.3.1 JES2的初始化数据集 • 存放在数据集SYS1.VnRnMn.SHASSAMP的成员HASIPARM中 • 通过大约70条初始化语句,用户可以控制所有的JES2功能 • 在JES2的初始化数据集中提供了许多定义的规范。
4.1.3.1 JES2的初始化数据集 • 每一条初始化语句都包含一组用于定义一项JES2功能的参数,其中大部分的JES2初始化语句都是可选的。 • 如果用户不需要对特定的的功能进行定义或者重新定义就可以不去修改相应的初始化语句。 • 在第一次安装JES2时仅仅需要提供很小一部分的初始化语句就可以了。
4.1.3.1 JES2的初始化数据集 • JES2中提供了一个作为例子的初始化数据集。 • 这个例子存放在数据集SYS1.PARMLIB中,其中包含了所有的JES2初始化语句和所有参数的缺省值。 • 使用CBPDO(Custom Built Product Delivery Offering)来创建系统,CBPDO会帮助用户创建一个更为实用的初始化集合。
4.1.3.1 JES2的初始化数据集 JES2提供对配置进行修改的方法: • JES2的双表功能。 • 预定义的退出点程序。 • 安装时定义的退出点程序。
4.1.3.2 JES2的双表结构 • 两个表格一个是JES2的表格 ,另一个是用户的表格 • JES2的表格中对各种功能和处理过程进行了缺省的定义 。用户表格,用户可以对这种表格中的定义进行扩充、修改和删除。
4.1.3.3 JES2中预定义的退出点程序 在JES2处理的过程中,JES2的源代码会在一些特定的位置调用相应的退出点程序,这些特定的位置我们称为退出点。 • 在JES2中一个退出点程序可以关联一个或者几个退出点。在JES2中最多可以有256个退出点程序 • 其中系统已经预先定义了一部分的退出点程序,用以支持最基本功能的客户化。
4.1.3.3 JES2中预定义的退出点程序 • 退出点程序支持JES2客户化的范围很广,包括: • 定义用户自己的打印分隔页 • 检查或修改由TSO/E用户递交的作业 • 修改或不接受用户发出的命令 • 为使用了很多资源的作业定义后备处理过程 • 对远程终端和系统数据集提供口令检查,加强安全管理。
4.1.3.4 JES2中自定义的退出点程序 • 当系统中预定义的退出点程序不能够满足需要时,JES2的退出点程序功能可以允许用户去创建自己的退出点程序。
4.1.4 与JES2进行交互 • 如何使用JES2 • 当JES2运行时操作员和程序员如何与JES2进行通讯 • 可以在多大程度上控制JES2的运行 • 当JES2发生问题时是如何通知操作员的,以及是否有工具来帮助我们更方便地使用JES2的功能。
4.1.4.1 JES2的操作方式 1.由操作员完成的工作 • 通过命令对JES2的初始化语句做的大部分定义进行修改。 • 通过实现一些安全管理的机制或对系统进行合理的客户化来限制某个用户或一组用户对操作系统的优先控制 • 可以通过命令来控制联结不同系统的通讯线,就像控制一个系统的不同部分一样。 • 可以通过命令对初始的网络环境进行重新定义。
4.1.4.1 JES2的操作方式 停止和启动JES2的运行 • 热启动,例如当重新定义一个网络作业环境中的部分系统时就必须做一个热启动,对JES2所做的热启动不会影响当前的作业和输出队列中的结果 • 冷启动 ,冷启动会将JES2中当前作业和输出队列中的结果清除然后用新的数据重建
4.1.4.1 JES2的操作方式 JES2的命令 • 操作员可以使用这些命令对JES2处理过程进行控制: • 添加功能和功能子系统 • 更改前面的定义。如对输出的定义;对检查点的动态更改;使安装时定义的突出程序有效;卸载设备;更改打印机的属性;更改作业的属性等。 • 删除部分功能;删除网络中的系统;删除退出点程序;删除诊断跟踪等。 • 在JES2的控制下启动、关闭和暂停设备的使用。 • 为本地打印机、打孔机、读卡机和通讯线分配单元或者为这些设备重新分配单元。 • 显示当前功能和设备的定义
4.1.4.1 JES2的操作方式 2.自动运行JES2命令 • 操作员可以定义一条命令或者是一组命令,让这些命令在指定的时间或者每个一定的时间便自动运行。 • 另外一种自动方法是通过如AOC/MVS(Automated Operations Control/MVS)这样的自动工具为系统设置对JES2消息的自动回答。
4.1.4.1 JES2的操作方式 3.自动完成JES2操作 • 根据所收到消息的序号、原因码和可变的消息文本就可以对系统当前的运行状态进行解释,这样在一个可编程的控制台上就可以通过运行定义好的命令去响应。 • 有一些产品可以帮助用户去根据所收到的消息自动完成响应的工作,如有NetView和AOC/MVS。 • AOC/MVS可以用来在一些SPOOL空间短缺的情况下自动运行一些JES2命令;在发生一个严重错误时运行相应的命令去关闭JES2。
4.1.4.2 JES2的通讯机制 下列工具可以用来检查和判断在JES2环境中是否发生问题 • 消息:JES2提供了一组消息用来提醒操作员和系统程序员在处理过程中所出现的错误。 • 跟踪:可以记录下与特定功能相关的事件,比如记录每次JES2的初始化和终止或者一个退出点程序的每次执行。 • IPCS:JES2使用了一种交互式的问题处理功能,我们把它称为IPCS(interactive problem control system )。当用户在进行问题的诊断和恢复时,它允许我们在线地查看JES2的控制块,并可以将这些控制块的内容以方便用户理解的格式进行显示;还允许将我们需要的系统数据转存打印出来。
4.1.4.2 JES2的通讯机制 1.JES2的消息 • JES2自己维护着一套消息和出错信息。每一条消息和出错信息都以$HASP作为前缀,其中HASP是不变的,但我们可以将$符号改为其它字符。 • 在JES2中大约有500条消息,每一条消息都有一个序号,这些序号分布在$HASP000到$HASP949之间,我们可以在《OS/390 JES2 Messages》中查到这些消息的详细解释。 • 用户可以通过JES2的消息创建工具创建一些有特定含义的消息,用以帮助对系统的控制。
4.1.4.2 JES2的通讯机制 2.JES2的跟踪功能 • 可以使用JES2的跟踪功能,在处理的过程中获得特定时刻的寄存器内容和数据。 • 跟踪所产生的结果可以通过两种方式查看。一种是通过跟踪表,这种方式所看到的数据是杂乱、未经过格式化的;另外可以通过将结果转成标准格式的系统输出结果的方式进行查看。
4.1.4.2 JES2的通讯机制 3.JES2-IPCS格式化 • 基础控制程序和JES2都支持IPCS(interactive problem control system)的使用。可以通过IPCS将基础控制程序和JES2结合起来,在基础控制程序中访问JES2的特定数据区。 • IPCS采用了一种菜单界面,用户可以交互地选择所需要查看的控制块,这些控制块的内容被转换成格式化的输出进行显示和打印。
4.2 JES2的初始化和配置 • JES2的初始化 • 控制JES2的处理过程 • SPOOL卷的配置、管理和性能 • 检查点数据集的定义和配置
4.2.1 JES2的初始化 • JES2的初始化过程是在JES2启动后到JES2可以处理作业之前所完成的设置过程。 • 为了能够在MVS系统上正确运行JES2,以下的操作步骤是必不可少的: 1.安装JES2之前应熟悉对SMP/E(System Modification Program/E)的使用。 2.根据程序包提供的说明,使用SMP/E在MVS系统上安装JES2。 3.定义JES2的SPOOL数据集和检查点数据集。 4.定义JES2的初始化语句。 5.在数据集SYS1.PARMLIB的成员IEFSSNxx中通过关键字PRIMARY定义主子系统。 6.为JES2定义已编目JCL过程。
4.2.1 JES2的初始化 • JES2初始化过程: • 通过操作员的命令(S JES2)或通过数据集SYS1.PARMLIB的成员COMMNDxx 中的IPL自动化过程启动JES2。通过MVS完成下列动作: 1.在SYS1.PROCLIB数据集中定位JES2的过程。 2.分配在JES2的过程中使用的库,包括那些JES2子系统用来定位其初始化语句的库。 3.将控制权交还给JES2子系统,在调用一系列初始化程序之前建立通用的ESTAE保护。 • 处理所指定的启动参数并调用退出点程序0,允许执行预初始化操作。 • 处理当前的子系统界面(SSI)状态,建立必要的控制块为随后的SSI请求做准备。
4.2.1 JES2的初始化 • 为初始化过程分配临时控制块以及为JES2的处理过程分配控制块 • 处理在参数库中或由控制台及退出点程序中输入的初始化语句,并为每一条初始化语句调用退出点程序19。 • 处理所指定的初始化参数,检验参数的有效性及计算变量参数。 • 为初始化语句中定义的设备及这些设备的I/O活动分配控制块。 • 处理相关的初始化过程及检验过程为网络作业入口方式提供支持。 • 处理相关的初始化过程及检验过程为远程作业入口方式提供支持。 • 检验在初始化语句中定义的DASD设备,分析SPOOL卷和检查点数据集并且执行一些必须的操作。(如检查点数据集的前滚) • 检验MAS系统结构的定义。 • 为命令和消息的传递、MVS的初始器、子系统界面、JES2的跟踪功能及其它JES2所支持的功能分配存储空间控制块。
4.2.1 JES2的初始化 • 连接由初始化语句定义的JES2设备和MVS设备的控制块。 • 调用多种MVS服务,如建立界面服务。 • 为那些初始化过程后马上需要的不能够动态添加的JES2处理器分配必须的控制块。 • 产生信息流去请求子系统调用程序54。 • 通过创建所需的缓冲区池和调用退出点程序24完成JES2的初始化过程。 • JES2的初始化过程中不同的方式: • 指定JES2为热启动或冷启动 • 指定JES2是否强制格式化SPOOL卷。 • 通过JES2的已编目过程中的DD语句定义初始化语句的输入数据集。 • 在处理完参数库中的初始化语句后是否暂停JES2,将控制权交给控制台的操作员去输入其它的初始化语句。
4.2.1 JES2的初始化 • 在JES2的热启动过程中,通过CKPTDEF语句的CKPT1=或CKPT2=参数定义被访问的数据集。 • 指定检查点数据集的定义是否可以被修改。 • 指定是否为初始化语句打印日志,及为JES2的已编目过程中的HASPLIST DD语句指定的数据集提供相关的诊断信息。 • 指定在初始化过程后是否直接启动通常的处理过程,还是等待操作员的命令去启动。 • 通过OPTSDEF语句指定那些启动选项可以被覆盖。 • 初始化语句参数的修改或启动选项的修改需要整个JES2的冷启动,或需要整个MAS环境的所有JES2的热启动 • 系统安装后会在数据集SYS1.SAMPLIB中的一些成员中提供各种样例,通过对这些样例的修改,用户可以更容易地建立自己的配置。
4.2.1 JES2的初始化 • 用户可以通过以下的方式对JES2的初始化过程进行控制: • 创建一个包含初始化语句的数据集。 • 选择在JES2初始化过程中由控制台输入的初始化语句。 • 将JES2的初始化数据集的定义加入的JES2的过程中去。 • 选择JES2的启动选项。 • 通过退出点程序和扫描功能去修改初始化过程的处理,从而修改和补充JES2的功能。
4.2.2 控制JES2的处理过程 • 用户可以通过一些初始化语句及相关的参数去控制输入设备的一些特征,用户也可以通过JES2输入过程中的退出点程序2、3、4和20去对进入系统的作业的属性进行修改。 • 在作业进入系统之后,转换程序要对作业的JCL、登录信息或已启动的任务进行处理,将JCL转换成转换/解释文本。一但有适合运行这个作业的初始器空闲,经过转换的作业便可以运行了。
4.2.2 控制JES2的处理过程 • 作业处理的另外一个重要的方面便是对输出的管理,JES2中提供了以下的功能对系统中的输出进行管理: • 根据JCL OUTPUT语句中指定的优先权或根据输出所代表的卷的优先权对作业的每一个输出单元进行排队。 • 通过格式、磁带架和对针式打印机的队列式装载,以及通过格式、覆盖框架和对非针式打印机的集中式装载来减少与操作员的交互。 • 通过外部书写器界面将SYSOUT数据发送到除打印机和打孔机以外的其他特殊的外部设备进行处理。 • 根据指定的优先权对作业的输出进行的优先权递增,使输出结果在输出队列中保留的时间越长,它的优先级就越高。 • 通过一个功能子系统界面提供了对非针式打印机功能子系统的支持,如3800-3功能子系统。 • 在网络的节点之间传送SYSOUT数据集。
4.2.2 控制JES2的处理过程 • 指定在打印机或打孔机上每个作业处理的记录数。 • 将需要打印的输出数据集保持起来,然后收集具有相同设置的其它数据集作为一个输出单元进行输出。 • 如果作业正常结束的话,提供将作业、SYSOUT、STC(started task)和TSU(time sharing user)的输出结果清除的功能。 • 确保用户可以使用特定的输出设备,并且输出设备有足够的安全性用以输出特定的输出结果。
4.2.3 SPOOL卷的配置,管理和性能 • JES2必须包含一个用来保存JES2的数据和控制块的数据集SYS1.HASPACE。这个数据集就是SPOOL数据集。 • SYS1.HASPACE数据集必须位于可以直接访问的卷上,如果是在一个MAS的系统结构中的话,这个卷必须能够被所有的成员访问。
4.2.3 SPOOL卷的配置,管理和性能 • SPOOL卷支持多种设备的组合使用。 • JES2在使用SPOOL卷时是同时使用所有的SPOOL卷上的空间。 • 位于MAS环境中的所有成员必须拥有至少一条连接包含了SPOOL和检查点数据卷的设备的通道,以保证所有成员对这些数据的访问。