标签: zos

为什么大型机greybeards将DB2/zOS称为"他"?

如果您向DB2/zOS引擎DBA询问有关DB2行为的问题,那么DBA会将DB2引擎称为"他",就像水手使用"她"来引用他的船一样.

例如:"一旦你填充了自由空间,DB2仍然希望在表空间中以簇的顺序保留这些行.这就是为什么他将该页面分成两半,你最终得到了很多半空页面.也就是说,除非您刚插入的行的群集键是表中最高的,在这种情况下,他会创建一个新的空页,并且只将您的新行放入该页面.所以我不必这样做REORG如果你只是像我建议的那样对你的输入进行排序."

有谁知道这个传统来自哪里?

db2 mainframe zos

3
推荐指数
1
解决办法
469
查看次数

COBOL将0添加到COMPUTE中的变量

在使用$ WORK处理COBOL程序时,我遇到了一个奇怪的声明.

我们有一个段落打开游标(来自DB2),并在它上面循环直到它到达EOT(在伪代码中):

... working storage ...
01  I                       PIC S9(9) COMP VALUE ZEROS.
01  WS-SUB                  PIC S9(4) COMP VALUE 0.

... code area ...
PARA-ONE.                                                
    PERFORM OPEN-CURSOR
    PERFORM FETCH-CURSOR

    PERFORM VARYING I FROM 1 BY 1 UNTIL SQLCODE = DB2EOT                        
        do stuff here...
    END-PERFORM                                           

    COMPUTE WS-SUB = I + 0                            
    PERFORM CLOSE-CURSOR

    ... do another loop using WS-SUB ...
Run Code Online (Sandbox Code Playgroud)

我想知道为什么那条COMPUTE WS-SUB = I + 0线在那里.我的理解是,I至少总是如此1,因为它上面的执行块(即,即使有一个EOT开始,I也会在初始迭代时设置为1).

COMPUTE条线甚至需要吗?它是否正在做一些我不知道的隐式演员?它为什么会在那里?你为什么不MOVE I TO …

db2 cobol zos

3
推荐指数
1
解决办法
2359
查看次数

ISPF面板REXX中是否提供ISPEXEC服务?

这是ISPF面板定义:

)BODY
 Hello, world!
)PROC
*REXX
ADDRESS ISPEXEC "CONTROL ERRORS CANCEL"
*ENDREXX
)END
Run Code Online (Sandbox Code Playgroud)

面板显示正常,但是嵌入的REXX立即失败:

*-*  ADDRESS ISPEXEC "CONTROL ERRORS CANCEL"
+++ RC(-3) +++
Run Code Online (Sandbox Code Playgroud)

返回代码-3通常意味着命令环境不知道如何处理该命令。

ISPF专家组能够应付ISPF的请求似乎是合理的。知道发生了什么吗?

mainframe panel rexx zos ispf

3
推荐指数
1
解决办法
543
查看次数

更改在z/OS USS中运行的REXX exec中的目录?

我在TSO下的USS shell中,我有这个exec(名为tryit):

/* rexx */
"cd /differentdir"
"pwd"
Run Code Online (Sandbox Code Playgroud)

这是结果:

> pwd
/origdir
> tryit
/origdir
Run Code Online (Sandbox Code Playgroud)

换句话说,cd命令的效果似乎仅持续命令本身的持续时间.有没有办法让REXX exec以一种可在以下命令中识别的方式更改工作目录?

rexx zos chdir uss

3
推荐指数
1
解决办法
451
查看次数

查看IBM的Enterprise COBOL编译器生成的代码

我最近开始用COBOL做一些工作,之前我只在大型机上的z/OS汇编程序中完成了工作.

我知道COBOL将被翻译成大型机的机器代码,但我想知道是否可以看到生成的代码?

我想用它来更好地理解COBOL的工作原理.

例如,如果我要编译COBOL程序,我希望看到编译产生的程序集.这样的事情可能吗?

cobol mainframe zos

3
推荐指数
1
解决办法
723
查看次数

删除z/OS USS中的PDS成员?

有没有办法删除z/OS USS中的PDS成员而不在整个PDS上获得ENQ?我试过"删除",但它抱怨数据集争用.

mainframe zos

3
推荐指数
1
解决办法
431
查看次数

使用清除密钥进行3DES加密

我正在尝试使用以下界面编写Cobol程序:

目的

接收明确的加密密钥和明文,并使用3DES算法返回加密文本.

