300+ [MOSK ASKED] Ibm-jcl Interview Questions and Answers

1. What Is A Rlse?

RLSE releases all unused space when the data set is closed. It permits you to allocate more space than perhaps, it needed without wasting space. Space is released only if the data set is not empty and if the data set is closed after being opened.

2. Why Do You Want To Specify The Region Parameter In A Jcl Step?

To override the REGION defined at the JOB card level REGION specifies the max region size REGION=0K or 0M or omitting REGION me no limit will be applied

3. What Are The Kinds Of Job Control Statements?

The JOB, EXEC and DD statement

4. What Is A Temporary Data Set?

Temporary data sets are used for storage needed only for the duration of the job. If the DISP parameter doesn’t delete the data set by the end of the job, the system will delete it. Deleting a tape data set dismounts the tape, whereas deleting a dataset on a direct-access volume release the storage. A data set is marked temporary by omitting the DSN parameter or by coding DSN=&&dsname. The system assign a unique name to the data set when the DSN parameter is omitted, and any subsequent steps using the dataset refer back to the DD statement.

5. What Is Disp=mod ?

DISP=MOD modifies a sequential data set. It is a convenient way to add data to the end of sequential dataset. If the data set doesn’t exist, the system changes MOD to NEW unless the VOL parameter request specific volume. When VOL is coded, the stem expects to find data set on the specified volume and terminates the step if it cannot find it. MOD is the usual way of extended data sets in to several direct-access volumes.

6. What Is The Difference Between Specifying Disp=old And Disp=shr For A Data Set?

A DISP=OLD denotes exclusive control of the Data Set; DISP=SHR me there is no exclusivity.

7. What Is Steplib, Joblib? What Is It Used For?

Specifies that the private library (or libraries) specified should be searched before the default system libraries in order to locate a program to be executed.

STEPLIB applies only to the particular step, JOBLIB to all steps in the job.

8. What Is A Proc? What Is The Difference Between An In Stream And A Catalogued Proc?

PROC stands for procedure It is ‘canned’ JCL invoked by a PROC statement an in stream PROC is presented within the JCL; a catalogued PROC is referenced from a proclib partitioned Data Set.

9. What Is The Meaning Of Data Definition Name (dd Name) And Data Set Name (dsn Name) In The Dd Statement?

Data definition name is the eight character designation after the // of the DD statement It matches the internal name specified in the steps executing program In COBOL that’s the name specified after the ASSIGN in the SELECT ASSIGN statement Data Set name is the operating system (MVS) name for the File.

10. What Is A Priority?

It is a keyword parameter which specifies a job initiation priority within its job class. When the job is initiated, the system will convert the job’s priority into a dispatching priority so that job’s task can complete with other tasks for use of main storage and CPU resources.

11. What Is The Improvement To Cond= In The Latest Version Of Mvs?

MVS now allows for an IF bracketed by an END IF around any job step to replace the COND= syntax Again, if the IF statement is true, the step is bypassed.

12. What Is Primary Allocation For A Data Set?

The space allocated when the Data Set is first created.

13. What Are The Keywords Associated With Dcb? How Can You Specify Dcb Information? What Is The Os Precedence For Obtaining That Dcb Information, Ie Where Does The System Look For It First?

The keywords associated with the DCB parameter are LRECL, RECFM, BLKSIZE and DSORG The DCB information can be supplied in the DD statement The system looks for DCB information in the program code first

14. What Are Sd37, Sb37, Se37 Abends?

All indicate dataset out of space. SD37 – no secondary allocation was specified. SB37 – end of vol. and no further volumes specified. SE37 – Max. of 16 extents already allocated.

15. What Is A Proc?what Is The Difference Between An Instream And A Catalogued Proc?

PROC stands for procedure It is ‘canned’ JCL invoked by a PROC statement An instream PROC is presented within the JCL; a catalogued PROC is referenced from a proclib partitioned Data Set.

16. What Is The Meaning Of The Exec Statement Keyword, Cond? What Is Its Syntax?

COND specifies the conditions for executing the subsequent job step the value after the COND= is compared to the return codes of the preceding steps and if the comparison is true, the step is bypassed

