IBM主机技术一本通
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

4.2 MVS命令

MVS是多路虚拟存储(Multiple Virtual Storage)的缩写,MVS是为IBM主机或兼容机开发的操作系统。主机是专门为世界上最重要的公司设计的,它能帮助这些公司同时处理成千上万的客户交易。MVS是最复杂的操作系统,是20世纪70年代由IBM公司开发的,目的是为了满足世界上顶级公司的处理要求。

在引领主机操作系统35年后,MVS推出了新的版本即OS/390和最近推出的0S/390的升级版z/OS。尽管z/OS包含了很多新的产品,但依然沿用了MVS操作系统的内核,因此,下面介绍的这些MVS命令在z/OS下依然是有效的。

4.2.1 DISPLAY JOBS显示当前正在运行的作业、TSO用户和STC任务

命令DISPLAY JOBS(or J or A or TS)显示系统当前正在活动的作业、TSO用户和已启动任务的信息。

4.2.1.1 显示当前正在运行的作业、TSO用户和STC任务

命令D A,L显示MVS系统中已经活动的系统服务。图4.33是命令执行后的界面。从下图中,我们可以看出,我们的TSO服务已经可以为你提供服务了。同样地,我们还可以看到一些我们熟悉的系统服务,包括JES2、VTAM、SDSF和RACF等。

图4.33 命令D A,L执行后的结果

4.2.1.2 显示TSO用户IBMUSER的详细信息

命令D TS,IBMUSER显示的是TSO用户IBMUSER的详细信息。图4.34是命令执行后的结果。从图中我们可以看到,用户IBMUSER运行于地址空间0041上,已经LOGON到系统36分28秒(Elapsed Time)。

4.2.1.3 显示所有IBMUSER用户提交的交易

命令D J, L,USERID=IBMUSER用来显示IBMUSER提交的所有作业的信息。图4.35是命令提交后的显示界面。

图4.34 命令D TS,IBMUSER执行后的结果

图4.35 命令D J, L,USERID=IBMUSER执行后的结果

4.2.2 Display Request显示控制台上没有回答信息的总数

Display Request命令用来显示主控台上需要操作员干预的系统信息。

4.2.2.1 显示控制台上没有回答信息的总数

命令D R用来显示当前系统中系统回答的信息。图4.36是系统执行后的结果。其中的信息有:

● 需要操作员回答的信息为2个,即RM=2。RM表示Reply Messages。

● 高亮需要采取行动的信息为3个,即IM=3。IM表示Immediate action Messages。

● 无CEM信息。CEM表示Critical Eventual action Messages,即高亮,关键事件发生后的结果信息,需要采取行动。

● EM信息为3。EM表示Eventual action Messages,即事件发生后的结果信息,非高亮。

4.2.2.2 查询未回答信息的作业名

如果你想知道是哪些作业出了高亮信息需要操作员干预,可以使用命令D R,L。其中L表示LONG,即显示命令的详细信息。图4.37是命令执行后的结果,从中我们可以看到,一个有3个作业分别是STC00036(CICSACB2)、JOB00038(IBMUSERB)和JOB00037(IBMUSERA)出现了高亮信息,需要操作员回答。

图4.36 命令D R执行后的结果

图4.37 命令D R,L执行后的结果

4.2.2.3 显示以IBM开头的作业的未回答信息

你可以选择按照某些条件显示发出高亮信息的作业,比如,如果我们只想查看作业名是以IBMU开头的作业发出的高亮信息,可以使用命令D R,L,JOB=IBMU*,其中,星号(*)是通配符。图4.38是命令执行后的结果,我们可以看到,这次只显示了JOB00037和JOB00038,它们的作业名都是以IBMUSER开头的。

图4.38 命令D R,L,JOB=IBMU*执行后的结果

4.2.3 DISPLAY SMF显示系统中的SMF配置

IBM的系统管理工具(System Management Facility——SMF)是IBM z/OS主机操作系统的一个组成部分,它提供了一套标准的文件管理方法来管理文件的输入输出。SMF提供了一套完整的指令系统管理运行于主机操作系统上的基本活动,包括输入输出(I/O)、网络活动、软件使用、错误状态和处理器使用率等。

