z/OS Study Center
Available Courses
and supplemental papers

Home page         Background

Courses              Order form         email me

 

Topic quick links:
General Courses
TSO/ISPF
JCL & Utilities
Assembler Language
COBOL
VSAM
Language Environment
UNIX System Services

Top

Here are all the courses we have available as materials for your z/OS Study Center...

z/OS course materials
Course title Description / Prerequisite
 
 
 
 
  General / Introduction Courses
Introduction to Application Programming (z/OS) Intended audience: People with aptitude but no background in computers; these could be new hires or employees looking to move into your data processing staff

Topics include: Basic computer concepts: data description; program flow and design; pseudo-code; examples of programs in various languages; mainframe hardware overview; data representation; base 10, base 2, base 16; z/OS vocabulary: virtual storage, DASD organization, TSO/ISPF, batch vs. online; paper labs only.

2 days; 180 pages, index; last updated: 2024

Prerequisite: Just an apptitude for programming

Status: Ready to go
Introduction to z/OS Intended audience: Developers new to IBM mainframes (or familiar with IBM mainframes but not familiar with z/OS). These could be people with technical backgrounds in other computing platforms

Topics include: z/Architecture hardware; z/OS software overview; workloads and tuning; data management vocabulary and descriptions; batch, JCL, TSO/ISPF, CLIST, REXX, dialog manager; Unicode; overview of DB2, CICS, IMS, MQ; Language Environment; sample code: Assembler, COBOL, PL/I, C; the program binder; z/OS UNIX System Services.

1 day; 198 pages, index; last updated: 2024

Prerequsite: familiarity with any non-z/OS system

Status: Ready to go
 
 
 
 
  TSO, CLIST, REXX, ISPF / Dialog Manager
TSO/ISPF in z/OS Intended audience: Programmers learning how to get work done in z/OS; new system support staff might also benefit.

Topics include: the logon process, the primary option menu, using action bars, the settings panel, function keys and keylists, working with datasets (naming, locating, allocating); utility functions (3.1, 3.2, 3.3, 3.4), browse, view, and edit. Also discusses submitting jobs and looking at the output using ISPF 3.8 or SDSF, or IOF, or OMC-Flash, or (E)JES.
17 machine exercises

3 days; 440 pages, 2-page summary sheet, index; last updated: 2024

Prerequisite: None, although it helps to have some background such as found in "Introduction to Application Programming (z/OS)"

Status: Ready to go
Advanced Topics in ISPF Intended audience: Programmers / developers who use ISPF and could benefit from understanding less known capabilities

Topics include: Working with reference lists, additional edit commands: exclude, flip, shift commands, case changing commands, text split, md, cols, version, level, etc.; how to use the Status Area including the appointment calendar feature, command nesting, more dslist (ISPF 3.4) commands and features, the edit compare command, managing multiple split screens, the UNIX directory list option, the search and compare dialogs, additional ASCII and Unicode support, and an introduction to edit macros.
10 - 14 hands on machine exercises

Anticipate 2 or 3 days; 400 pages, index;

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.

Status: Needs 4 to 5 days system access (estimate); needs sponsor
TSO CLIST Programming in z/OS Intended audience: Programmers who need to maintain or create CLIST scripts

Topics include: The Terminal Monitor Program; symbolic variables;

TSO commands (SEND, LISTBC, TIME, HELP, LOGOFF, EXEC, PROFILE, LISTCAT, LISTDS, END, ALLOCATE, FREE, ALTLIB, LISTALC, RENAME, REPRO, DELETE, DEFINE CLUSTER, ALTER, PRINT, PRINTDS, SMCOPY, SUBMIT, STATUS, CANCEL, OUTPUT, EDIT, TRANSMIT, RECEIVE);

CLIST statements (READ, WRITE, WRITENR, SET, CALL, CONTROL, GOTO, IF-THEN-ELSE, EXIT, DO sequences, SELECT, RETURN, ATTN, LISTDSI, GLOBAL, SYSCALL, NGLOBAL, SYSREF, OPENFIL, GETFIL, PUTFILE, CLOSFILE, READDVAL, TERMIN, PROC);

13 standard and two optional hands-on machine exercises.

3 days; 322 pages, index; last updated: 2024

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.

Status: Ready to go
TSO REXX programming in z/OS Intended audience: Programmers who need to maintain or create REXX scripts

Topics include: The Terminal Monitor Program; REXX concepts and syntax;