输入:

  • CLEAR_KEY:一个32个字符的十六进制字符串,用作加密密钥.
  • CLEAR_TEXT:一个16个字符的字符串.

输出:

  • CYPHERED_TEXT:一个16个字符的字符串.

我可以访问DB2ICSF可调用服务.

我尝试了这三种方法:

使用CSNBSYE

77 CSNBSYE                  PIC X(7) VALUE 'CSNBSYE'.
01 CSNBSYE-PARAMETERS.
   02 RETURN-CODE           PIC 9(8) COMP.
   02 REASON-CODE           PIC 9(8) COMP.
   02 EXIT-DATA-LENGTH      PIC 9(8) COMP.
   02 EXIT-DATA             PIC X(32).
   02 RULE-ARRAY-COUNT      PIC 9(8) COMP.
   02 RULE-ARRAY            PIC X(8).
   02 KEY-IDENTIFIER-LENGTH PIC 9(8) COMP.
   02 KEY-IDENTIFIER        PIC X(32).
   02 KEY-PARMS-LENGTH      PIC 9(8) COMP.
   02 KEY-PARMS             PIC X(32).
   02 BLOCK-SIZE            PIC 9(8) COMP.
   02 INIT-VECTOR-LENGTH    PIC …
Run Code Online (Sandbox Code Playgroud)

encryption db2 cobol 3des zos

2
推荐指数
1
解决办法
279
查看次数

如何在 IBM (HLASM) 中使用显式寻址

我一直在网上寻找有关显式寻址的信息,但什么也没有,而且解释很模糊。我希望有人可以详细解释我,如果可能的话,还可以举个例子。我想知道,应该使用哪些寄存器作为索引,基数,位移值应该是什么

示例 8(,4) 或 5(0,5) 或 6(7)

assembly mainframe zos addressing-mode s390x

2
推荐指数
1
解决办法
203
查看次数

有没有办法将数组传递给外部 REXX 程序?

我尝试过的:

程序A:

call PROGRAMB ARRAY val1 val2 
Run Code Online (Sandbox Code Playgroud)

程序B:

PARSE arg ARRAY val1 val2 
/* test to see if ARRAY is passed successfully */
/* len1 equals the length of ARRAY */
interpret "len1 = "ARRAY".0"
say 'len1: ' len1 
DO i=0 TO len1
    say 'current line: '
    interpret "say "ARRAY".i"
END;
Run Code Online (Sandbox Code Playgroud)

预期成绩:

  1. len1 将等于数组的长度。例如,如果 ARRAY = [1,2,3],则 len 将等于 3。
  2. 应该打印数组的每个成员。

实际结果:

  1. len1 相当于“JOBCARD.0”而不是实际长度。
  2. 由于 IRX0041I(错误的算术转换),程序在 for 循环中失败,并且不打印成员/

我尝试过的解决方案:

https://www.bde-gmbh.de/tipps-tricks/zos-rexx/how-to-pass-stems-as-procedure-arguments-in-rexx/

但此方法仅适用于将数组传递给同一程序中的函数。

mainframe rexx zos

2
推荐指数
1
解决办法
244
查看次数

从 JCL 对 BPXBATCH 的调用是否使用批处理作业的优先级,或者 OMVS 中的优先级是否独立?

我正在调用一个 shell 脚本,该脚本使用 BPXBATCH 从 JCL 进行一些处理,如下所示:

//STEP2   EXEC PGM=BPXBATCH,                                              
//             PARM='SH PATHTOSCRIPT.SH MYARGUMENT'     
Run Code Online (Sandbox Code Playgroud)

JCL 具有最高优先级的服务类别。然而,shell 脚本进入队列等待资源。有时它运行得很快,有时则等待资源很长时间。JCL 的优先级似乎与 shell 脚本无关。我读到也许在 Unix 中使用“nice”命令会提高 shell 脚本的优先级。

我首先要确定的是,z/OS 中的 JCL 优先级不会影响通过 BPXBATCH 从该 JCL 调用的 Unix 进程的优先级。我找不到任何有关它的文档。

unix mainframe jcl zos

2
推荐指数
1
解决办法
572
查看次数

标签 统计

zos ×10

mainframe ×7

cobol ×3

db2 ×3

rexx ×3

3des ×1

addressing-mode ×1

assembly ×1

chdir ×1

encryption ×1

ispf ×1

jcl ×1

panel ×1

s390x ×1

unix ×1

uss ×1