你可以使用DISPLAY SMF命令在你的系统中来显示使用SMF数据。

4.2.3.1 显示系统中的SMF配置、使用的文件及每个文件的使用百分比

命令D SMF用来显示当前使用的SMF配置信息。图4.39是命令执行的结果,从中我们可以看到,当前系统中一共有3个SMF文件,它们的名字分别是P-SYS1.MAN1/MAN2/MAN3,它们都在卷DMTCAT上,目前只有文件P-SYS1.MAN1是活动的,它一共分配了9000个块,目前已经用来66%。其他两个文件还没有使用。

4.2.3.2 显示SMF的当前配置情况

命令D SMF,O用来显示SMF当前的配置情况,其中O表示OPTION。图4.40是命令执行后的结果的一部分。系统会将当前配置的各个成员(Member)的名字及它们的定义系统参数逐个显示出来。

图4.39 命令D SMF执行后的结果

图4.40 命令D SMF,O显示结果的一部分

4.2.4 DISPLAY CONSOLES显示控制台MASTCONS上的详细信息

你可以使用DISPLAY CONSOLES命令显示系统中所有或特定控制台(Consoles)的状态。

4.2.4.1 显示控制台MASTCONS上的详细信息

命令D C,CN=MASTCONS用来显示主控台MASTCONS的当前状态。图4.41是命令执行后的结果,从中可以看到,目前有一条信息需要操作员回答(REPLY:CURR=1),系统可以允许的最大信息数为3000。

图4.41 命令D C,CN=MASTCONS执行后的结果

4.2.4.2 查询主控台未回答信息的个数及系统可容许的总数

命令D CONSOLES,BACKLOG显示系统中所有主控台的信息,尤其是未处理的WTO(Write to Operator)信息。如图4.42所示的界面是一个命令执行后的例子。

在这个例子的输出中,我们看到第2行的信息:CURR=1356 LIM=1500 RPLY:CURR=1 LIM=10 SYS=1 PFK=NONE。在这一行中,信息CURR=1 LIM=1500告诉我们WTO缓冲区当前的使用情况和指定的最大数(Limit)。信息RPLY:CURR=1356 LIM=1500告诉我们已经显示并等待操作员干预的WTOR信息的数量及系统允许的最大数。这一行的信息告诉我们,未回答信息已经超过了系统允许的WTO缓冲区最大值的80%。系统允许的WTO缓冲区的最大数是1500,而现在的未回答信息到了1356。

下图的信息也显示了NBUF,即在每个Console上排队的缓冲区的个数。在这个例子中,第12号控制台的NBUF的值为1217,即有1217条信息在缓冲区中。它是问题的根源。系统定义的缓冲区最大数1500应该是足够大的,可能的问题是有作业出现了问题并不停地往主控台12上写信息。

图4.42 命令D CONSOLES,BACKLOG执行后的结果

4.2.5 DISPLAY M显示当前系统设备的配置信息

命令DISPLAY M用来显示系统处理器、通道路径、中央存储器、磁盘及其他硬件设备的当前配置状态。

4.2.5.1 显示当前系统的所有设备的配置信息

命令D M=DEV,ALL用来显示系统中所有硬件设备的配置情况。图4.43是命令执行后的结果的一部分。从下图中我们可以看到,系统一共定义了8个处理器,目前只要处理器0在联机工作。

图4.44显示的是系统中定义的磁盘的联机情况,从中可以看到,磁盘01C0到01CE都是ONLINE的,但磁盘01CF则是OFFLINE的。

图4.43 命令D M=DEV,ALL显示信息的一部分

图4.44 系统中定义的磁盘的联机情况

4.2.5.2 显示设备01C0的状态信息

命令D M=DEV(01C0)显示特定设备01C0的状态信息,图4.45是命令执行后的结果。从中我们可以看到,设备01C0当前是联机的(STATUS=ONLINE),它接在通道路径(Channel path——CHP)01上。

