大型主机平台系统应用开发基础 教育部-IBM精品课程 单位:大连理工大学 作者:陆坤,李凤岐,姜厚云.

Slides:



Advertisements
Similar presentations
高校教师、高级项目经理 任铄 QQ : 第一章 操作系统引论 1.1 操作系统的目标和作用 1.2 操作系统的发展过程 1.3 操作系统的基本特性 1.4 操作系统的主要功能 1.5 OS 结构设计.
Advertisements

大型主机应用上的开放系统和中间件 2011年度教育部-IBM精品课程
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
CHAPTER 9 虛擬記憶體管理 9.2 分頁需求 9.3 寫入時複製 9.4 分頁替換 9.5 欄的配置法則 9.6 輾轉現象
Foundations of Computer Science
6 Copyright © Oracle Corporation, All rights reserved. 维护控制文件.
大型机系统管理 刘 玓
資料庫設計 Database Design.
操作系统结构.
实用操作系统概念 张惠娟 副教授 1.
Oracle数据库 Oracle 子程序.
在PHP和MYSQL中实现完美的中文显示
關聯式資料庫.
Kvm异步缺页中断 浙江大学计算机体系结构实验室 徐浩.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
Hadoop I/O By ShiChaojie.
Basis基本操作、使用者 管理與權限設定
簡易 Visual Studio 2010 C++ 使用手冊
第4章(2) 空间数据库 —关系数据库 北京建筑工程学院 王文宇.
存储系统.
SOA – Experiment 3: Web Services Composition Challenge
大型机系统管理技术 第2章 大型服务器外存管理.
SVN服务器的搭建(Windows) 柳峰
走进编程 程序的顺序结构(二).
SAP 架構及基本操作 SAP前端軟體安裝與登入 Logical View of the SAP System SAP登入 IDES
預官考試輔導 計算機概論提要 91年12月4日.
第三章 项目设定.
第一单元 初识C程序与C程序开发平台搭建 ---观其大略
Windows网络操作系统管理 ——Windows Server 2008 R2.
第十章 IDL访问数据库 10.1 数据库与数据库访问 1、数据库 数据库中数据的组织由低到高分为四级:字段、记录、表、数据库四种。
重點 資料結構之選定會影響演算法 選擇對的資料結構讓您上天堂 程式.
校園網路架構介紹與資源利用 主講人:趙志宏 圖書資訊館網路通訊組.
第4章(1) 空间数据库 —数据库理论基础 北京建筑工程学院 王文宇.
逆向工程-汇编语言
簡易 Visual Studio 2005 C++ 使用手冊
CPU结构和功能.
Operating System Principles 作業系統原理
作业调度系统常用命令.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
Unit 11.Operating System 11.1 What’s OS 11.2 Related Courses
SOA – Experiment 2: Query Classification Web Service
C语言程序设计 主讲教师:陆幼利.
简单介绍 用C++实现简单的模板数据结构 ArrayList(数组, 类似std::vector)
学习目标 1、什么是字符集 2、字符集四个级别 3、如何选择字符集.
微机系统的组成.
中国科学技术大学计算机系 陈香兰 2013Fall 第七讲 存储器管理 中国科学技术大学计算机系 陈香兰 2013Fall.
虚 拟 仪 器 virtual instrument
VB与Access数据库的连接.
姚金宇 MIT SCHEME 使用说明 姚金宇
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
Lightweight Data-flow Analysis for Execution-driven Constraint Solving
成绩是怎么算出来的? 16级第一学期半期考试成绩 班级 姓名 语文 数学 英语 政治 历史 地理 物理 化学 生物 总分 1 张三1 115
第4章 Excel电子表格制作软件 4.4 函数(一).
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
iSIGHT 基本培训 使用 Excel的栅栏问题
SAP 架構及基本操作 SAP前端軟體安裝與登入 Logical View of the SAP System SAP登入 IDES
多层循环 Private Sub Command1_Click() Dim i As Integer, j As Integer
Create and Use the Authorization Objects in ABAP
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
本节内容 C语言的汇编表示 视频提供:昆山爱达人信息技术有限公司 官网地址: 联系QQ: QQ交流群 : 联系电话:
第六章 Excel的应用 五、EXCEL的数据库功能 1、Excel的数据库及其结构 2、Excel下的数据排序 (1)Excel的字段名行
基于列存储的RDF数据管理 朱敏
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
数据表示 第 2 讲.
MGT 213 System Management Server的昨天,今天和明天
Introduction to Computer Security and Cryptography
第四章 UNIX文件系统.
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
使用Fragment 本讲大纲: 1、创建Fragment 2、在Activity中添加Fragment
入侵检测技术 大连理工大学软件学院 毕玲.
Presentation transcript:

大型主机平台系统应用开发基础 教育部-IBM精品课程 单位:大连理工大学 作者:陆坤,李凤岐,姜厚云

第一章 大型主机与JCL语言介绍 1.1大型主机概述 1.2 z/OS的使用 1.3 JCL语言介绍 1.4 JCL实用程序介绍 什么是大型主机 什么是大型主机操作系统z/OS 1.2 z/OS的使用 z/os操作系统的使用 z/OS数据集的操作 1.3 JCL语言介绍 JCL基本概念 JOB,EXEC,DD语句介绍 1.4 JCL实用程序介绍

第一节大型主机概述 什么是大型主机 谁使用主机 为什么用主机 主机的发展历史 什么是大型主机操作系统及其特点

IBM 服务器产品系列 基于Intel构架的服务器 @server x系列服务器,客户可以自由选择操作环境。自由选择的运行环境,包括MS 2000、Linux和Novell等。例如Netfinity等 最开放的UNIX系统 server p系列服务器。P表示Performance,共同特点是运行功能强大的UNIX系统。产品例如,S80、p610等

IBM 服务器产品系列 集成的商用服务器 server i系列服务器,该系列产品结合领先的铜芯片/SOI技术。I表示Intergrated,代表通过一个高级的环境集成。产品例如,AS/400、X宝箱等 代表故障时间为零 server z系列服务器。 Z表示Zero,意味着宕机时间为零的高可用性。产品例如,S/390,z/Architecture等

What is a mainframe 大型机(mainframe)这个词,最初是指装在非常大的带框铁盒子里的大型计算机系统,以用来同小一些的迷你机和微型机有所区别。它却是指system/360 开始的一系列的IBM计算机。虽然这个词已经通过不同方式被使用了很多年,大多数时候大型机是商业中用于存储商业数据库,事务处理、交易服务和应用程序的机器,相比于小规模的计算机,大型机上的这些程序和服务要求更高的安全性和可用行。 重要特点:RAS(Reliability, Availability, Serviceability 高可靠性、高可用性、高服务性) 主机,大型主机,大型机,mainframe, zSeries等。

Who uses mainframe? Most Fortune 1000 companies use a mainframe environment 60% of all data available on the Internet is stored on mainframe computers 90%的银行都是采用IBM的大型主机; 全球100强保险公司有40多家是IBM大型主机的客户; 全球将近2/3的金融数据交易都是由IBM的大型主机来处理,

Why mainframe? Large-scale transaction processing Thousands of transactions per second Support thousands of users and application programs Simultaneously accessing resources Terabytes of information in databases Large-bandwidth communications There are more CICS transactions processed daily than Web pages served

Why mainframe? 主机单位负载成本随着负载的增加而降低! ---实现节能减排的理想服务器

Why mainframe?