TSO commands (SEND, LISTBC, TIME, HELP, LOGOFF, EXEC, PROFILE, LISTCAT, LISTDS, END, ALLOCATE, FREE, ALTLIB, LISTALC, RENAME, REPRO, DELETE, DEFINE CLUSTER, ALTER, PRINT, PRINTDS, SMCOPY, EXECIO, SUBMIT, STATUS, CANCEL, CALL, TSOLIB, OUTPUT, EDIT, TRANSMIT, RECEIVE);

REXX statements ( SAY, PULL, assignment, PARSE, PARSE PULL, PUSH, QUEUE, QUEUED, IF-THEN-ELSE, LEAVE, ITERATE, DO-sequences, SELECT, INTERPRET, CALL, RETURN, EXIT, LISTDSI, DROP, UPPER, PROCEDURE, SIGNAL, ADDRESS);

REXX built-in functions (FORMAT, TRUNC, ARG, SOURCELINE, CONDITION, ABBREV, TRANSLATE, XRANGE, INSERT, OVERLAY, COMPARE, REVERSE, LINESIZE, COPIES, CENTER / CENTRE, JUSTIFY, LEFT, RIGHT, STRIP, SPACE, WORD, WORDS, WORDINDEX, WORDLENGTH, SUBWORD, WORDPOS, DELSTR, DELWORD, OUTTRAP, ABS MAX, MIN, SIGN, RANDOM, B2X, C2D, C2X, D2C, D2X, X2B, X2C, X2D, BITAND, BITOR, BITXOR, STREAM, CHARIN, LINEIN, CHARS, LINES, CHAROUT, LINEOUT);

compound symbols and stems; user-written functions; condition traps; if the customer has these features we also discuss them: the Alternate Library, the REXX compiler.

14 hands on machine exercises.

5 days; 514 pages, summary of REXX commands and TSO commands covered, index; last updated: 2024

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.

Status: Ready to go
Introduction to TSO and REXX APIs Intended audience: Programmers who need to create or maintain REXX scripts that interface with compiled programs.

Topics include: Running programs in foreground; TSO CALL; terminal I/O; interaces to TSO and REXX services when running under TSO or in batch; interaces that allow Assembler and compiled programs to invoke TSO commands and to access and change REXX variables. How to write programs invoked from EXECs; accessing files and DB2 data bases, DSNREXX; TSO WHEN; FREEing data sets;

TSO facilities (IKJEFTSR, TSOLNK, IKJCT441);

program connections (ADDRESS LINK, ADDRESS ATTACH, ADDRESS LINKMVS, ADDRESS ATTCHMVS, ADDRESS LINKPGM, ADDRESS ATTACHPGM, IKJEFT1A, IKJEFT1B, IKJTSOEV, SHVBLOCK, IRXEXCOM);

8 standard and 1 optional machine exercises.

2 days; 196 pages, index; last updated: 2012

Prerequisite: "TSO REXX programming in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C.

Status: Needs 3 to 5 days system access; needs sponsor
Developing Dialog Manager Applications in z/OS Intended audience: Programmers who need to create or maintain ISPF dialogs that interface with compiled programs.

Content:This fun class assumes prior knowledge of REXX or CLIST and then moves on to provide a thorough introduction to developing, coding, testing, and maintaining applications to be run under the ISPF environment. Panel definition language, ISPF variables and variable services, ISPF service functions (LIBDEF, DISPLAY, LMxxxx, etc.), ISPF messages and message services, pop up windows, scrollable fields, menus, debugging, Edit, View, and Browse, ISPF tables, File tailoring, introduction to Dialog Tag Language, ISPPDTLC service. 14 standard and one optional machine exercises

5 days; 682 pages, appendices, index; last updated: 2012

Prerequisite: "TSO/ISPF in z/OS" and either "TSO REXX programming in z/OS" or "TSO CLIST Programming in z/OS" or equivalent experience.

Status: Needs 2 to 4 days system access; needs sponsor
 
 
 
 
  JCL and Utilities
z/OS JCL and Utilities Intended audience: Programmers / developers who need to submit jobs to the batch

Topics include: JCL statements (JOB, EXEC, DD, OUTPUT, IF THEN / ELSE / ENDIF, INCLUDE, SET, JCLLIB, PROC, PEND);

cataloged and instream procedures, symbolic parameters; introduction to a few utilities (IEBGENER, IDCAMS, SORT); looking at job output using ISPF 3.4, SDSF, OMC-FLASH, IOF or (E)JES;

13 hands on machine exercises.

3 days; 336 pages, JCL summary sheet, index; last updated: 2024

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.

Status: Needs 1 to 2 days system access; needs sponsor
ISPF and JCL on z/OS Intended audience: Programmers learning how to get work done in z/OS; new system support staff might also benefit.