图4.45 命令D M=DEV(01C0)执行后的结果

4.2.6 DISPLAY OPDATA显示操作员信息

命令DISPLAY OPDATA用来显示操作员需要的信息,其中最常用的是知道每个子系统的前缀。命令D O,PREFIX用来显示当前系统中的操作员信息。图4.46是命令执行后的结果,其中我们可以看到,JES2的前缀为$,而DB2(DSNAMSTR)的前缀则为@。这样,当我们在主控台上输入JES2命令时,第1个字符就必须输入$,这也是我们为什么在前面介绍JES2命令之前输入$的原因了。

图4.46 命令DISPLAY OPDATA执行后的结果

4.2.7 DISPLAY ASM显示系统中的PAGE数据集的信息

虚存管理器(Auxiliary Storage Manager,ASM)的页面控制程序总是试图使用各种算法使得系统中的输入输出负载尽可能均匀地分布以达到输入输出效率最大化的目的。此外,它也会在特定类型的页面空间短缺的情况下存取各种方法,仍然保持系统运转。

你可以使用DISPLAY ASM命令了解系统当前正在使用的页面数据集的情况。你既可以显示系统中的所有页面数据集的情况,也可以只看某个特定页面数据集的情况。

图4.47是命令D ASM执行后的界面,从中我们可以看到,系统目前一共定义了3个页面数据集,它们的名字分别是PAGE.DEMOPKG.PLPA/COMMON/LOCAL,它们全部都存放在设备(DEV)01C1上,它们的状态都是OK,而它们的使用百分比分别是58%、34%和31%。

图4.47 命令D ASM执行后的结果

4.2.8 DISPLAY U显示直接存取设备的信息

命令DISPLAY U可以让你了解连接到系统中的各类设备的状态(如是否可用等)。该命令可以让你了解。

● 所有设备的状态。

● 某类设备的状态。

● 联机(Online)设备的状态。

● 脱机(Offline)设备的状态。

● 设备上运行的作业名和地址空间标识(ASID)。

● 某一段设备的状态。

● 自动切换设备的状态。

命令D U,DASD显示系统的直接存取设备(DASD)的状态。从图4.48中可以看到,我们的系统中目前有直接存储器设备01C0到01CF,它们的设备类型都是3390,其中设备01C0到01CE是可用的,这从它们的状态(Status)可以看出来,每个设备都有一个卷名(Volser)。设备01CF目前没有定义,所以系统没有卷名分配给它。

4.2.9 DISPLAY DUMP显示DUMP数据集的信息

你可以使用DISPLAY DUMP命令以了解。

● 预先分配或自动分配的DUMP数据集的可用性。

● 当前生效的DUMP的模式和选项。

● 自动生成的DUMP数据集的命名规则。

命令D D,S显示系统中的DUMP数据集,图4.49是命令执行后的结果。从中我们可以看到,DUMP数据集一共分配了500MB(Space Free),目前的DUMP数据集是空的(Space Used),即系统中没有任何DUMP出现。现在系统自动分配DUMP数据集的机制是激活(Active)的,即当系统中出现任何DUMP时,系统会及时分配新的DUMP数据集。系统命名DUMP数据集的模式是:SYS1.DUMP.D日期.T时间.子系统名.S序号。目前系统没有为新建的DUMP数据集指定任何卷名,而是在建立DUMP数据集时临时确定的。

图4.48 命令D U,DASD执行后的结果

图4.49 命令D D,S执行后的结果

4.2.10 DISPLAY GRS监测资源争用状况

命令DISPLAY GRS用来显示系统中资源的争用信息。

4.2.10.1 显示资源争用(Contention)信息

D GRS,C将显示资源争用(Contention)信息,图4.50是命令执行后的结果。从中我们可以看到,目前系统没有出现资源争用的情况。

4.2.10.2 显示等待某资源的作业

如果你在提交一个作业后,系统一直没有反应,既没有返回出错信息,也没有执行结果回来,通常是某些作业需要的资源被其他作业占用了。如果你有经验,通常从主控台可以看到类似于下面的信息说明你的作业需要暂时不可用。