Why Mainframe Green Computing 绿色计算 IDC观点 根据IDC最近对深圳部分企业的CIO或信息技术经理的调查结果显示,目前深圳正在使用大量x86服务器或Non-x86 Unix服务器的用户正面临种种问题:能源消耗严重、环境影响堪忧、建筑资源消耗、维护成本巨大、人力资源浪费…… IDC认为,实施“绿色计算”是解决这些问题的最有效解决方案。利用先进技术,将运行在大量的x86或non-x86 Unix服务器上的工作负载,移植到数目较少、运算能力较强的服务器上,可以有效减少服务器的数量,从而达到节能、环保、降低企业成本的目的。IBM的z系列大型主机是实现这一“绿色计算”计划的解决方案之一。 能源消耗严重 环境影响堪忧 维护成本巨大 建筑资源消耗 人力资源浪费

Evolving architecture

IBM大型服务器系统

IBM大型服务器系统

Evolving architecture

实验环境-z/900

实验环境-z/900

IBM System z naming – Quick Reference Brand Family Name IBM System z9™ IBM eServer™ zSeries® Brand Product Line Brand Product Line IBM System z9 Enterprise Class SXX IBM eServer zSeries 990 XXX Brand Product Line Model Config Brand Product Line Model Config IBM System z9 Business Class XXX IBM eServer zSeries 890 XXX Brand Product Line Model Config Brand Product Line Model Config IBM System z9 109 SXX *To be de-emphasized and phased out over time. Only to be used when referencing the specific GA1 model in comparison to its successor – the IBM System z9 Enterprise Class. Brand Product Line Model Config

IBM System z9 and eServer zSeries IBM eServer zSeries 890 z890 (2086) IBM eServer zSeries 990 z990 (2084) IBM eServer zSeries 800 z800 (2066) IBM eServer zSeries 900 z900 (2064) Announced 7/05 Superscalar Server 5 models – Up to 54-way Specialty Engines CP, IFL, ICF, zAAP,zIIP On Demand Capabilities CUoD, CIU, CBU, On/Off CoD Memory – up to 512 GB Channels Four LCSSs Multiple Subchannel Sets MIDAW facility 63.75 subchannels Up to 1024 ESCON channels Up to 336 FICON Express2 channels 10 GbE, GbE, 1000BASE-T Coupling Links Configurable Crypto Express2 Parallel Sysplex clustering HiperSockets - up to 16 Up to 60 partitions Enhanced Availability Operating Systems z/OS, z/VM, VSE/ESA, z/VSE, TPF/ESA, z/TPF, Linux on System z9 Announced 4/04 – zSeries Superscalar Server for mid market 1 model – Up to 4-way 28 capacity settings Specialty Engines CP, IFL, ICF, zAAP On Demand Capabilities CUoD, CIU, CBU, On/Off CoD Memory – up to 32 GB Channel Two LCSSs Up to 420 ESCON channels Up to 80 FICON Express2 channels Networking Adapters (OSA) Coupling Links Cryptographic Coprocessors Parallel Sysplex clustering HiperSockets - up to 16 Up to 30 partitions Operating Systems z/OS, z/VM, VSE/ESA, z/VSE, TPF/ESA, z/TPF, Linux on zSeries Announced 5/03 – First zSeries Superscalar Server 4 models – Up to 32-way Specialty Engines CP, IFL, ICF, zAAP On Demand Capabilities CUoD, CIU, CBU, On/Off CoD Memory – up to 256 GB Channels Four LCSSs Up to 1024 ESCON channels Up to 240 FICON Express2 channels Token-Ring, GbE, 1000BASE-T Ethernet Coupling Links Crypto Express2 Parallel Sysplex clustering HiperSockets - up to 16 Up to 30 logical partitions Operating Systems OS/390, z/OS, z/VM, VSE/ESA, z/VSE, TPF/ESA, z/TPF, Linux on zSeries Announced 10/00 - first 64-bit zSeries 42 models – Up to 16-way Specialty Engines CP, IFL, ICF On Demand Capabilities CUoD, CIU, CBU Memory – up to 64 GB Channels Up to 256 ESCON® channels FICON® Express, Parallel Token- Ring, FDDI, Ethernet, ATM Coupling Links Crypto coprocessors, accelerators Parallel Sysplex clustering HiperSockets™ – up to 4 Up to 15 logical partitions Operating Systems OS/390®, z/OS®, VM/ESA®, z/VM®, VSE/ESA™, z/VSE™, TPF/ESA, z/TPF, Linux® on zSeries Announced 2/02 - first 64-bit zSeries for mid market 10 models – Up to 4-way Specialty Engines CP, IFL, ICF On Demand Capabilities CUoD, CIU, CBU Memory – up to 32 GB Channel Up to 240 ESCON Channels FICON Express Networking Adapters (OSA) Coupling Links Cryptographic Coprocessors Parallel Sysplex clustering HiperSockets – up to 4 Up to 15 partitions Operating Systems OS/390, z/OS, VM/ESA, z/VM, VSE/ESA, z/VSE, TPF/ESA, z/TPF, Linux on zSeries This comparison chart shows the zSeries family characteristics and the new System z9.

大型机发展-S/360系统 1964年 S/360—OS/360,是一个简单的批处理操作系统; 采用了标准化措施,统一指令格式,统一数据格式,统一字符编码,统一I/O接口,统一中断系统以及统一人机对话方式等。由于确定了兼容性。使得同一程序在不同型号的机器语言级上的兼容,促进了计算机工业能力的规模和发展。 System/360是世界上第一款用集成电路制造的服务器。它的出现,彻底改变了计算机的使用方式,创造了一个全新计算机时代的到来——兼容的时代 。 成为计算机发展史上的一个重要里程碑 。

大型机发展-S/360系统 《计算机组成与结构》 王爱英主编 清华大学 IBM 360系统是最早采用集成电路的通用计算机。它开创了民用计算机使用集成电话的先例,计算机从此进入了集成电路时代。IBM 360成为第三代计算机的里程碑。 1964年4月7日,美国IBM公司同时在14个国家,全美63个城市宣告,世界上第一个采用集成电路的通用计算机系列IBM 360研制成功,该系列有大,中,小,型计算机,共6个型号,它兼顾了科学计算和事务处理两方面的应用,各种机器全都相互兼容,适用于各方面的用户,具有全方位的特点,正如罗盘有360度刻度一样,所以取名为360。它的研制开发经费高达50亿美元,是研制第一颗原子弹的曼哈顿计划的2.5倍。

S/360系统的特点:通用化,系列化、标准化 从应用角度来看,克服了第二代计算机性能单调的弱点,集科学计算、数据处理和实时控制功能于一身,确立了通用性; 从生产角度来看,IBM 360各档机器采用相同的系统结构,即在指令系统,数据格式,字符编码,中断系统,控制方式,输入输出等方面保持统一,从而保证了程序的兼容。IBM 360系统后来陆续增加的几种型号仍保持与前面的产品兼容。后来,西欧与日本的一些通用计算机也保持和IBM 360系统兼容。苏联和东欧国家联合制造的“统一系统”也是和IBM 360系统兼容。 实现了系列化; 从发展角度来看,采用标准的输入/输出接口,因此各个机型的外设都是通用的。采用积木式结构设计,除了各个型号的CPU独立设计外,存储器和外设都采用标准部件组装。 从使用角度来看,360在建立计算机系统的继承性上起了开创性的作用。

福布斯:“改变我们生活方式的85个发明之一” S/360: 改变现代人类生活的85项重大发明之一 第一台可以支持许多人同时在一台机器上工作的商用计算机 System/360 Model 40: 1964 IBM eServer zSeries 890 (z890): 2004 福布斯:“改变我们生活方式的85个发明之一” *FORBES Magazine, 85 周年庆典专题 12-23-2002