This is a mashup of "TSO/ISPF in z/OS" and "z/OS JCL and Utilities", enabling an ISPF / JCL package to fit into a five day work week. This is done by eliminating redundant passages and dropping a few topics. The omitted topics are: A short introduction to the mainframe environment; reference lists; the Workplace shell; ISPF VSAM support; DELETE and LISTC TSO commands. 27 hands on machine exercises

5 days; 662 pages, ISPF summary sheet, JCL summary sheet, index; last updated: 2012

Prerequisite: None, although it helps to have some background such as found in "Introduction to Application Programming (z/OS)"

Status: Needs 1 to 2 days system access; needs sponsor
Using DFSORT and ICETOOL Intended audience: Programmers / support staff who need to use IBM's DFSORT product

Topics include: Basic DFSORT; using SORT to do a copy; symbolic names and literals; converting values; working with date and time formats; DFSORT and HTML; z/OS UNIX files; ASCII files; VSAM support; ICEGENER;

sort control statements (INCLUDE, OMIT, INREC, SORT, OUTREC);

operands (PARSE, BUILD, OVERLAY, FINDREP, OUTFIL, ALTSEQ, RECORD, MERGE, OPTION, JOINKEYS);

ICETOOL (COPY, COUNT, DEFAULTS, MERGE, MODE, RANGE, SORT, STATS, UNIQUE, VERIFY< DISPLAY, OCCUR, RESIZE, DATASORT, SUBSET, SELECT, SPLICE);

20 hands on machine exercises

4 days; 562 pages, appendices, index; last updated: 2024

Prerequisite: "z/OS JCL and Utilities", or equivalent experience.

Status: Needs 1 to 2 days system access; needs sponsor
 
 
 
 
  Assembler Language
z/OS Assembler Programming, Part 1: Beginnings Intended audience: Programmers beginning their journey into Assembler language

Topics include: Programming concepts; types of operations, instruction execution; source modules, object modules, load modules; source instruction format; computer memory; data representation; character string data; hexadecimal; memory; addresses and address registers; machine instruction formats; base + displacement; Assembler syntax rules; control sections, the location counter; program structure; save areas and chaining; packed decimal data; interrupts; introduction to debugging; rounding; editing; binary string data; binary integer data; logical arithmetic; literals and the literal pool; multiple base registers; string handling; addressing mode;

machine instructions (LA, L, LM, LPR, LNR, LCR, LH, LTR, ST, STM, STH, IC, STC, ICM, CLM, STCM, BR, BC, BCR, BAS, BASR, BAL, BALR, BCT, BCTR, BXLE, BXH, BASSM, BSM, IPM, A, AR, S, SR, C, CR, M, MR, D, DR, ALR, AL, CLR, CL, SLR, SL, AH, SH, MH, CH, PACK, UNPK, AP, SP, MP, DP, CP, ZAP, SRP, ED, EDMK, MVC, MVO, MVI, MVN, MVZ, MVCL, MVCIN, CVB, CVD, CLC, CLI, CR, C, CH, CLR, CL, CLM, CLCL, CP, OI, OC, O, OR, NI, NC, N, NR, XI, XC, X, XR, TM, SRL, SRA, SLL, SLA, SRDL, SRDA, SLDL, SLDA, TR, TRE, TRT, EX);

file related macros (DCB, OPEN, GET, PUT, CLOSE);

Assembler statements (START, CSECT, END, DSECT, USING, DC, DS, EQU, ORG, LTORG, CNOP, TITLE, EJECT, SPACE, CEJECT, PRINT, AMODE, RMODE);

14 hands on machine exercises.

5 days; 402 pages, instruction summary, index; last updated: 2024

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.

Status: Ready to go
z/OS Assembler Programming, Part 2: Interfaces Intended audience: Programmers continuing their journey into Assembler language

Topics include: standard linkage conventions, introduction to the program binder, and introduction to debugging; includes handling of variable length records, QSAM update in place, 31-bit addressing concerns and writing re-entrant code.

QSAM file processing (DCB, OPEN, GET, PUT, CLOSE, PUTX, SYNAD);

Subroutine linkages and storage management (CALL, LOAD, DELETE, LINK, XCTL, GETMAIN, FREEMAIN;)

Some system services (ABEND, WTO, SNAP, TIME, STCKCONV, CONVTOD);

9 hands-on machine exercises

3 days; 296 pages, appendices, index; last updated: 2024

Prerequisite: "z/OS Assembler Programming, Part 1".

Status: Ready to go
z/OS Assembler Programming, Part 3: z/Architecture Update Intended audience: Programmers needing to understand and use the new hardware and software services to support 64-bit addressing

Topics include: New Assembler options and statements, hundreds of new instructions; the halfword immediate instructions, relative branching, Unicode support, new Assembler parm features, and new USING features.

