z/OS Study Center
Available Courses
and supplemental papers

Study Center home page

Background
Courses details
Order form

Courses

General Courses
   Intro. to App. Progrming.
   Intro. to z/OS

TSO/ISPF
   TSO/ISPF in z/OS
   ISPF update
   Advanced Topics in ISPF
   ISPF & JCL on z/OS
   TSO CLIST
   TSO REXX
   TSO & REXX APIs
   Dialog Manager

JCL & Utilities
   z/OS JCL & Utilities
   Advanced JCL
   DFSORT and ICETOOL

Assembler Language
   Assembler - beginnings
   Assembler - interfaces
   Assembler - update
   Assembler - zArchitecture

COBOL
   Structured COBOL
   COBOL Advanced Topics
   COBOL Debugging
   COBOL Update
   COBOL Unicode and XML
   COBOL and VSAM

VSAM
   VSAM with AMS
   COBOL and VSAM
   PL/I and VSAM

Language Environment
   LE Services in z/OS
   Cross Prgm Comm.
   DLLs in z/OS

UNIX System Services
   Intro. to z/OS UNIX
   Shell Script Programming
   Dev. Apps for z/OS UNIX
   CGIs in z/OS UNIX
   Assembler z/OS CGIs
   COBOL z/OS CGIs


Technical Papers

   General
      Mainframe future
      z/OS, LE, UNIX
      Modern apps

   Assembler language
      Packed decimal
      Reentrant programs
      Assembler for z
      I/O and AMODE 31
      Control blocks

   COBOL
      Enterprise COBOL
      COBOL 5.1 diffs.

   The web on z/OS
      Porting Apache
      IBM HTTP server
      Hosting website
      Intro. to Unicode
      Arc of DB2
      Using DB2 LOBs
      Coding AJAX apps

 

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) 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. (180 pages, index; 2 days; last updated: 2013)

Prerequisite: None, just an apptitude for programming.
Introduction to z/OS Intended for developers new to IBM mainframes (or familiar with IBM mainframes but not familiar with z/OS). Vocabulary and descriptions, no labs. (198 pages, index; 1 day; last updated: 2013)

Prerequsite: familiarity with any non-z/OS system
 
 
 
 
  TSO, CLIST, REXX, ISPF / Dialog Manager
TSO/ISPF in z/OS A thorough, intense introduction to ISPF for developers and systems people. Covers structure / organization of ISPF, many z/OS terms, ISPF commands and look-and-feel, 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 Flasher, or (E)JES. (432 pages, 2-page summary sheet, index; 3 days; last updated: 2012)

Prerequisite: None, although it helps to have some background such as found in "Introduction to Application Programming (z/OS)"
ISPF Update Here's a chance to get up to date with all the changes that have been implemented in ISPF since you first learned it. There are lots of new commands and new capabilities that can allow you to be more effective using this tool. (270 pages, index; 2 days; last updated: 2013)