大型机发展 1970年六月,IBM正式发布了System/370的155和165两种型号; 1981年,IBM公布了扩展的S/370体系结构(370-XA),将地址线位数从24位增加到31位,大大增强了S/370的寻址能力; “三代半计算机” 1970年,IBM推出IBM S/370系列机,采用大规模集成电路取代磁芯进行存储,以小规模集成电路作为逻辑元件,被称为三代半计算机。 S/370采用了虚拟存储器技术,首次实行软硬件价格分离策略,从而明确了软件的价值。

大型机发展 1988年,IBM对S/370的体系结构作了进一步的改进,发布了ESA/370; 1990年9月,IBM开发了ESA/390,ES/9000和S/390系列计算机系统,采用ESCON等新技术; 1994年,在扩展ES/9000产品系列的基础之上,IBM发布了System/390(简称S/390系统),引进了并行复合系统环境下的并行处理和CMOS技术的应用; IBM eServer zSeries-更开放,更可靠… 2000年,z/900(2064),主存最多64G; 2003年,在z/990(2084);主存最多256G; 2005年,z9-109(2094);主存最多支持512G 2007年,z11……

大型机操作系统介绍 操作系统是计算机的第一个软件,管理和控制计算机系统中的硬件及软件资源、合理地组织计算机工作流程,以便有效利用这个资源为用户提供一个功能强大、使用方便和可扩充的工作环境,从而在计算机与用户之间起到接口作用。

大型机操作系统介绍

What is z/OS?

What is z/OS?

z/OS The flagship zSeries/z9 operating system Ultra-high reliability – over 50% of the OS is dedicated to error recovery! z/OS is the flagship operating system for the zSeries/z9. It has morphed from the very humble beginnings of OS/360 in 1965 to today’s high-performance, high-availability OS. z/OS runs most of the world’s largest transaction application systems and is in use in most of the Fortune 500 mainframe installations. One interesting thing to note about z/OS – there is so much attention paid to reliability and recoverability in z/OS that over 50% of the code in the operating system is there for recovery purposes. This ensures that when a program abnormally terminates, it does NOT crash the operating system!

Other Mainframe operating systems z/OS z/VM z/VSE(Virtual Storage Extended) Small- to mid-size 390 customers Most often used on very small 390 hardware Linux for zSeries z/TPF( z/Transaction Processing Facility ) Primarily for very high transaction rate, specialized applications (airline scheduling)

z/OS操作系统的组成部分 基本控制程序 BCP BCP与JES2或JES3组成了z/OS的主干部分。它提供了基本的服务,使得OS/390能够更可靠、完全、完整的处理用户数据。

z/OS操作系统的组成部分 (cont.) 摘自《UNIX操作系统教程》尤晋元主编 西安电子科技大学出版社 • 操作系统从功能上分:实时操作系统和作业处理系统 • 作业处理操作系统的主要功能是面向用户提供对作业及其各种输入输 出要求连带外部设备的管理、控制和组织功能 • 作业处理系统又可以分为两种。一种是批处理系统(Batch System), 另一种是分时系统(time-sharing system) • 批处理系统中,作业从进入到退出系统大致分成四个阶段 – 用户准备好作业程序、数据以及说明如何运行该作业的操作说明书(用 JCL实现),然后将它们提交给系统(JES系统)。 – 作业提交后,系统将它存放在磁盘中等待运行,可以有多个作业同时处 于等待状态,此时作业处于后备状态(In队列) – 系统(JES系统)从等待运行的后备作业中,挑选出若干作业,将它们送入 内存,并按一定方式使它们在处理机上运行。挑选后备作业时,一般要 考虑到充分使用系统内包含的各种资源。如果选择搭配得当,处理机和 各种输入、输出设备就能高度平行地工作。(JES调度算法) – 作业运行结束后,系统收回该作业占用的资源,并使其退出系统。此时 作业处于完成状态(Hold队列或者Out队列)

z/OS操作系统的组成部分 (cont.) 作业进入子系统(Job Entry Subsystem) JES子系统对系统中绝大多数的作业进行控制和管理,包括从系统外部接收作业、对系统中的作业进行调度、管理作业的输出等。 现在,在定制MVS系统时客户可以选择使用两个不同的JES子系统:JES2和JES3,他们分别是假脱机系统HASP和ASP的后代,JES2和JES3基本提供相同的功能,通常使用JES2。 JES工作过程如下:作业通过读卡机、分时终端或网络进入系统,或者由程序生成后传递给系统。所有的作业都要经过扫描检验其正确性,然后排入适当的队列。 JES提供一种手段,使系统以优先权分级结构为基础,通过有序的方式调度工作。转换程序将作业控制语言JCL转换成系统能读的内部形式,同时也进行一些其它的校验。如发现错误,则将该作业从系统中清除,并向用户发出相应的信息。