Anticipated to be 4 days; Expect over 600 pages, appendices, index; last updated: 2024

Prerequisite: "z/OS Assembler Programming, Part 2" or equivalent experience.

Status: in major re-development; Needs 5 to 8 days system access; needs sponsor
 
 
 
 
  COBOL
Structured COBOL Workshop for Enterprise COBOL Intended audience: Programmers beginning their journey into COBOL

Topics include: Context: hardware, software, instructions, programs, compiling and binding, COBOL Basics: character set, words, punctuation; program structure; figurative constants, editing data (edit pictures);

Divisions (ID Division, Environment Division, Data division, Procedure division);

describing files; data structures, level numbers, elementary items and group items, PIC, FILLER, working-storage section; program design / coding strategy; sections and paragraphs;

file handling (OPEN, READ, WRITE, CLOSE, REWRITE, FILE STATUS); locate mode processing versus move mode processing;

structured coding and program design principles; pseudocode; condition tests;

Essential verbs and constructs (MOVE, MOVE CORRESPONDING, PERFORM, IF / THEN / ELSE, CONTINUE, SET ... TO TRUE, ADD, SUBTRACT, MULTIPLY, DIVIDE, COMPUTE, SIZE ERROR, EVALUATE, INITIALIZE, ACCEPT, DISPLAY GO TO; EXIT, STOP RUN, GOBACK);

scope terminators; USAGE clause; EBCDIC, ASCII, Unicode; packed-decimal numerics, binary integers; significant digits and precision; conceptual data items, reference modification;

intrinsic functions: concepts, functions (ACOS, ASIN, ATAN, COS, LOG, LOG10, SIN, TAN, ABS, FACTORIAL, INTEGER, INTEGER-PART, MAX, MEAN, MEDIAN, MIDRANGE, MIN, MOD, ORD-MAX, ORD-MIN, RANDOM, RANGE, REM, NUMVAL, NUMVAL-C, SQRT, SUM, ANNUITY, PRESENT-VALUE, STANDARD-DEVIATION, VARIANCE, COMBINED-DATETIME, CURRENT-DATE, DATE-OF-INTEGER, DATE-TO-YYYYMMDD, DAY-OF-INTEGER, DAY-TO-YYYYDDD, INTEGER-OF-DATE, INTEGER-OF-DAY, WHEN-COMPILED, YEAR-TO-YYYY, BIT-OF, BIT-TO-CHAR, BYTE-LENGTH, CHAR, DISPLAY-OF, LENGTH, LOWER-CASE, NATIONAL-OF, ORD, REVERSE, TRIM, UPPER-CASE);

report files and control break logic; match merge logic; user defined data classes; COPY; pseudo-text; currency capabilities; line sequential files.

17 hands-on machine exercises

5 days; 524 pages, appendix, index; last updated: 2024

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.

Status: Needs 1 to 2 days system access; needs sponsor
Advanced Topics in COBOL Intended audience: Beginning COBOL programmers who need to expand their skills in this language.