17. What Is Jcl ?

JCL stands for Job Control Language

18. Can You Code Instream Data In A Proc ?

No.

19. What Is The Difference Between The Positional And Keyword Parameters? Give Examples?

  • Positional Parameters are placed in a specific position.
  • It needs to be positioned within the operand field.
  • Example: Employee name in the Job card is a positional parameter at the Job level.
  • Keyword Parameters are not placed in a specific position or order.
  • Example: MSGLEVEL=(X,Y)

20. How Do You Skip A Particular Step In A Proc/job?

Can use either condition codes or use the jcl control statement IF (only in ESA JCL)

21. How Many Extents Are Possible For A Sequential File ? For A Vsam File?

16 extents on a volume for a sequential file and 123 for a VSAM file.

22. What Does A Disposition Of (new,catlg,keep) Mean?

That this is a new dataset and needs to be allocated, to CATLG the dataset if the step is successful and to KEEP but not CATLG the dataset if the step abends. Thus if the step abends, the dataset would not be catalogued and we would need to supply the vol. ser the next time we refer to it.

23. What Is Job Control Language?

  • A language for job description to MVS, OS/390 and VSE Operating Systems that run on IBM S/390 servers.
  • A set of statements that required for running a particular program is referred as a job step.
  • Without user interaction, job runs in background.
  • The OS manages the user requests to initiate the units of work.
  • Input data sets, such as files are the specific JCL statements to access. Once the resources are allocated for the job, the output data set is to be created or updated.
  • A set of JCL statements are stored as data set and will be started interactively.
  • A menu-like interface is provided by MVS and OS/390, known as ISPF to initiate and manage jobs.

24. How Do You Access A File That Had A Disposition Of Keep?

Need to supply volume serial no. VOL=SER=xxxx.

25. What Is A S0c4 Error ?

Storage violation error – can be due to various reasons. e.g.: READING a file that is not open, invalid address referenced due to subscript error.

26. What Are The Keywords Associated With Dcb? How Can You Specify Dcb Information? What Is The Os Precedence For Obtaining That Dcb Information, I.e. Where Does The System Look For It First?

The keywords associated with the DCB parameter are LRECL, RECFM, BLKSIZE and DSORG The DCB information can be supplied in the DD statement The system looks for DCB information in the program code first.

27. What Are The Valid Dsorg Values ?

PS – QSAM, PO – Partitioned, IS – ISAM

28. What Are Hierarchy Levels In Jcl?

Level describes the JCL statements. According to each action performed by each statement. Each statement of JCL consist of following keywords—

NAME.
FIELDS.
OPERATIONS.
OPERANDS.
PARAMETERS.

  1. POSITIONAL.
  2. KEYWORD.

COMMENTS IF ANY.

Eg. //STEP007 EXEC PGM=JAMES BOND
Here stepoo7 is the name,
pgm is the keyword parameter,
exec is the command,
assign is the operation,
jamesbond is the operand.

29. What Are The Parameters That Have To Be Coded On A Dd Statement In Order To Retrieve A Cataloged Data Set?

The minimum parameters needed are DSN and DISP.

30. What Are The Maximum Number Of In-stream Procedures You Can Code In Any Jcl?

15.

31. How Is Gdg Base Created?

A GDG base is created in the system catalog and keeps track of the generation numbers used for datasets in the group. IDCAMS utility is used to define the GDG base for MVS/XA, and MVS/ESA. Older systems required that the IEHPROGM utility be used.

32. What Is ‘s0c7’ Abend?

Caused by invalid data in a numeric field.

33. How Do You Override A Specific Ddname/sysin In Proc From A Jcl?

// DSN=…

34. What Does Cond=even Mean ?

It me that this jobs step will be executed even if a previous step abnormally terminated.

35. What Is Disp=shr ?

DISP=SHR permits old data sets to be shared. SHR is identical to OLD except that several jobs may read the dataset concurrently in multiprogramming environments. SHR must be used only for input data sets; use OLD or MOD if data set is modified. Sharing data set is necessary because public libraries like SYS1.LINKLIB or the subroutine libraries should be available to every job in the system.