*07.38.06 DEMOPKG JOB00035 *IEF099I JOB IBMUSERA WAITING FOR DATA SETS

如果你想知道到底是谁占据了你需要的资源,就可以使用D GRS,C命令来查询。图4.51是命令执行后的显示结果。从中我们可以看到,作业IBMUSERA需要的资源(IBMUSER.TEST.BKTRAN)现在被用户IBMUSER独占(Exclusive)了,所以作业IBMUSERA不能继续执行下去。

图4.50 命令D GRS,C显示的结果

图4.51 命令D GRS,C执行后的结果

4.2.10.3 显示某一特定资源的使用情况

如果想显示某一特定资源的使用情况,可以使用命令D GRS,RES=(QNAME,RNAME),其中,RES表示资源(Resource),QNAME表示资源队列,可以用星号(*)代表所有的资源队列,RNAME表示资源的名字,也可以用星号(*)来代表。

D GRS,RES=(*,IBMUSER.TEST.BKTRAN)将显示数据集IBMUSER.TEST.BKTRAN的分配情况。用户可以用星号(*)来代替QNAME或RNAME,但有可能产生大量的控制台显示信息。图4.52是命令执行后的结果,从中我们可以看到,资源(文件)IBMUSER.TEST.BKTRAN被4个作业使用,其中,IBMUSER在独占,而其他三个作业需要共享它。

图4.52 D GRS,RES=(*,IBMUSER.TEST.BKTRAN)命令执行后的结果

4.2.10.4 DEVSERV查看NON-SMS管理的卷

DEVSERV命令用来查看直接存储设备(DASD)和磁带设备的状态。命令DS S,01C0,16可以查看系统中从01C0开始的16个直接存储设备的状态。下面显示的是命令执行后的结果,我们可以从中看到,设备01C0到01CC都是由SMS管理的,而01CD到01CF则不是由SMS管理的。

        IGD001I 09:47:48 DEVSERV SMS 967
         UNIT DTYPE  M VOLSER VOLSTAT      STORGRP  SGSTAT
         01C0,33903 ,A,DMTRES,STRG/RSDNT,  VOLUME NOT MANAGED BY SMS
         01C1,33903 ,A,DMTCAT,STRG/RSDNT,  VOLUME NOT MANAGED BY SMS
         01C2,33903 ,A,DMTOS2,ENABLED      OSGROUP ,ENABLED
         01C3,33903 ,A,DMTOS1,ENABLED      OSGROUP ,ENABLED
         01C4,33903 ,A,DMTD01,ENABLED      DMGROUP ,ENABLED
         01C5,33903 ,A,DMTD02,ENABLED      DMGROUP ,ENABLED
         01C6,33903 ,A,DMTD03,ENABLED      DMGROUP ,ENABLED
         01C7,33903 ,A,DMTD04,ENABLED      DMGROUP ,ENABLED
         01C8,33903 ,A,DMTP01,ENABLED      PRIMARY ,ENABLED
         01C9,33903 ,A,DMTP02,ENABLED      PRIMARY ,ENABLED
         01CA,33903 ,A,DMTOS3,ENABLED      OSGROUP ,ENABLED
         01CB,33903 ,A,DMTP03,ENABLED      PRIMARY ,ENABLED
         01CC,33903 ,O,DMTW01,ENABLED      WRKGROUP,ENABLED
         01CD,33903 ,O,DMTY01,PRIV/RSDNT,  VOLUME NOT MANAGED BY SMS
         01CE,33903 ,O,DMTY02,PRIV/RSDNT,  VOLUME NOT MANAGED BY SMS
         01CF,3390  ,F,     ,   /RSDNT,  VOLUME NOT MANAGED BY SMS
        ***************************** LEGEND *****************************
        A = ALLOCATED                         F = OFFLINE
        M = MOUNT PENDING                     N = NOT ALLOCATED
        O = ONLINE                            P = PENDING OFFLINE
        Note: Tape device type is not supported by DEVSERV SMS