Topics include: Subroutines, static vs. dynamic linkages; special registers, null terminated strings, local-storage, recursive programs, pointers (procedure-pointers, function-pointers, Addres Of special register, dynamic file allocation, tables (with subscripts and indexes), variable length records, string handling, and, optionally, the COBOL SORT and MERGE verbs.

12 hands-on machine exercises

3 days; 310 pages, appendix, index; last updated: 2024

Prerequisite: "Structured COBOL Workshop for Enterprise COBOL", or equivalent experience.

Status: Needs 1 to 2 days system access; needs sponsor
Enterprise COBOL Debugging and Maintenance Intended audience: COBOL programmers who need to solve program errors

Topics include: Language Environment (LE): LE completion codes, LE messages, LE condition handling, LE run-time parameters, LE debugging services - CEE3DMP, CEE3ABD, CEETEST; debugging strategy; system completion codes; anatomy of a COBOL compile listing; the school of footprints and breadcrumbs; MVS/QuickRef; dump reading: SYSUDUMP and CEEDUMP; relevant compiler options; subroutine linkage options; the program binder; COBOL declaratives (I/O and DEBUGGING);

3 hands-on machine exercises

2 days; 314 pages, appendices, index; 2 days; last updated: 2024

Prerequisite: "Advanced Topics in COBOL (Enterprise COBOL, z/OS)", or equivalent experience.

Status: Needs 3 to 4 days system access; needs sponsor
Enterprise COBOL Update Intended audience: Experienced COBOL programmers who have not had a chance to get caught up with the latest IBM COBOL compilers

Topics include: Mixed case code; un-named filler; packed-decimal and binary data types; table extensions; pointers and addresses; nested programs; CALL enhancements; scope terminators; in-line PERFORM; SET ... TO TRUE; CONTINUE; INITIALIZE; EVALUATE; new compiler options; intrinsic functions (); Language Environment (LE); apostrophes and quotes, null-terminated non-numeric literals; local-storage; recursive programs; passing arguments BY VALUE; introduction of object-oriented COBOL; DLL support; comp-5 usage; 31 digit numbers; line sequential files; dynamic file allocation; z/OS UNIX support; multithreading support; underscore in user-defined names; XML PARSE.

6 hands on machine exercises

2 days; 404 pages, index; last updated: 2012

Prerequisite: Experience writing COBOL programs.

Status: Needs 3 to 4 days system access; needs sponsor
Enterprise COBOL Unicode and XML Support Intended audience: Experienced COBOL programmers who have a need to process XML data from a COBOL program.

Topics include: features included in COBOL for working with Unicode data; XML PARSE and XML GENERATE (using both XMLPARSE(COMPAT) and XMLPARSE(XMLSS) options)

10 hands on machine exercises

2 days; 228 pages, appendix, index; 2 days; last updated: 2013

Prerequisite: "Enterprise COBOL Update", or equivalent experience.

Status: Major update; needs 3 to 4 days system access; needs sponsor
 
 
 
 
  VSAM
VSAM With Access Method Services Intended audience: Application programmers, in any language, who need to understand the structures of VSAM files and how to use the IDCAMS utility.

Topics include: VSAM organizations (ESDS, KSDS, RRDS, LSDS, AIX)

how to estimate space requirements for VSAM data sets;

IDCAMS JCL requirements and commands (DEFINE CLUSTER, REPRO, PRINT, DELETE, EXPORT, IMPORT, VERIFY, ALTER, EXAMINE).

reusable data sets; performance tuning hints; extended format KSDS; record level sharing; recoverable spheres

5 hands on machine exercises

2 days; 196 pages, index; last updated: 2012

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.

Status: Needs 1 to 2 days system access; needs sponsor
VSAM for COBOL Programmers Intended audience: COBOL application programmers who need to understand VSAM files and how to process them using COBOL.

Topics include: VSAM organizations (ESDS, KSDS, RRDS, LSDS, AIX)

IDCAMS JCL requirements and commands (DEFINE CLUSTER, REPRO, PRINT, DELETE).

defining VSAM data sets in a COBOL program; OPEN and CLOSE; file position indicator; file status data items; loading or extending data into an ESDS VSAM data set; retrieving ESDS records sequentially; update in place (REWRITE); loading or extending KSDS data sets; processing a KSDS sequentially; the START verb; random file processing; dynamic processing; DELETE a record; alternate indexes; loading or extending RRDS data sets; sequential and random processing of RRDS;

5 standard and one optional hands on machine exercises

2 days; 260 pages, index; last updated: 2012

Prerequisite: Experience writing COBOL programs.

Status: Needs 1 to 2 days system access; needs sponsor
VSAM for PL/I Programmers Intended audience: PL/I application programmers who need to understand VSAM files and how to process them using COBOL.

Topics include: VSAM organizations (ESDS, KSDS, RRDS, LSDS, AIX)

IDCAMS JCL requirements and commands (DEFINE CLUSTER, REPRO, PRINT, DELETE).

defining VSAM data sets in a PL/I program (DECLARE); OPEN and CLOSE; file position indicator; file status data items; loading or extending data into an ESDS VSAM data set; retrieving ESDS records sequentially; update in place (REWRITE); loading or extending KSDS data sets; processing a KSDS sequentially; LOCATE mode processing; random file processing; dynamic processing; DELETE a record; alternate indexes; loading or extending RRDS data sets; sequential and random processing of RRDS;

4 standard and one optional hands on machine exercises

2 days; 260 pages, index; last updated: 2012

Prerequisite: Experience writing PL/I programs.

Status: Needs 1 to 2 days system access; needs sponsor
 
 
 
 
  Language Environment, InterLanguage Communication, DLLs
Using LE Services in z/OS Intended audience: Experienced programmers (Assembler, COBOL, PL/I, C) who need to use Language Environment (LE) callable services

Topics include: LE concepts and terms; tokens, return codes; messaging services and inserts; debugging services, storage management services; condition handling; interlanguage communication; Assembler considerations; date and time services; international support; nested enclaves; C/C++ and XPLINK; building loadable text file messages using CEEBLDTX REXX exec; symbolic feedback codes;

callable services (CEEMOUT, CEEMSG, CEECMI, CEEMGET, CEE3PRM, CEE3PR2, CEENCOD, CEEDCOD, CEE3SRC, CEE3GRC, CEE3USR, CEEGPID, CEE3INF, CEEENV, CEE3DMP, CEE3ABD, CEETEST, CEE3AB2, CEEGTST, CEEFRST, CEECZST, CEECRHP, CEEDSHP, CEE3RPH, CEEHDLR, CEESGL, CEEMRCR, CEE3SRP, CEEMRCE, CEEGQDT, CEEGRN, CEE3GRO, CEEITOK, CEE3CIB, CEEPIPI, CEEDATE, CEEDATM, CEEDAYS, CEEDYWK, CEEGMT, CEEGMTO, CEEISEC, CEELOCT, CEEQCEN, CEESCEN, CEESECI, CEESECS, CEE3DLY, CEEDLYM, CEE3CTY, CEE3LNG, CEE3MCS, CEE3MCS2, CEE3MDS, CEE3MTS, CEEFMDA, CEEFMDT, CEEFMTM, CEESETL, CEEQRYL, CEELCNV, CEEQDTC, CEESCOL, CEESTFX, CEEFTDS, CEEFMON, CEESxyyy - math and bit manipulation routines);

Assembler macros available (CEEENTRY, CEETERM, CEECAA, CEEDSA, CEEPPA, CEELOAD, CEEFETCH, CEERELES, CEEPCALL, CEEFTCH);

LE run-time parameters (ABP, ABT, ABPERC, ALL31, AN, BE, CEEDUMP, COUNTR, DEP, DYN, ENVAR, ER, FILETAG, HEAP, HEAPCHK, INFOMSGFILTER, INT, IOHEAP64, LIBSTACK, MSGFILE, MSGQ, NAT, POSIX, PROFILE, RPTO, RPTSTG, STACK, STORAGE, TER, TEST, THREADHEAP, THREADSTACK, TRACE, TRAP, NOU, VCTRSAVE, XPLINK, XUFLOW, AIX, CBLOPTS, CBLPSHPOP, CBLQDA, CHECK, DEBUG, FLOW, RTEREUS, SIMVRD, UPSI, ARGPARSE, ENV, EXECOPS, HEAPPOOLS, PLIST, REDIR, PLITASK, AUTO, ERRU, FILEHIST, INQPCOPN, OCSTATUS, PC, PRTUNIT, PUNUNIT, RDRUNIT, RECPAD)

8 hands on machine exercises

3 days; 620 pages, appendices, index; last updated: 2012

Prerequisite: "TSO/ISPF in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C.

Status: Needs 3 to 4 days system access; needs sponsor
Cross Program Communication in z/OS Intended audience: Experienced programmers (Assembler, COBOL, PL/I, C) who need to write programs that invoke, or are invoked by, programs written in different programming languages

Topics include: static and dynamic calls to programs in the same or different programming languages (we cover Assembler, COBOL, PL/I, and C); how to define variables, structures, and tables; how to pass items (by reference, by content, by value); passing and receiving a variable number of parameters; the structure of object code; the workings of the program binder; creating and using multiple entry points; ways to share data;

9 hands on machine exercises

3 days; 490 pages, appendices, index; last updated: 2013

Prerequisite: "Using LE Services in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C.

Status: Needs 3 to 4 days system access; needs sponsor
Creating and Using DLLs in z/OS Intended audience: Programmers who need to use the facilities of DLLs

Topics include: concepts and vocabulary of DLLs (Dynamic Link Libraries); exporting entry points and external data; function descriptors and variable descriptors; auto-load; trigger-load-on-reference; trigger-load-on-call; binder requirements; writing DLLs in Assembler, COBOL, PL/I, C; invoking DLLs from programs written in Assembler, COBOL, PL/I, C; PL/I packages; alternate entry points; alternatives to DLLs;

DLL services (dlopen, dlsym, dlclose, dlerror);

2 hands on machine exercises

1 day; 150 pages, index; last updated: 2013

Prerequisite: "Cross Program Communication in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C.

Status: Needs 2 to 3 days system access; needs sponsor
 
 
 
 
  z/OS UNIX System Services and the World Wide Web
Introduction to z/OS UNIX Intended audience: z/OS programmers who need to learn how to use z/OS UNIX System Services

Topics include: Introduction to z/OS UNIX; the UNIX shell; the shell interface under OMVS; effective UID, group ID; shell command syntax; markup languages; an introduction to HTML; web servers on z/OS; submitting jobs from the shell; DSLIST (ISPF 3.17);

shell commands (id, logname, cal, date, echo, man, who, whoami, fc, history, r, alias, hash, unalias, export, env, readonly, printenv, pwd, cd, basename, dirname, umask, mkdir, rmdir, ls, mkcatdefsm gencat, runcat, dspcat, dspmsg, localedef, locale, iconv, tr, cp, copytree, mv, tso, compress, uncompress, zcat, pax, tar, submit, telnet, rlogin, stty, tabs, unexpand, expand)

TSO commands (MKDIR, OPUT, OPUTX, OGET, OGETX, OEDIT, OBROWSE, ISHELL)

18 hands on machine exercises

3 days; 512 pages, appendices including command summary, index; last updated: 2013

Prerequisite: "TSO/ISPF in z/OS" or equivalent experience.

Status: Needs 3 to 4 days system access; needs sponsor
Shell Script Programming in z/OS UNIX Intended audience: z/OS programmers who need to learn how to create and use shell scripts under z/OS UNIX.

Topics include: regular expressions; the 'ed', 'oedit', and 'sed' editors; work with directories, files, and shell variables; communicating with the user at the terminal; the BPXBATCH facility; information about 'vi', 'ex', 'emacs', 'gmacs'; OSHELL command; the magic number;

shell commands (tty, sleep, ps, uname, grep, egrep, fgrep, ed, find, read, clear, getconf, if, test, pathchk, until, while, break, continue, let, typeset, integer, expr, for, select, case, getopts, print, autoload, set, unset, sh, exec, whence, type, eval, xargs, file, shift, sed, tsort, sort, [[ ]], diff, patch, dircmp, cmp, cksum, comm, uniq, wc, od, split, csplit );

19 hands on machine exercises

3 days; 580 pages, appendices including command summary, index; last updated: 2012

Prerequisite: "Introduction to z/OS UNIX" or equivalent experience.

Status: Needs 3 to 4 days system access; needs sponsor
Developing Applications for z/OS UNIX Intended audience: z/OS programmers who need to create application programs to run under z/OS UNIX.

Topics include: Coding UNIX apps in C or COBOL or PL/I or Assembler; creating programs that can: interact with the user at a terminal, handle files (classic MVS files or z/OS files), and dynamically call subroutines; such programs can be run from the shell or, in some cases, in batch; Assembling / compiling, and binding using z/OS UNIX commands instead of JCL; BPX1LOD; makefiles;

shell commands (printf, scanf, fopen, fread, fwrite, fclose, ar, c89, as, cob2, pli, ld, make);

16 hands on machine exercises

3 days; 492 pages, appendices including command summary, index; last updated: 2012

Prerequisite: "Introduction to z/OS UNIX" or equivalent experience, plus experience with one of these programming languages: Assembler, COBOL, PL/I, C.

Status: Needs 3 to 4 days system access; needs sponsor
Introduction to CGIs in z/OS Intended audience: z/OS programmers who need to create CGI programs to support a website hosted on z/OS UNIX.

Topics include: Define what a CGI (Common Gateway Interface) program is; initial context; basic web concepts review; HTML subset; events and event handlers; introduction to JavaScript; forms and INPUT controls; submit processing; GET processing; PUT processing; emitting Unicode data to the user; error handling, testing, debugging; DB2 access; RRSAF; submitting batch jobs; nph ("no process headers") processing; cookies; the design of web based dialogs;

there are no labs but there are short sample CGI programs in C, COBOL, Assembler, PL/I, REXX, and shell script;

This course is expected to be followed by one of our langauge-specific CGI courses.

1 day 208 pages; appendix, index; last updated: 2013)