Prerequisite: ISPF knowledge / background; this is an update for experienced ISPF users
Advanced Topics in ISPF A deeper exploration of a few topics in ISPF: how to use the Status Area (including the undocumented appointment calendar feature), command nesting, more dslist (ISPF 3.4) commands and features, the edit compare command, the search and compare dialogs, additional ASCII and Unicode support, an introduction to edit macros. (152 pages, index; 1 day; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.
TSO CLIST Programming in z/OS An introduction to the CLIST language, primarily for those who need to maintain existing CLISTs; also, the only place where we teach the native TSO edit command. (322 pages, index; 3 days; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.
ISPF and JCL on z/OS 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. (662 pages, ISPF summary sheet, JCL summary sheet, index; 5 days; last updated: 2012)

Prerequisite: None, although it helps to have some background such as found in "Introduction to Application Programming (z/OS)"
TSO REXX programming in z/OS A thorough introduction to REXX on z/OS, including a number of TSO commands, and how to use the REXX compiler. (520 pages, summary of REXX commands and TSO commands covered, index; 5 days; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.
Introduction to TSO and REXX APIs Covers 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 using ADDRESS LINK, ADDRESS ATTACH, ADDRESS LINKMVS, ADDRESS ATTCHMVS, ADDRESS LINKPGM and ADDRESS ATTCHPGM. (196 pages, index; 2 days; last updated: 2012)

Prerequisite: "TSO REXX programming in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C
Developing Dialog Manager Applications in z/OS 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. (682 pages, appendices, index; 5 days; 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.
 
 
 
 
  JCL and Utilities
z/OS JCL and Utilities A very intense introduction to JCL, covering all the essentials (JOB, EXEC, DD, OUTPUT, IF / THEN, ELSE, ENDIF, INCLUDE, SET, JCLLIB, PROC, PEND, cataloged and instream procedures, symbolic parameters) as well as a few utilities (IEBGENER, IDCAMS, SORT). (344 pages, JCL summary sheet, index; 3 days; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.
Advanced Topics in z/OS JCL This class covers most of B-610 very quickly, setting environment for deeper lectures at various points, then moves in to new territory (JCL debugging, VIO, multi-volume data sets, extended format data sets, striped data sets, large format data sets, HFS files, IEBGENER, IEBCOPY, more advanced sort techniques, GDGs, Internal readers, step restart, JES control statements, and more). (416 pages, JCL and JES control statements summary, index; 3 days; last updated: 2012)

Prerequisite: "z/OS JCL and Utilities", or equivalent experience.
Using DFSORT and ICETOOL The only DFSORT / ICETOOL course on the market, this is a deep and extensive examination of these two utilities. (562 pages, appendices, index; 4 days; last updated: 2012)

Prerequisite: "z/OS JCL and Utilities", or equivalent experience.
 
 
 
 
  Assembler Language
z/OS Assembler Programming, Part 1: Beginnings This first class in the series introduces the fundamental, underlying concepts, the classic hardware instructions, Assembler instructions (DS, DC, CSECT, END, START, ORG, DSECT, AMODE, RMODE, EQU, CNOP), and all the solid fundamentals. (402 pages, instruction summary, index; 5 days; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.
z/OS Assembler Programming, Part 2: Interfaces Building on the first class in the series, this course covers standard linkage conventions, QSAM file processing, subroutine linkages, introduction to the program binder, and debugging. Some system services (WTO, SNAP, TIME, STCK, CONVTOD, LOAD, DELETE, LINK, XCTL, GETMAIN, FREEMAIN) are discussed. Includes handling of variable length records, QSAM update in place, 31-bit addressing concerns and writing re-entant code. (304 pages, appendices, index; 3 days; last updated: 2012)

Prerequisite: "z/OS Assembler Programming, Part 1".
z/OS Assembler Programming, Part 3: Update This course covers new hardware instructions introduced by machines in the 1990's as well as features introduced in HALSM V1R4. Includes the halfword immediate instructions, relative branching, Unicode support, new Assembler parm features, and new USING features. (144 pages, appendix, index; 1 day; last updated: 2012)

Prerequisite: "z/OS Assembler Programming, Part 2", or equivalent experience.
z/OS Assembler Programming, Part 4: z/Architecture Keeping it all current, this course covers all the new hardware instructions introduced with the various System z machines (at least, those features relevant to application programs) as well as the new facilities in HLASM V1R5 and V1R6. Includes working with 64-bit addresses and integers, new save area conventions, some of the new system services (IARV64 especially) and some of the enhanced support in the program binder. Also includes a description of the new instructions in the new zEC12 mainframe from IBM, announced in August of 2012. (552 pages, index; 4 days; last updated: 2013)

Prerequisite: "z/OS Assembler Programming, Part 3", or equivalent experience.
 
 
 
 
  COBOL
Structured COBOL Workshop for Enterprise COBOL This is a first course for programmers new to COBOL. It could be their first programming language, or it also works if the programmer is adding COBOL to their existing skill set. (524 pages, appendix, index; 5 days; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.
Advanced Topics in COBOL (Enterprise COBOL, z/OS) This course builds on the previous course by adding discussions on subroutines, tables (with subscripts and indexes), variable length records, string handling, and, optionally, the COBOL SORT and MERGE verbs. (302 pages, index; 3 days; last updated: 2012)

Prerequisite: "Structured COBOL Workshop for Enterprise COBOL", or equivalent experience.
Enterprise COBOL Debugging and Maintenance This course focuses on debugging COBOL programs, including using LE dumps (CEEDUMPs), tools available in the COBOL language, and LE condition handling. It also includes a deeper look into subroutines and the program binder. (314 pages, appendices, index; 2 days; last updated: 2012)

Prerequisite: "Advanced Topics in COBOL (Enterprise COBOL, z/OS)", or equivalent experience.
Enterprise COBOL Update Intended for experienced programmers who have not had a chance to get caught up with the latest IBM COBOL compilers, this course covers all the significant changes in COBOL from COBOL II V3 through Enterprise COBOL V4R2, including a brief introduction to Language Environment. (404 pages, appendix on Millenium Language Extensions, index; 2 days; last updated: 2012)

Prerequisite: Experience writing COBOL programs.
Enterprise COBOL Unicode and XML Support This course if for the experienced COBOL programmer who has a need to process XML data from a COBOL program. Since Unicode plays a prominent role in XML, we begin with a look at the features included in COBOL for working with Unicode data, then we explore XML PARSE and XML GENERATE (using both XMLPARSE(COMPAT) and XMLPARSE(XMLSS) options). (228 pages, appendix, index; 2 days; last updated: 2013)

Prerequisite: "Enterprise COBOL Update", or equivalent experience.
 
 
 
 
  VSAM
VSAM With Access Method Services Here we cover VSAM vocabulary and concepts then how to load and display records from VSAM data sets, (includes coverage of ESDS, KSDS, RRDS, and AIX) and how to estimate space requirements for VSAM data sets. (196 pages, index; 2 days; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS", or equivalent experience.
VSAM for COBOL Programmers Here we cover VSAM vocabulary and concepts then how to load, access, and update VSAM data sets from COBOL programs (includes coverage of ESDS, KSDS, RRDS, and AIX). (260 pages, index; 2 days; last updated: 2012)

Prerequisite: Experience writing COBOL programs.
VSAM for PL/I Programmers Here we cover VSAM vocabulary and concepts then how to load, access, and update VSAM data sets from PL/I programs (includes coverage of ESDS, KSDS, RRDS, and AIX). (186 pages, index; 2 days; last updated: 2012)

Prerequisite: Experience writing PL/I programs.
 
 
 
 
  Language Environment, InterLanguage Communication, DLLs
Using LE Services in z/OS A thorough introduction to the terms, vocabulary, and concepts of Language Environment. This course also examines all the run time options and callable services and many ways to use these services from programs written in COBOL, Assembler, PL/I, and C. (620 pages, appendices, index; 3 days; last updated: 2012)

Prerequisite: "TSO/ISPF in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C.
Cross Program Communication in z/OS This course explores the intricacies of one program calling another. The calling program and the called program may be written in the same language or a different language (the course covers Assembler, COBOL, PL/I, and C: students choose the language(s) they want to explore). We explore static calls and dynamic calls. How to define variables, structures, and tables is explored, and how to pass these items (by reference, by content, by value) and how to receive them. This includes passing and recieving a variable number of parameters. The class delves into the structure of object code and the workings of the program binder. We also examine the creation and use of multiple entry points and shared data. (490 pages, appendices, index; 3 days; last updated: 2013)

Prerequisite: "Using LE Services in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C.
Creating and Using DLLs in z/OS In this course we examine the concepts and vocabulary of DLLs (Dynamic Link Libraries) and then put them into practice with labs that created and invoke DLLs. DLLs may be written in Assembler, COBOL, PL/I, and C, and they may be invoked from programs written in Assembler, COBOL, PL/I, and C - the invoking program does not have to be written in the same language as the DLL being invoked. We also discuss PL/I packages. (150 pages, index; 1 day; last updated: 2013)

Prerequisite: "Cross Program Communication in z/OS" and experience with one of these programming languages: Assembler, COBOL, PL/I, C.
 
 
 
 
  z/OS UNIX System Services and the World Wide Web
Introduction to z/OS UNIX This class provides a solid introduction to working in the z/OS UNIX environment, including over 60 commands and building a small (three page) website. Also discusses UDList (ISPF 3.17) and telnet. (512 pages, appendices including command summary, index; 3 days; last updated: 2013)

Prerequisite: "TSO/ISPF in z/OS" or equivalent experience.
Shell Script Programming in z/OS UNIX This course extends the work done in the above course by discussing additional commands and how to create and run shell scripts. Includes user-defined fucntions, sed, and the BPXBATCH facility. The interested student will also find a good introduction to vi and the bc programming language. (580 pages, appendicies, index; 2 days; last updated: 2013)

Prerequisite: "Introduction to z/OS UNIX" or equivalent experience.
Developing Applications for z/OS UNIX Here we move into coding programs that use z/OS UNIX facilities. The course supports Assembler, COBOL, PL/I, and C languages: the students each choose the language(s) they prefer to work in. The programs created can: interact with the user at a terminal, handle files (classic MVS files or z/OS files), and dynamically call subroutines. The programs can be run from the shell or, in some cases, in batch. We cover Assembling / compiling, and binding using z/OS UNIX commands instead of JCL. A deep exploration of make and makefiles allows creating procedures to simplify the maintenance process. (492 pages, appendices, index; 3 days; last updated: 2013)

Prerequisite: "Introduction to z/OS UNIX" or equivalent experience, plus experience with one of these programming languages: Assembler, COBOL, PL/I, C.
Introduction to CGIs in z/OS This course lays the groundwork for creating and running CGIs on a z/OS system used as a web server. Common terms, procedures, and data formats are discussed. Sample CGIs in many languages are used as examples. This course is expected to be followed by one of our langauge-specific CGI courses. (208 pages, appendix, index; 1 day; last updated: 2013)

Prerequisite: "You and z/OS and the World Wide Web" or equivalent experience.
Writing z/OS CGIs in Assembler Using techniques learned in previous courses, the student now learns how to code and run CGIs written in Assembler. These include handling redirection requests and both GET and POST requests. The CGIs access VSAM files and (if DB2 is available) DB2 tables. The use of Unicode is also covered, as well as submitting jobs to the batch from a CGI. (262 pages, appendix, index; 2 days; last updated: 2013)

Prerequisite: "Introduction to CGIs in z/OS" or equivalent experience and experience writing Assembler programs.
Writing z/OS CGIs in COBOL Using techniques learned in previous courses, the student now learns how to code and run CGIs written in COBOL. These include handling redirection requests and both GET and POST requests. The CGIs access VSAM files and (if DB2 is available) DB2 tables. The use of Unicode is also covered, as well as submitting jobs to the batch from a CGI. (220 pages, appendix, index; 2 days; last updated: 2013)

Prerequisite: "Introduction to CGIs in z/OS" or equivalent experience and experience writing COBOL programs.
 
 
 
 
 
 
 
 
  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.