36. What Is The Purpose Of The Parm Keyword In The Exec Statement?

The value after the PARM= specifies control information to be passed to the executing program of the job step

37. What Is Notcat ?

This is an MVS message indicating that a duplicate catalog entry exists. E.g., if you already have a dataset with dsn = ‘xxxx.yyyy’ and u try to create one with disp new,catlg, you would get this error. the program open and write would go through and at the end of the step the system would try to put it in the system catalog. at this point since an entry already exists the catlg would fail and give this message. you can fix the problem by deleting/uncataloging the first data set and going to the volume where the new dataset exists(this info is in the msglog of the job) and cataloging it.

38. What Is A Disp?

DISP is a keyword parameter which is defined on the DD statement and which consist of the following positional subparameters: DISP=(Status, Normal Disp, Abnormal Disp). The DISP parameter describes the current status of the dataset (old, new, or modified) and directs the system on the disposition of the data set (pass, keep, catalog, uncatalog, or delete) either at the end of the step or if the step abnormally terminates. DISP is always required unless the data set is created and deleted in the same step.

39. When You Specify Mutiple Datasets In A Joblib Or Steplib, What Factor Determines The Order?

The library with the largest block size should be the first one.

40. What Does The Keyword Dcb Mean And What Are Some Of The Keywords?

Associated IT DCB stands for data control block; it is a keyword for the DD statement used to describe Data Sets Keywords associated with it are BLKSIZE, DEN, LRECL and RECFM.

41. Differentiate Between Addressing Mode And Run Mode?

Addressing mode or Access Mode:

  • AMODE(24) indicates 24-bit addressing in the memory below the line.
  • AMODE(31) indicates 31-bit addressing in the memory above and below the line.
  • AMODE=ANY indicates either 24-bit or 31-bit addressing techniques. Run Mode or Residency Mode:
  • RMODE(24) indicates the program need to be loaded into the memory below the line.
  • RMODE(31) indicates the program need to be loaded into the memory either below or above the line.
  • RMODE=ANY indicates the program to load either in 24 bit or 31 bit memory.

42. How Do You Restart A Proc From A Particular Step?

In job card, specify RESTART=procstep.stepname
where procstep = name of the jcl step that invoked the proc
and stepname = name of the proc step where you want execution to start

43. How Do You Check The Syntax Of A Jcl Without Running It?

TYPERUN=SCAN on the JOB card or use JSCAN.

44. What Is The Difference Between * And Data?

DD * and DD DATA describe the input data which follows the above mention cards. If the input data contains record switch // in col 1 and 2 then DD Data should be used.

45. What Is Jcl

It is an interface between operating system (MVS) & the application program. When two related programs are combined together on control statements, it is called job control language

46. What Is The Purpose Of The Job Statement?

The purpose of the JOB statement is to inform the operating system of the start of a job, give necessary accounting information and supply run parameters. Each job must begin with a single JOB statement.

47. When Should Be Nl Be Specified As A Type Of Label Processing?

NL should be specified when a program needs to process unlabeled tapes NL can also be specified when the program wants to create unlabeled tape because the system’s default action, in cases when parameter is not specified, will create IBM standard label. Non labeled tapes are often used for sending tapes to another installation. That way you don’t have to worry about the tape label corresponding to the standards at the other installation or about accidentally matching the volume serial number of an existing tape at the installation.

48. What Is A Msgclass Parameter?

It is a keyword parameter which specifies the output class to which system messages for your job are to be routed. Output class is an alphabetic (A thru Z) or numeric (0 thru 9) character. The default for MSGCLASS parameter will be A. System messages and output data sets can be routed to the same output class. You can code the MSGCLASS parameter in the Job statement and the SYSOUT parameter on the DD statement.

49. What Is The Purpose And Meaning Of The Time Keyword And What Jcl Statement Is It Associated With?

TIME specifies the maximum CPU time allocated for a particular job or job step if TIME is in the JOB card, it relates to the entire job; if in the EXEC statement, it relates to the job step.

50. What Is S322 Abend ?

Indicates a time out abend. Your program has taken more CPU time than the default limit for the job class. Could indicate an infinite loop.