Prerequisite: "You and z/OS and the World Wide Web" or equivalent experience.

Special note: The prerequisite course has been removed, so to attend this course, the student is expected to already have some familiarity with the web on z/OS; or, for a separate price I can re-create the prerequisite course; or have the student enroll in the web coding course(s) at https://www.stillpluggingaway.com/

Status: Needs 3 to 4 days system access; needs sponsor
Writing z/OS CGIs in COBOL Intended audience: z/OS COBOL programmers who need to create CGI programs to support a website hosted on z/OS UNIX.

Topics include: Coding, compiling, debugging, deploying, and maintaining CGIs written for the z/OS environment in COBOL; handling GET and POST requests; respond with dynamically created HTML pages; access environment variables; access DB2 data (optional); access VSAM KSDS data by primary key or alternate index; UNICODE output; submitting jobs to the batch.

9 standard and 1 optional hands on machine exercises

2 days; 262 pages, appendix, index; last updated: 2013)

Prerequisite: "Introduction to CGIs in z/OS" or equivalent experience plus experience writing COBOL programs.

Status: Needs 3 to 4 days system access; needs sponsor
Writing z/OS CGIs in Assembler Intended audience: z/OS Assembler programmers who need to create CGI programs to support a website hosted on z/OS UNIX.

Topics include: Coding, compiling, debugging, deploying, and maintaining CGIs written for the z/OS environment in Assembler; handling GET and POST requests; respond with dynamically created HTML pages; access environment variables; access DB2 data (optional); access VSAM KSDS data by primary key or alternate index; UNICODE output; submitting jobs to the batch.

