Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...


Mainframe Open Education project is committed to sharing and engaging the community by joining events around mainframe. Familiarize yourself with the previous and upcoming events and engage with us.
To understand the role of the mainframe, we begin our journey by exploring enterprise computing, the counterpart to personal computing.
How businesses benefit from the use of mainframes
Here you can find our valuable Reviewers who volunteered their time for the project.
Learn what mainframes are and what place they take in your daily life.
Mainframe has evolved from S/360 till z16 and has been always relevant. Current days mainframe supports all the technologies and is the most sophisticated platform on the planet.




Exploring the Nexus of Traditional Power and Modern Agility
Industry education Marc Smith narrates this presentation about understanding the mainframe, its importance to the industry, who is using it and how, and what career opportunities are available.
Compare mainframe and server.
Understand how to secure data and facilitate compliance in the mainframe world.
Learn how and why mainframe is used by businesses.
A breakdown of how mainframes work

An introductory overview of more than 30 key terms used in mainframe management.
//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//IF (STEP1.RC = 0 AND STEP2.RC = 0) THEN
//STEP3 EXEC PGM=COPYOUT //* Copy output
//ELSE
//STEP4 EXEC PGM=PRTERRPT //* Print error report if failed
//ENDIF //STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output if tests pass
//STEP4 EXEC PGM=PRTERRPT, COND=(0,EQ) //* Print error report only if STEP3 failed//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=EVEN //* Always print error report (even on abend/failure)//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=ONLY //* Print error report only if previous step is failed or abended//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=(4095,LT) //* Error report always runs because RC never exceeds 4095//STEP1 EXEC PGM=IGYCRCTL //* Compile the program
//STEP2 EXEC PGM=TESTPROG //* Run tests
//STEP3 EXEC PGM=COPYOUT //* Copy output
//STEP4 EXEC PGM=PRTERRPT, COND=(4,EQ,STEP2) //* Print error report except for STEP2 RC=4//IEBCOMPR JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOMPR
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PS.DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD *
COMPARE TYPORG=PS
/*
////IEBGENER JOB (12345), CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD PATH='/mth9/input1/transfer.mon',
// FILEDATA=TEXT,PATHOPTS=ORDONLY
//SYSUT2 DD DSN=T12345.FILE2.PS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSIN DD DUMMY//IEBCOPY JOB (12345),'SELECTIVE COPY',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY OUTDD=SYSUT2,
INDD=SYSUT1
SELECT MEMBER=PROG1,PROG2
/* //IEBGENER JOB (12345), CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PDS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DD*
GENERATE MAXNAME=1
MEMBER NAME = MEMBER1
////IEBCOPY JOB (12345),'RENAME COPY',CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY OUTDD=SYSUT2,
INDD=SYSUT1
SELECT MEMBER=((OLDNAME,NEWNAME))
/* //IEBCOPY JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY OUTDD=SYSUT2,
INDD=SYSUT1
EXCLUDE MEMBER=TEMP1,OLDPGM
/* //IEBGENER JOB (12345),CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DUMMY//CREGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSIN DD *
DEFINE GDG(NAME(gdg-base-name) -
LIMIT(nnn) -
EMPTY|NOEMPTY -
SCRATCH|NOSCRATCH)
/*//IEBGENER JOB (12345),CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PDS(MEMBER1), DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PS, DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DUMMY//IEBGENER JOB (12345),CLASS=A, MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBGENER
//SYSUT1 DD DSN=T12345.FILE1.PS, DISP=SHR
//SYSUT2 DD DSN=T12345.FILE2.PDS(MEMBER1), DISP=SHR
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
//SYSIN DD DUMMY//IEBCOPY JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEBCOPY
//SYSPRINT DD SYSOUT=*
//SYSUT1 DD DSN=T12345.SOURCE.PDS,DISP=SHR
//SYSUT2 DD DSN=T12345.TARGET.PDS,DISP=SHR
//SYSIN DD *
COPY INDD=SYSUT1,
OUTDD=SYSUT2
/*
//CRTEGEN JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=IEFBR14
//MYGDG DD DSN=MYDATA.BACKUP.REPORT(+1),
// DISP=(NEW,CATLG,DELETE),
// SPACE=(CYL,(1,1),RLSE),
// UNIT=SYSDA,
// DCB=(RECFM=FB,LRECL=80,BLKSIZE=800,DSORG=PS)//ALTERGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSIN DD *
ALTER MYDATA.BACKUP.REPORT LIMIT(10)
/*
Published Articles on Mainframe Technologies
//DELETEGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE MYDATA.BACKUP.REPORT GDG FORCE or PURGE
/*
//MYJOB JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP01 EXEC PGM=IDCAMS
//SYSIN DD *
DEFINE GDG(NAME(MYDATA.BACKUP.REPORT) -
LIMIT(5) -
NOEMPTY -
SCRATCH)
/*
An overview of the MVS. The presentation includes topics on parallel sysplex, hardware, services, security and health checks.
This is a technical, in-depth presentation on using dynamic allocations, dynamic allocation services, control blocks, and a detailed examination of a dynamic allocation example program.
In-depth module training based on role chosen, includes Hands-on Labs, etc.

Learn how to build your mainframe skills and earn digital badges.



We are building out an AI mentor Gem with Gemini that can help guide you through your Mainframe journey! More details will be added to this page as it develops.
//ACESGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=MYPROGRAM
//INPUT DD DSN=MYDATA.BACKUP.REPORT(0),
// DISP=SHR//ACESGDG JOB (12345),CLASS=A,MSGCLASS=X,NOTIFY=&SYSUID
//STEP1 EXEC PGM=MYPROGRAM
//INPUT DD DSN=MYDATA.BACKUP.REPORT(-1),
// DISP=SHRGain access to an IBM Z system through the services available here.
Network with like-minded individuals through the available mainframe communities.






