1. 三种work: Time-Sharing(TSO),On-line(CICS),Batch。
2. TSO和CICS的work unit是session,Batch的work unit是job。
3. 每个job都需要提出requirement:包括program, sequence, dataset, hardware, accounting information, priority。
4. 高级语言运行步骤:一是compile,二是link edit,三是execute。
5. JOB LIFE CYCLE:一是input给予一个ID,然后把JCL放到spool里面;二是conversion,拿出JCL,检查语法错误,然后转换为internal text;三是execution,把internal text读入initiator;四是output;五是print/punch,可以把结果输出到当地打印机/远程打印机,甚至另外一个计算机系统;六是purge,释放内存和job ID。
6.
7. An Initiator is a group of routines whose sole function is to select a job from the job queue and execute it under its control.
8. Job 运行在initiator address space下面,每个initiator服务于一个job class.
9.
10. exec 查找顺序:一是Job pack area,二是joblib和steplib,三是link pack areas,四是link list里。
11. JCL错误:一是syntax errors,job不sub,由JES检出;二是退出ABEND,由MVS执行;三是用户程序检出,用户自身可以行动。
12. ABEND原因:一是系统认为不可能服务或者不接受;二是逻辑错误;三是JCL 语法错误类;四是资源不可取;五是时间或者空间的超限;六是硬件故障;七是用户自己ABEND;八是操作员的干涉,九是操作系统失败。
13. 一旦ABEND,后发的程序就不做了,除非有COND。
14. 如果是操作员干涉或者时间限制道,任何后发步骤都不会做。
15. Leading commas and trailing commas.
16. 程序内容从1到71,72用于附加注释,73到80编号。
17. JOB statement后面的内容都从属于这个JOB,直到遇到/*
18. 一个JOB最多含有255个EXEC。
19. 特殊的dd name: JOBLIB STEPLIB STEPCAT SYSUDUMP
20.
21. ACCOUNT FIELD最多有142个字符,如果有特殊字符,用括号或者’’;programmer 最长20个字符,不包括引号括号。
22.
23. 时间超限,BEND=S322,
24. time=1 to 1439,若为1440,则为无限制时间。如online-system。
25. typrun:scan 检查完语法就回家,hold检查完语法然后休息,jclhold不检查语法就休息。
26. PRTY:0——15,最高15。
27. RESTART=[stepname|procexec.stepname|*] Star (*) - indicates the Job will begin from first step.
28. 当使用restart时候,EXEC名字不要重复,Proc名字也不重复,Step要有名字。
29. ADDRSPC=[VIRT|REAL] 这个东西在job和EXEC里面都有,JOB里优先
30. region最大2096128K,或者2047M
31. EXEC 参数 DPRTY (dispatching priority)0-15
32. PARM的传递string 不能超过100个字符,如果要用到&和’,则写成PARM=&&, ‘’
33. PERFORM=(1 to 999)
34. EXEC 和 JOB的公共参数:ADDRSPC, REGION, TIME, COND,除了COND,都是JOB优先
35. 同一个step只能有一个ddname,如果有多,则会被allocated但是不被运行。
36. DISP parameters defaults:
If DISP parameter not coded -- (NEW,DELETE,DELETE)
DISP=OLD -- (OLD,KEEP,KEEP)
DISP=NEW -- (NEW,DELETE,DELETE)
DISP=SHR -- (SHR,KEEP,KEEP)
DISP=(,KEEP) -- (NEW,KEEP,KEEP)
37. UNCATLG- has a meaning for non-SMS and non-VSAM dataset. For an SMS managed and VSAM dataset UNCATALG defaults to KEEP.
PASS. This indicates that an entry for the dataset that contains DSN, VOL and UNIT parameter be placed on a table in storage, the passed dataset queue. This entry is to be used in subsequent step to receive the passed dataset.
38. 一个step里最多可以用3273个ddname
39. UNIT的参数:Affinity: requests that the system allocates different data sets residing on different removable volumes to the same device during the execution of the step.
Group name: requests a group of devices with a symbolic name which is assigned by the installation at the system generation or IBM assigned.
• Unit count: specifies the number of devices for the data set.
• Defer: requests that the volume(s) not be mounted until the data set is opened.
40. VOLUME OR VOL
a) • Can request a specific volume by means of the serial number (SER).
b) • Can request a specific volume by requesting the same volume(s) used by another data set (REF). • Can request a specific volume by referring back to a previous DD statement.