9 standard and 1 optional hands on machine exercises

2 days; 264 pages, appendix, index; last updated: 2013)

Prerequisite: "Introduction to CGIs in z/OS" or equivalent experience plus experience writing Assembler programs.

Status: Needs 3 to 4 days system access; needs sponsor
 
 
 
 
 
 
 
 
  Technical Papers
  General z/OS thoughts
The Future of Mainframes is Now A brief summary of the evolution of Z/OS and z/Architecture, Language Environment as a common runtime for multiple languages and applications, and the availability of z/OS UNIX.

27 pages; USD 5.00
z/OS, Language Environment, and UNIX: How They Work Together A description of how all these components complement each other. Complements / expands a great deal on the "Future of Mainframes" paper above. Very rich.

157 pages; USD 10.00
Creating Modern Business Computer Applications on z/OS A survey of the skills an IT group will likely need as they move into the z/OS world running z/OS UNIX and maybe hosting a website on their mainframe

24 pages; USD 5.00
 
 
 
 
  z/OS Assembler Language
Doing Packed Decimal Arithmetic in Assembler A step by step description of using the packed decimal instruction set

100 pages; USD 12.00
Writing Reentrant Programs Definition of reentrant programs, techniques to use for creating reentrant programs, a sample program

26 pages; USD 6.50
Applications Assembler Programming for z: a discourse Discussion of changes brought about by system z hardware and z/OS for existing Assembler programs. A look at 64-bit registers, baseless programming, relative branching, the long displacement facility, the extended immediate facility