z/OS操作系统的组成部分 (cont.) 分时系统(Time Share Option) TSO是支持分时系统的软件,终端用户发出的每一条命令都由TSO处理,用户通过TSO 行命令和系统进行交互。 ISPF/PDF( Interactive System Productivity Facility/Program Development Facility)是TSO下开发的更方便的菜单选择方式。 SDSF(System Display and Search Facility是TSO下另一程序产品,提供给用户有关监控、管理和控制OS的系统信息。用户利用SDSF来查看用户提交到JES2队列中的作业信息,并可以修改作业属性如作业优先级。

z/OS操作系统的组成部分 (cont.) 存储管理子系统(SMS) 主要完成一下几个功能: 外存管理:为操作系统定义自动管理外存的策略。 提供编目机制,对磁带、磁盘上的数据进行编目,以便用户能够方便迅速地访问数据。 定义并且控制系统的输入输出设备的操作。

z/OS操作系统的组成部分 (cont.) 支持软件 系统支持软件:实用程序(UTILITY,如SDSF)、连接编辑(Link/Edit)程序、装入程序(Loader)和语言编译程序(FORTRAN、COBOL、 PL/I和汇编等) 数据库管理系统:IMS、DB2 大型机中间件产品:Websphere Application Server,Web Server,Websphere MQ,JVM,XML处理函数等 联机事务处理系统:CICS(Customer Information Control System) 安全管理产品RACF(Resource Access Control Facility) 其它软件产品

主机软件全貌

第二节大型主机的使用 2.1. 登陆主机--TSO (Time Sharing Option)概要 2.2 使用主机-SPF/PDF概要 What’s TSO? TSO运行环境(与MVS,ISPF之间的关系) 2.2 使用主机-SPF/PDF概要 what’s ISPF/PDF ISPF/PDF panel ISPF/PDF Function key 2.3 数据集简介 2.4 数据集操作

What’s TSO(Time Sharing Option) TSO 是MVS的命令输入Processor 。用户从终端LOGON以后,开始使用TSO环境。在TSO终端上,用命令形式操纵和管理计算机的资源和应用。 TSO是z/OS的一个重要组成部分,是支持分时系统的一个软件,终端用户发出的每一条命令都由TSO来处理。类似于Linux的shell。 用户使用TSO有一个登录(LOGON)和注销(LOGOFF)的过程,该过程被称为终端会话期间(Terminal Session),即一次登录到注销之间的时间。

PC和主机连接 PC机在Windows环境下使用终端仿真程序“IBM 个人通信”软件和z/OS主机进行连接,通过P-COMM登录到主机的TSO环境,然后在TSO环境下使用主机。 “IBM个人通信”是IBM为其服务器系统(包括S/390、AS/400等)提供的终端仿真程序,随服务器系统产品一同交付用户使用,用户也可以从Internet上获得该软件。 假设pCOMM软件已经安装和配置完成,下面我看来看一下登陆过程:

LOGON 过程

LOGON 过程

ISPF Primary Option Menu 此屏幕为主选项菜单, 1. The Primary Option Menu is the entry point for ISPF. 2. This menu lists the main tasks ISPF can perform 从这里进行选择一个选项的时候,则在command line中输入选项的字母或者数字即可。 Command line在ISPF中通过 OPTION= or COMMAND=标识。 0:对ISPF和Terminal进行定制。 1:查看数据集的一些信息,但是不能修改 2:创建查看或者编辑数据集。Allows u to create, display, and change data stored in ISPF libraries and partitioned or sequential data sets. Edit enable u to copy, delete ,add, move or change lines of data in many ways 3.Utilities:提供了对library, data set, and catalog维护的一些功能。主要的功能包括数据集list工具。即3.4Option。 4:主要用于编译程序等 5: means that work submitted to the computer is executed in order submitted or by priority. Like the foregroud option, you use Batch mainly for compiling computer programs 6:命令选项,输入TSO命令,或者执行CLIST或REXX

ISPF/PDF的基本使用和参数设定 1.ISPF/PDF开始 2.ISPF/PDF功能 ISPF/PDF基本OPTION MENU被表示。在TSO的READY状态下,输入’ISPF’或者’PDF’进入ISPF/PDF初始OPTION MENU. 它是TSO命令启动Application之一。主要功能是用菜单方式来使用TSO命令。 2.ISPF/PDF功能 --表示,编辑,编辑MACRO,MODEL --会话服务 --UTILITY --会话TEST,前台,后台 --TSO COMMAND,CLIST,REXX EXEC --LIBRARY管理功能 --SOFTWARE构成和LIBRARY管理程序(SCLM) (***LIBRARY:是指PDS 或者PDSE dataset)

ISPF/PDF的基本使用和参数设定 3.PF KEY功能 PF1/PF13 ß HELP功能 PF2/PF14 ß SPLIT功能 PF3/PF15 ß END功能 PF4/PF16 ß RETURN功能 PF5/PF17 ß REFIND功能 PF6/PF18 ß RECHANGE功能 PF7/PF19 ß UP功能 PF8/PF20 ß DOWN功能 PF9/PF21 ß SWAP功能(对应START COMMAND) PF10/PF22 ß LEFT功能 PF11/PF23 ß RIGHT功能 PF12/PF24 ß RETRIEVE功能 根据用户的要求,选择‘功能KEY->KEYLIST设定‘,功能可以重新设定。

ISPF/PDF的基本使用和参数设定 4.画面跳转选择功能 5.SCREEN MOVE,有效的移动量: 6.ISPF/PDF终了 在画面的COMMAND或者OPTION输入域上,使用’=功能号,功能号’形式,可以从当前操作画面转移到另一个操作画面。 5.SCREEN MOVE,有效的移动量: PAGE ←按页移动 DATA ←至少1行或者1位的画面移动 HALF ← HALF PAGE MAX ←到上端,下端,左端,友端的移动 CSR ← 根据当前光标位置的画面移动 6.ISPF/PDF终了 --END COMMAND(PF3/PF15) --RETURN COMMAND(PF4/PF16) --终了选择(‘X’)

ISPF的基本OPTION MENU

ISPF/PDF 表示和编辑功能 1.表示功能(OPTION ‘1’) (1)表示输入PANEL (2)DATA SET表示PANEL (3)MEMBER LIST表示PANEL (4)DATA表示PANEL (5)表示PANEL上的基本操作命令 .BROWSE :显示其它的DATA FILE :BROWSE [member] **按PF3 or END后,返回上一层PANEL .COLUMNS:列位置表示标识线(ON/OFF) .DISPLAY:控制符表示 .FIND :检索字符串(PF5=REFIND) FIND|F string [NEXT|ALL|FIRST|LAST|PREV] [col_1 col_2] [CHARS|PREFIX|SUFFIX|WORD] .HEX :十六进制DATA表示: HEX ON|OFF [VERT|DATA] .LOCATE :行位置指定(行定位) LOCATE|L line_number|label .RESET :清除标识行

ISPF/PDF 表示和编辑功能 2.编辑功能(OPTION ‘2’) (1)编辑输入PANEL (2)建立新文件 (3)编辑已存在的文件 .PROFILE名 .初始MACRO:在开始编辑之前,用能使用的编辑MACRO改变PROFILE中的IMACRO值 .LMF LOCK:指定是否加锁私有LIRARY中的DATA SET或者MEMBER .混合MODE:YES(可以显示DBCS DATA)/NO(不能显示DBCS DATA) (2)建立新文件 .在编辑新文件之前,一定先要分配一个新的空文件。 (3)编辑已存在的文件 .6位行命令域和72位DATA域 .行命令域的序号(UNNUM/NUM OFF/RENUM) .当前行的强调表示 .用空格表示不能被显示的文字 .被编辑的文件被放在临时的内存区中

ISPF/PDF 表示和编辑功能 (4)行COMMAND a. I -- 行插入 I [n] ← n是空行的行数 b. D -- 行删除 D [n] DD..DD c. R -- 行复制 R [n] RR..RR d. C -- 行拷贝 C [n] CC..CC ← 必须与基本COMMAND COPY/CREATE/MOVE或者行COMMAND A/B一起使用 e. M -- 行移动 M [n] MM..MM ← 必须与行COMMAND A/B一起使用 f. A -- COPY/MOVE的目的行指定,在A指定的行后插入 A [n] g. B -- COPY/MOVE的目的行指定,在A指定的行前插入 B [n]

ISPF/PDF 表示和编辑功能 h. O -- 行覆盖 i. ( -- 左移位(破坏性) j. ) -- 右移位(破坏性) O [n] ß 必须与行COMMAND C/M一起使用 OO..OO ***仅在目的行的空位置上被覆盖原行的DATA i. ( -- 左移位(破坏性) ( [n] ← n的缺省值是2; ((..((n j. ) -- 右移位(破坏性) ) [n] ; ))..))n ← n的缺省值是2 k. < -- 左移动(非破坏性) < [n] ← n的缺省值是2 <<..<<n ***DATA移动要受到BOUNDS值的限制 l. > -- 右移动(非破坏性) > [n] ← n的缺省值是2 >>..>>n

ISPF/PDF 表示和编辑功能 m. X -- 行除外,隐藏多行DATA,并用一标识行来表示 n. S -- 行除外的再表示 S [n] X [n] XX..XX ***在行除外的表识行上,可以使用D/C/M行COMMAND;如果在基本 COMMAND行上,使用DEL X ALL命令时,当前文件中的所有标识行除外的行都被删除,请参考DEL X..基本命令 n. S -- 行除外的再表示 S [n] o. F -- 行除外的最初行的表示 F [n] p. L -- 行除外的最后行的表示 L [n] q. COLS -- 列位置标识行 COLS r. MASK -- MASK定义 MASK s. BOUNDS -- 定义边境列 BOUNDS 边境值控制在DATA SET或者MEMBER中的哪些DATA可以接受其它行COMMAND/基本COMMAND/MACRO COMMAND的影响。(影响[>|<]行命令) t. TABS -- TAB的控制(用于快速移动CURSOR) TABS u. TE/TF/TS/LC/UC -- TEXT处理COMMAND

Data set 定义:数据集是逻辑上相关的数据集合 表现形式:源程序;宏库;处理程序使用的数据记录的文件 Upper Case Max 44 characters(加上member,则最多54) Max 22 segments Segment1.segment2.segment3…. Demo 每一个段为1-8个数字或字母字符,但必须以字母和@、#、$开头。数据集所有字符不超过44个(包括.) HLQ LLQ

Data set Name 经常使用的是三段名形式: project名.Group名.Type名 Project名:目标名,属于同一个目标的所有库的公共标识,通常对于每个用户,系统人员给定一个目标名 库名:标识同一个目标下的各个库,可自己定义 类型名:指出该库中内容的类型。可以是COBLOL,FORT,PLI;OBJ(目标模块);CLIST(TSO程序语言);TEXT(文本);DATA(数据); CNTL(JCL) 或者用户自己定义

Data Set Type 顺序数据集(SDS,Sequential Data Set) 其记录按物理顺序而不是按逻辑顺序组织的,磁带必须用这种数据组织,直接存储介质(如磁盘)可以选用这种数据组织 特点1: 记录是按照输入时的顺序存放,结尾有文件结束标记 特点2:只能按照先后次序逐个查找 记录1 记录2 记录3 记录… EOF

分区数据集(PDS/PO) Directory 包含member名字和地址 Member区域包含的是顺序的成员 Directory 由256字节的block组成 Directory从主分配中申请空间 目录

分区数据集(PDS/PO) 由几组相互独立的顺序组织 的记录构成不同的成员, 每个成员在一个目录中被记载。 在TSO环境中,每个库是已编目 的分区数据集 一个PDS可以划分成许多 被顺序组织的成员(member), 每一个成员有一个或多个记录。 数据集总是以存放成员名和该 成员在数据集的起始位置的目录 开始的。 一个PDS一般称为Library 一个PDS只能在一个卷上

分区数据集的特点 特点1: 特点2: 特点3: 特点4: 数据集中的成员名必须是唯一的 目录中的成员名是以字母升序排列 对单个的成员可以执行添加和删除操作 特点4: 一个被删除的成员将从目录中删掉,但它占用的空间不能被其他的成员所利用直到该数据集被重新组织。(可以使用IEBCOPY来压缩)

扩展分区数据集(PDSE) 近似于PDS,但PDSE的目录是可以根据存放成员的个数而变化的,目 录区的查找顺序为索引查找

VSAM数据集 VSAM数据集(Virtual Storage Access Method)是在虚拟存储器和树型数据结构的基础上,为了满足数据量大、存放速度快和维护方便的要求发展起来的一种文件形式 是程序与辅存数据文件之间的处理接口,是一种高效的存取方法。 不能由ISPF编辑

分配数据集的方法 利用Job Control Language 数据量大时使用 利用TSO命令 要记命令,界面不友好 利用ISPF面板 通常使用

用ISPF 3.2分配一个新的数据集

创建数据集时候常用的几个参数 Volume Serial:存放数据集的直接存取卷的卷号。 Space Units:为下列值之一: Track: 表示系统以磁道为单位分配空间 Cylinder:表示系统以柱面为单位分配空间 Block: 以块的长度作为空间分配的单位 KB ; MB Primary Quantity:初次为数据集所分配的空间的大小 Secondary Quantity:当初次分配值不足时,指定再次分配的空间的数量。

创建数据集时候常用的几个参数 Record Length:以字节为单位存放在数据集中的逻辑记录长度 Directory Blocks:指定在一个分区数据集中用来作为目录的长度为256字节的记录的数量。输入下列值之一: 对于顺序数据集,此值必须为0 对于分区数据集,块的大小为256字节 DIR = 1 可存放 5 个成员名,类推: = 2 可存放 10_12 个成员名, = 5 可存放 20_30 个成员名, = 10 可存放 50 个成员名, = 20 可存放 100 个成员名。 注:一个“成员名” ≤ 8 字符 Record Length:以字节为单位存放在数据集中的逻辑记录长度 Directory entries for members of an object library require the least space, since the member's name and its relative location in the data set are all that must be stored. Directory entries for load modules created by the linkage editor require more space: The system must include additional information for use at execution, such as the size of the module and the entry point address.

创建数据集时候常用的几个参数-RECORD FORMAT F-Fixed 一个物理块就是一个逻辑记录,block/record大小相同。很少使用 FB-Fixed Blocked 几个逻辑记录组成一个物理块常用于定长记录 V-Variable 一个逻辑记录对应一个物理block,每个记录前插入4字节的RDW,RDW包含记录长度加上4字节的RDW,很少使用 VB-Variable Blocked 几个不定长的逻辑记录(每个都有一个RDW)组成一个物理block,每个block的开头都有一个BDW U-Undefined In z/OS, there are no new line (NL) or carriage return and line feed (CR+LF) characters to denote the end of a record. Records are either fixed length or variable length in a given data set. When editing a data set with ISPF, for example, each line is a record. Traditional z/OS data sets have one of five record formats, as follows: F - Fixed This means that one physical block on disk is one logical record and all the blocks/records are the same size. This format is seldom used. FB - Fixed Blocked This means that several logical records are combined into one physical block. This can provide efficient space utilization and operation. This format is commonly used for fixed-length records. V - Variable This format has one logical record as one physical block. The application is required to insert a four-byte Record Descriptor Word (RDW) at the beginning of the record. The RDW contains the length of the record plus the four bytes for the RDW. This format is seldom used. VB - Variable Blocked This format places several variable-length logical records (each with an RDW) in one physical block. The software must place an additional Block Descriptor Word (BDW) at the beginning of the block, containing the total length of the block. U - Undefined This format consists of variable-length physical records/blocks with no predefined structure. Although this format may appear attractive for many unusual applications, it is normally used only for executable modules.

Block Size Block Size: 注意: 记录(record)是逻辑单位 块(block)是物理单位 存放在数据集中块的大小,也称为物理记录长度,用此值可以确定每一块中数据有多少字节。例如:记录的长度为80,块的大小为3120,则每一块中有39个记录. (0:tells z/OS to select an optimum value) 注意: 记录(record)是逻辑单位 块(block)是物理单位 对程序或文档类的数据集,块长不宜太大。 对大数据量的(如PS)数据集,块长大,I/O性能会好。 A logical record length (LRECL) is a unit of information about a unit of processing (for example, a customer, an account, a payroll employee, and so on). It is the smallest amount of data to be processed, and it is comprised of fields which contain information recognized by the processing application. Logical records, when located on DASD, tape, or optical devices, are grouped within physical records named blocks. BLKSIZE indicates the length of those blocks. Block Size (BLKSIZE) is the physical block size written on the disk for F and FB records. For V, VB, and U records it is the maximum physical block size that can be used for the data set. Logical Record Size (LRECL) is the logical record size (F, FB) or the maximum allowed logical record size (V, VB) for the data set. Format U records have no LRECL. Record Format (RECFM) is F, FB, V, VB, or U as just described.

分配一个顺序数据集:PS 分配一个PS所需要定义的 7 个参数: ① DSN= AP60.TEST.PS1 – 数据集名 ② UNIT=3390 - 在DASD上 ③ VOL=USER02 – 盘卷名 ④ SPACE=(TRK,(5,2)) – 首次量 5 TRKS,追加量 2 TRK, 共可以追加 15 次。 ⑤ RECFM=FB – 定长、分块 ⑥ LRECL=80 – 记录长 ⑦ BLKSIZE=800 – 块长(是记录长的整数倍) 如果:RECFM=F / LRECL=100 则:BLKSIZE=100

分配一个顺序数据集:PS Command ==>___________________________________________________________ Data Set Name . . . : AP50.TEST.PS1 Management class . . . Storage class . . . . Volume serial . . . . WORK61 (Blank for system default volume) Device type . . . . . (Generic unit or device address) Data class . . . . . . (Blank for default data class) Space units . . . . . TRACK (BLKS, TRKS, CYLS, KB, MB, BYTES or RECORDS) Average record unit (M, K, or U) Primary quantity . . 5 (In above units) Secondary quantity 2 (In above units) Directory blocks . . 0 (Zero for sequential data set) Record format . . . . FB Record length . . . . 80 Block size . . . . . 800 Data set name type : (LIBRARY, HFS, PDS, or blank) ……………………………….

分配一个分区数据集:PO 分配一个PDS所需要定义的 7 个参数: ① DSN= AP60.TEST.PDS1 – 数据集名 ② UNIT=3390 - 在DASD上 ③ VOL=USER02 – 盘卷名 ④ SPACE=(CYL,(2,1,10)) – 首次量 2 CYLS,追加量 1 CYL, 共可以追加 15 次。目录区=10 BLK(可存放约50个成员) ⑤ RECFM=FB – 定长、分块 ⑥ LRECL=80 – 记录长 ⑦ BLKSIZE=3200 – 块长(是记录长的整数倍) 如果 RECFM=F / LRECL=100 则 BLKSIZE=100

分配一个分区数据集:PO Command ==>___________________________________________________________ Data Set Name . . . : AP50.TEST.PDS1 Management class . . . Storage class . . . . Volume serial . . . . WORK61 (Blank for system default volume) Device type . . . . . (Generic unit or device address) Data class . . . . . . (Blank for default data class) Space units . . . . . CYLS (BLKS, TRKS, CYLS, KB, MB, BYTES or RECORDS) Average record unit (M, K, or U) Primary quantity . . 2 (In above units) Secondary quantity 1 (In above units) Directory blocks . . 10 (Zero for sequential data set) Record format . . . . FB Record length . . . . 80 Block size . . . . . 3200 Data set name type : (LIBRARY, HFS, PDS, or blank) ……………………………….

Working with Data set member PDS中没有member: 主选项菜单下,选2(Edit) 给出PDS数据集全名,然后给出要创建的member的名字 回车即可 或者 在3.4的DS列表中,在要添加成员的PDS前面输入e,名字后面输入(memName),回车即可 PDS中有member: 进入后,在成员选择菜单的命令行下,直接:s newmember即可 注意:回车则进入新的member的编辑屏幕,需键入内容或在命令行下键入save命令才可。否则不创建。

数据集操作 数据集地编辑命令包括: 编辑行命令: 编辑主命令: 单字符命令:用于独立的行,后面可跟一个数字,标识命令的重复执行次数; 双字符命令:用于行块。 编辑主命令: 控制用户编辑环境; 搜索和改变字符串; 将几个成员合并成一个成员或将一个成员分裂成两个; 提交作业; 将编辑过的数据集存贮或清除编辑过程中对数据的修改;

数据集操作-行命令 插入: I 重复:R 移动:M 拷贝:C 前: B 后: A 标识线:COLS 内容地显示于隐藏:X 文本处理:TE, TS,TF …

数据集操作-主命令 控制用户编辑环境的主命令(ON/OFF) PROFILE:显示当前的Profile文件 NUMBER:顺序号的生成和控制 RENUM:重新排列顺序号 AUTONUM:是否在保存数据时候,自动重新设定行号 AUTOSAVE:在输入END命令后,是否保存数据 CAPS:小写字符转换成大写 NULLS:控制在PANEL上行末的是BLACK OR SPACE. HEX:控制是否显示十六进制 RECOVERY:恢复控制,on表示用户可以通过undo命令取消上一次编辑操作。(undo取消上次编辑操作) 。。。

数据集操作-主命令 定位行的主命令LOCATE 寻找字符串主命令FIND(F5-Refind) 改变字符串的命令CHANGE(F6-Rechange) 合并成员的主命令COPY和MOVE: 分裂成员的主命令CREATE和REPLACE 排序命令SORT 编辑嵌套的主命令EDIT 提交作业的主命令SUBMIT: SUBMIT命令将正在编辑的数据集提交到后台批作业流进行处理。 保存数据集的主命令SAVE 取消编辑所做改变的主命令:CANcel (不保存退出) RESET:重置编辑器,可用来刷屏

Transfer DS between PC and Mainframe Many files (binary mode): XMIT XMIT nodename.userID DSN(‘te002.jcl.cntl’) outdsn(‘te002.jcl.xmit’) Receive receive indsn(DB.XMITBIN) DA('DSN810.DBRMLIB.DATA') VOLUME(USER02) Single file (text mode):FB TRANSMIT OR XMIT: to send messages, data sets, or both, to another user. The transmit command converts this data into a special format so that it can be transmitted to other users in the network. TRANSMIT/XMIT------address------DATASET/DSNAME (dataset) [MEMBERS(member,member…) NOTIFY/NONOTIFY SEQUENTIAL/PDS] …… address: the target users. EXAMPLE: xmit p390.te003 dataset(te002.jcl.cntl) members(job1a,job2a) notify 将TE002.JCL.CNTL中的job1a, job2a发送给p390机器上的te003用户. RECEIVE: 解包,与TRANSMIT对应.(接受,然后解压缩成原来格式的.

第三节 JCL语言简介 JCL基本概念 JOB语句介绍 EXEC语句介绍 DD语句介绍 JCL过程 JCL实用程序简介

基本概念 作业(Job)-用户在完成某任务时要求计算机所做工作的集合。 在大型服务器系统中,当用户需要使用计算机完成某项任务时,用户必须准备一个作业流(Job Stream),作业流中包含一个或多个作业。 作业控制语言JCL(Job Control Language)-用户与操作系统的接口。 用户通过JCL的相应语句与操作系统通讯,获得作业所需的资源,并按自己的意图来控制作业的执行。 JCL由几个语句组成,对于一个作业,JCL为被执行的任务引导操作系统,并注释所需要的全部I/O设备

作业的执行流程

基本概念 作业步-在一个作业中,每一次程序的执行就称为一个作业步。 一个作业可包含几个作业步,一般的,一个作业由以下相对独立的三步组成: (1)编译:把源程序语句(源模块)转换成目标模块; (2)链接编辑:把目标模块同子程序库中的其他程序链接起来得到可执行模块; (3)执行:运行可执行模块得到结果。 一个作业中的各步是顺序执行的,因此上一个作业步的输出可以作为下一个作业步的输入。

基本概念 不论单步作业还是多步作业都必须包含三个JCL基本语句(JCL Statement)。 作业语句(JOB):标识一个作业的开始,提供必要的运行参数。 执行语句(EXEC):标识一个作业步的开始,定义本作业步所要执行的程序或过程。 数据定义语句(DD):用于描述应用程序所需要的数据文件。

Example 下面我们来看一个多步作业的例子: //JOB1 JOB … //STEP1 EXEC … //DD1 DD … 作业步1 //INDD1 DD … 作业步2 //INDD2 DD … //

作业控制语句 在大型服务器系统中,作业控制语句有两种类型:一类是JES2控制语句;另一类就是JCL。 作业控制语言由九种语句组成,分别是三种基本语句:JOB,EXEC和DD。 六种附加语句: (1)/* 语句:表示流内数据结束或调用JES控制语句; (2)//*语句:注释语句,由第4到第80列写出注释内容; (3)//语句:空语句,用以标记一个作业的结束; (4)PROC语句:流内过程(IN-STREAM PROCEDURE)或编目过程(CATALOGED PROCEDURE)的起始标记。 (5)PEND语句:标志一个流内过程的结束。 (6)Command语句:操作员用这个语句在输入流中写入操作命令。

一般语句格式规范 标识符区 名字区 操作符区 参数区 注释区 // 名字 操作符 参数 说明 在JCL中,除/*语句外的所有语句均以第一、二列的//符号作为开始标志,系统规定这些语句的长度为80列。 这80列在逻辑上被划分为五个区域,分别是标识符区、名字区、操作符区、参数区和注释区,即: 标识符区 名字区 操作符区 参数区 注释区 // 名字 操作符 参数 说明

一般语句格式规范 标识符区: 名字区 操作符区 一般情况下,标识符区的符号为“//”,该符号表明该条语句为JCL语句,标识符区位于每条语句的第一、二列。 在特殊情况下,标识符区的符号可以是“/*”语句和“//*语句。 名字区 名字区指明一个语句,便于系统控制块或其他语句识别。名字可以由1~8个字母数字或通配符组成,但第一个字符必须是字母或通配符,且必须从第三列开始。 操作符区 操作符区位于名字区之后,规定了语句的类型:JOB、EXEC、DD、PROC、PEND,或操作员命令。 名字区后必须跟一个或多个空格。例如: //EXAMPLE JOB //STEP1 EXEC //INDD1 DD

一般语句格式规范 参数区 注释区 参数区在操作符区之后,其中包括位置参数和关键字参数。参数区没有固定的长度及列的要求。例如: //EXAMPLE JOB 2000,CLASS=A //STEP1 EXEC PGM=IEYFORT //PRINT DD SYSOUT=A 注释区 注释区位于参数区后,用于对相应语句进行注释说明,它可以是任何需要的注释信息,注释区后必须跟一空格。需要注意的是,仅当参数出现时才能书写注释信息,不然容易与参数混淆。下面是一个注释区的例子: //EXAMPLE JOB ,CLASS=A IT IS A COMMENT 注释区较少使用,使用发生混淆

关于续行的说明 JCL只允许在参数区和注释区有续行,当需要续行时,在当前行的第71列前必须将某个参数或某个子参数以及参数后的逗号写完整,且下一行第1、2列为“//”,第3列为空格,续行的内容只能从4~16列开始,如从16列后开始,将被认为是注释语句。下面是一个续行的例子: //DATA DD DSN=SYS1.FORTLIB, // DISP=OLD

参数规则 在JCL中,参数区内的参数的类型分为两类: 注意: (1)位置参数(positional):参数的含义与它在各个参数中的前后顺序有关,当位置参数有子参数时,子参数也必须按顺序排列在圆括号内,位置参数之间以及子参数之间用逗号分隔。 (2)关键字参数(keyword):由一个关键字和等号后面的可变数据组成。 注意: 1.位置参数和关键字参数之间必须用逗号分开,不允许有空格。 2.所有的关键字参数必须位于位置参数之后,而所有位置参数也必须按规定排列。 3.当缺省某个位置参数或某个子参数时,应以一个逗号指明所在位置。当缺省最后一个位置参数时,逗号可以省略

JCL语法实例 作业语句 //EXPJOB JOB ,’USERNAME’,MSGLEVEL=(1,1), 作业语句续行 // MSGCLASS=Q,CLASS=A //********************** 注释语句 //* IT IS A EXAMPLE * 执行语句 //STEP1 EXEC PGM=IEFBR14 DD语句 //DD1 DD DSN=MJSN.TEAM01.ONE,DISP=(,CATLG), DD语句续行 // SPACE=(TRK,(5,2)), UNIT=SYSDA DD语句 // DD1 DD DSN=MJSN.TEAM01.TWO,DISP=(,KEEP), DD语句续行 // SPACE=(TRK,(1,1)), UNIT=SYSDA

JOB语句

JOB语句 1、JOB语句标志一个作业的开始。 2、JOB语句决定了JCL的执行方式。 在MVS中,JCL有两种执行方式:batch jobs和started jobs方式。 Batch jobs 由JES 管理。 Started jobs:由start 命令提交,主要运行一些需要反复执行的程序。Eg:在系统ipl之后,马上运行等。

作业名-JOB NAME 1、JOB NAME 必须唯一 2、必须从第三列开始 3、不超过8个字符 4、第一个必须是字符或者通配符 作业名是用户给作业指定的名字,为使操作系统识别作业,必须选择合适的作业名字,由于系统不能同时运行具有相同名字的作业,因此只能给作业一个唯一的名字。 一般来说,建议用户采用“用户标识USERID+数字或字符”的作业名,例如用户标识为JACK,则作业名可用JACKA(也是出于安全控制的考虑)。

作业名-JOB NAME

JOB-参数 JOB语句包含两类参数: 位置参数 关键字参数 任何参数的书写错误都会导致JCL ERROR. 一旦出现JCL ERROR,系统会结束JCL 的执行. JOB语句参数使用较少,甚至一个JCL我们可以不写JOB语句,会自动产生一个默认的。 一般情情况下,JOB语句都差不多。 因此这里不详细介绍JOB语句。

EXEC语句 EXEC(execute)语句: 1、标志要执行的程序(PGM)或者过程 (CATALOG PROC ,IN-STREAM PROC), 2、标明作业或过程中的每一作业步的开始, 并告知系统如何执行该作业步。 3、一个作业最多可以有255个作业步,包括所有 在EXEC语句中调用的过程中的所有作业步。 4、每个作业步必须有EXEC语句。 EXEC语句格式如下: //[作业步名] EXEC 位置参数[,关键字参数]…[符号参数=值]… [注释]

作业步名 1、作业步名不要求唯一 2、必须从第三列开始 3、不超过8个字符 4、第一个必须是字符或者通配符 5、作业步名后面必须接一个空格

操作符区 操作符区: EXEC(EXECUTE) 后面至少接一个空格 对于EXEC的起始位置系统没有要求

位置参数 EXEC语句中的位置参数有两个: PGM PROC 每条EXEC语句必须有且仅有一个位置参数。 PGM:作用:用于指明所要执行的程序名(如用户编写的 COBOL程序)。 调用方法:直接调用和间接调用 PROC:指明作业步所要运行的过程名。 格式: {PROC=procedure-name} or {procedure-name }

DD语句 数据定义语句(DD语句): 1、用于定义一个数据集 2、描述该数据集所需的输入输出资源,所谓输入输出,一般是真对EXEC语句所调用的程序而言,即指定作业步中所调用的程序的输入输入。 格式: //[dd名] DD [位置参数][,关键字参数]… [注释]

DD语句 在一个作业步内可以有多个DD语句,但每个DD语句的dd名在本作业步中应该是唯一确定的。

DD语句 DD语句的三个位置参数: (1)“*” for data sets containing no JCL DATA: (2)“DATA” for data sets containing JCL begins an in-stream data set. (3)“DUMMY” Specifies no space allocation, no disposition processing, and, for BSAM and QSAM, no I/O.

DD语句参数 1.参数 “*” 参数“*”用于开始一个流内数据集。 数据记录跟在“DD”语句之后, 其第一、二列不能是“//”或“/*”; 1.参数 “*” 参数“*”用于开始一个流内数据集。 数据记录跟在“DD”语句之后, 其第一、二列不能是“//”或“/*”; 该记录可以是任何编码(EBCDIC)。

DD语句参数 下列符号表明流内数据记录的结束: 输入流中的“/*”; 表示另一个JCL语句开始的“//”。

DD语句-参数“DATA” 功能: 用作一个流内数据集的开始 该流内数据集里可以含有以“//”开头的语句 该数据记录可以是任何编码(EDCBIC) 数据记录将以“/*”作为结束或者由DLM参数指定的结束标记结束。 格式: //dd名 DD DATA [,参数]… [注释]

EXAMPLE

DD语句 格式: //dd名 DD DUMMY [,参数]… 3.参数“DUMMY”: DUMMY参数用于标明: 没有设备或外存空间分配给该数据集 对该数据集不进行状态处理 格式: //dd名 DD DUMMY [,参数]…

DD语句 用途1: 用户使用DUMMY参数对程序进行测试。 当测试完成时,如果用户希望恢复对数据集的输入输出操作时,只需将DD DUMMY参数替换成完整的数据集定义DD语句; 例1. //OUTDD1 DD DUMMY, // DSNAME=X.X.Z,UNIT=3390, // SPACE=(TRK,(10,2)),DISP=(,CATLG) 本例中DD语句“OUTDD1”定义了一个空数据集。该语句中除DUMMY以外的参数将接受系统语法检查但并不起作用。

DUMMY 用途2: DUMMY的另一个用途是在编目或流内过程中。 为DUMMY写入相应的参数。当调用该PROC的STEP中的DD中DSNAME与DUMMY中定义的相同时,该DUMMY无效。 书写DUMMY时注意: 如果书写VOLUME=REF=或DCB=dsname这个dsname必须是CATALOG的。否则,作业会被中断。 由于DUMMY不要求有I/O,故对数据集的一些参数,系统只是检查语法错误,如果为该数据集分配系统设备(UNIT),合法的书写会被系统忽略,不合法的书写会导致系统中断作业。

DD语句 例 //STEPA EXEC PGM=FILL //DD1 DD DSNAME=SWITCH.LEVEL18.GROUP12, // UNIT=3350,VOLUME=SER=LOCAT3, // SPACE=(TRK,(80,15)),DISP=(,PASS) //STEPB EXEC PGM=CHAR //DD2 DD DSNAME=XTRA,DISP=OLD //DD3 DD DSNAME=*.STEPA.DD1, // DISP=(OLD,PASS,DELETE) //STEPC EXEC PGM=TERM //DD4 DD DSNAME=*.STEPB.DD3, // DISP=(OLD,CATLG,DELETE)

DD语句 DD语句DD1定义了一个新的数据集并指定这个数据集将被传递给后续的作业步。如果作业步STEPA非正常结束,这个新创建的数据集将会被删除。 在作业步STEPB中的DD语句DD3将会接收从上一个作业步中传递过来的数据集并将这个数据集传递给后续的作业步。如果STEPB非正常结束,根据DISP的第三个子参数这个数据集也将会被删除。 在作业步STEPC中的DD语句DD4将会接收从上一个作业步中传递过来的数据集并在作业步正常结束后将数据集编目,同样如果STEPC非正常结束则数据集被删除。 在DD语句DD2中指定了一个已存在的数据集XTRA,根据DISP参数可以知道无论STEPB正常结束与否该数据集都将会被保存。

Utilities 主机的utilities是为完成日常工作而做好的应用程序。 基本上系统中的utilities都是IBM提供的。 也有一些应用程序是由一些软件公司提供的。 比如: Syncsort,在完成排序任务是,比IBM提供的utilities速度快,而且价格便宜。 分类: 系统公用程序: 数据维护公用程序:以IEH开头,系统维护 独立公用程序(用户实用程序):对DS进行操作,以IEB开头

Utilities IEBCOMPR 用于在两个顺序数据集,分区数据集的逻辑记录间进行比较。 可以对数据集或者数据集的成员的定长、变长、组块、非组块或未定义记录进行比较。 顺序数据集: 两个数据集记录数相同 相应的记录和关键字也相同 分区数据集 相关目录和数据区完全相同 相关成员含有相同的记录 相关成员内注释列表的位置相同 上面所举完全相同,则两个数据集相等

IEBCOMPR 控制语句:

IEBCOMPR //ST100I JOB …… //STEP1 EXEC IEBCOMPR //SYSPRINT DD SYSOUT=* //SYSUT1 DSN=ST100.IEBCOM.ONE,DISP=SHR //SYSUT2 DSN=ST100.IEBCOM.TWO,DISP=SHR //SYSIN DD * COMPARE TYPORG=PS /*

IEBCOPY 用于拷贝或合并多个分区数据集或扩展分区数据集。 可以将分区数据集备份到一个顺序数据集里面

IEBCOPY 控制字符说明: COPY:指明COPY操作的开始 LABEL COPY OUTDD=DDNAME ,INDD=DDNAME ,LIST=YES|NO OUTDD:指明输出的分区数据集的名字。 INDD:指定输入的分区数据集 LIST:指出是否将拷贝的成员名列在SYSPRINT数据集中

IEBCOPY ALTERMOD:指明加载模块变更的开始。 LABEL ALTERMOD OUTDD=DDNAME LIST=YES|NO SYSPRINT数据集中 COPYMOD:指明对拷贝和加载模块重新组块的操作。 LABEL COPYMOD OUTDD=DDNAME ,INDD=DDNAME ,MAXBLK=nnnnn,nnK ,MINBLK =nnnnn,nnK ,LIST=YES|NO

IEBCOPY OUTDD:指定加载模块要拷贝到那个分区数据集。 INDD:指定输入数据集名。 MAXBLK/MINBLK:指定输出分区数据集记录的最大或者最小值 LIST:指出是否将拷贝的成员名列在 SYSPRINT数据集中

IEBCOPY SELECT:确定输入数据集中要拷贝的成员 LABEL SELECT MEMBER=(name| (name1,newname1,R)… name:要拷贝的数据成员名。 newname:确定拷贝输出的成员名。 R:如果输出成员名已经存在,想要覆盖,设置R参数。 EXCLUDE:确定输入数据集中不被拷贝和不被加载的成员。 label EXCLUDE MEMBER=(name1,name2…)

IEBCOPY

IEBCOPY

IEBCOPY

IEBCOPY 拷贝,替换被选择的数据成员

IEBCOPY

IEBCOPY

IEBCOPY

IEBGENER 功能: 建立数据集(PS,PDS) 从顺序数据集产生分区数据集 为分区数据集添加新的成员 打印数据集

IEBGENER

IEBGENER

IEBGENER

IEBGENER 控制语句: GENERATE:指明成员和别名数,记录标识符、文字及控制数据集中的编辑信息。

IEBGENER

IEBGENER MAXNAME=n 指定后续控制语句中可以出现的member的最大的个数。 当出现MEMBER控制语句时,必须有MAXNAME控制语句 N=(1-3276) MAXFLDS=n 指定后续控制语句RECORD中可以出现的FIELD参数的个数。 当RECORD出现FIELD时,必须有MAXFLDS控制语句。 N=(1,4096)

IEBGENER MAXGPS=n 指定后续控制语句RECORD中可以出现的IDENT OR IDENTG参数的个数。 当RECORD出现IDENT OR IDENTG时,必须有MAXGPS控制语句。 N=(1-2520)

IEBGENER MEMBER: 当输入是PDS时,由MEMBER指定成员名和别名。

IEBGENER RECORD:定义将处理的记录组并提供编辑信息。

IEBGENER length:指定输入数据记录长度,默认80 Input-location:指明要处理的记录的起始位置 conversion:指定转换的类型 output-location:指明输出记录的起始位置。

IEBGENER

IEBGENER

IEHLIST IEHLIST用于系统信息列表,其中包括分区数据集目录列表,VTOC列表以及编目列表等。

IEHLIST

IEHLIST

DFSORT 用于数据排序

DFSORT 控制语句: SORT FIELD=(start_position, length,data format, sequence) Sequence:指定升序(A)或者降序(D)

DFSORT PGM=SORT PGM=IECMAN SORT是IECMAN的别名。 当运行该Utility时,系统执行的也是DFSORT

DFSORT //STEP1 EXEC PGM=DFSORT //SYSIN DD * SORT FIELDS=(1,10,CH,A) //SORTIN DD DSN=TEST.LOG,DISP=OLD //SORTOUT DD DSN=SORT.LOG, // DISP=(NEW,PASS) //SORTWK1 DD UNIT=SYSDA, // SPACE=(CYL,1)

DFSORT SORT FIELD=(21,2,CH,A,2,13,CH,A)

Thank You www.themegallery.com