47 pages; USD 12.00
I/O and AMODE 31 Discussion of concerns to focus on when moving existing Assembler programs to work above the line

7 pages; USD 3.00
z/OS Control Blocks for Beginners Exploration of how z/OS uses control blocks to manage work. Addresses, pointers, chains, anchors, ASID, ASCB, RCT, TCB, PRB, SVRB, initiators, STC, dump task, XTLST, CDE, data areas, CVT, PSA, DDLIST command, SYSUDUMP.

Note that the links on page 48 are no longer working; instead use http://gsf-soft.com/zOS-links.html for the first and http://www.longpelaexpertise.com.au/ for the second.

52 pages; USD 10.00
 
 
 
 
  COBOL
Enterprise COBOL - A Tool for Growth Covers changes from older COBOL language spec to later, to provide insights into the conversion process

77 pages; USD 12.00
Enterprise COBOL Version 5.1 Differences Upgrading from COBOL 4 to COBOL 5 presents some challenges as well as some opportunites

7 pages; USD 4.00
 
 
 
 
  The Web on z/OS
Porting Apache 2.2.9 to z/OS 1.9 Step by step walk through. Even though both Apache and z/OS have later releases, the steps are similar to install later versions of Apach on later releases of z/OS

34 pages; USD 6.00
Setting up the IBM HTTP Server: A near-cookbook to get you going Similar to the Apache install above; you might want to read both papers and decide which server would work best for you

40 pages; USD 6.00
Hosting a web site on z/OS Describes lessons learned while getting a web site up and running under z/OS

17 pages; USD 4.00
An Introduction to Unicode Introduces the basics of Unicode and then focuses on how z/Architecutre and z/OS support Unicode

52 pages; USD 5.00
The Arc of DB2 (Using DB2 to work the World Wide Web) How current DB2 supports web features: BLOBs, CLOBs, and DBCLOBs; COBOL access to LOBs; DB2 support of Unicode; XML

100 pages; USD 15.00
Using DB2 LOBs While this paper overlaps the above paper a bit, it's main strength is it includes complete example of accessing a DB2 LOB using COBOL: an html form, a css style sheet, and a COBOL CGI program

50 pages; USD 8.00
Coding AJAX Applications (Using HTML, JavaScript and COBOL on z/OS) Here we describe the reason for using AJAX applications, and how to code them; describes six experiments including html pages, some COBOL, even a little php

80 pages; USD 15.00

 

On a different tack, here is my site of online courses for creating web pages using Notepad in Windows: Still Plugging Away

Note that if you have the IBM or Apache servers installed on your mainframe, you can use ISPF to code web pages following those courses.

 

Email us if you would like additional information. We would love to see your comments and recommendations for our site.