Tuesday, April 16, 2019

z/OS Compile Process

Programs are written in programming languages that humans can understand. However, the processor cannot understand these languages. These languages need to be translated into machine language to make them useful. The process of translating these programming languages into machine language is called Compiling.

Wednesday, April 25, 2018

ICEGENER More Efficient than IEBGENER

MVS users know IEBGENER is used to copy files. However, it can also be very slow compared to SYNCSORT. The good news is that SYNCSORT has ICEGENER. The JCL for this is similar to IEBGENER except that it is more efficient.

PL/1 DB2 Program ABEND S0C1

Technologies Used:
  • PL/1 3.8
  • DB2
  • z/OS
Caused By:
An 0C1 ABEND is caused by an invalid instruction.

Normally, 0C1 is caused by writing to an unopened file. But this was strange because there were no files that had to be written and the only I/O was to DB2.

A few discussion with our technical guy pointed to PL/1 compiler not actually generating data areas of variables if they are not being used. For some reason, this messes up the program during execution. I was led on a wrong path because someone suggested that I had to initialize all variables in the PL/1 program. I thought that this was not solution because if it was, then a lot of people would have complained.

Another option was to look at the parameters during the compile. I added the INIT parameters during the compile and still no success. Tried the STATIC(FULL) option and still no success.

Left without any other option, I stripped off all variables and ran the program only with the SQL statement. The program executed the SQL statement without any problem. I then slowly added a bunch of variables until I hit the one that caused the ABEND.

Quite a pain to do, but was finally able to isolate the problem and more importantly, fix it.

Auditing RACF Using Microsoft Access or any SQL Database

Executive Summary

Aside from being difficult, auditing RACF requires special skills. It needs understanding of RACF concepts plus understanding of the other subsystems being audited. A comprehensive manual audit took four auditors two months to complete. This can make the audit report irrelevant by the time it is released because errors may have been corrected already - making the auditors look incompetent - or worse, security breach may have occurred without the auditors detecting it.

Friday, September 22, 2017

Mainframe Batch Processing: What is Job Control Language (JCL)

Mainframe batch processing requires a job. Jobs are created using Job Control Language (JCL). What is in a JCL? How can you use it?

What are Generation Data Groups (GDG)

z/OS has a facility that allows you to keep versions of a file. This facility is called Generation Data Groups (GDG).

What is a Job Entry Subsystem (JES)

The Job Entry Subsystem (JES) manages jobs within an z/OS system. This article discusses the various stages in the lifecycle of a job.

Micro Focus Enterprise Analyzer

The Micro Focus Enterprise Analyzer (EA) is a tool that allows you to track your configuration items (CI’s) on the mainframe. We use it to provide an inventory of all CI’s we use so we can use the information for one of our projects.

Tuesday, December 13, 2016

Hercules/MVS Turnkey - MVS on a PC

I started my career as an operations analyst. Worked my way up to be a systems programmer for MVS. During my career as a systems programmer, I wrote several assembler programs on MVS. Those were interesting days and nights.

I was actually surprised to know that I can install MVS on my PC. The same version of MVS I supported - MVS 3.8! I know, it's not state of the art. It's just 24 bit addressing! But I think it is a good tool if one wishes to learn about operating systems in general and MVS in particular. Or if one just wants to relive old glory days in writing assembler code.

Sunday, February 15, 2015

Mainframe System Modernization: Reality Check

I just realized that the mainframe systems I support had been running for decades some even going back to the 1980’s. The interesting thing is there had been several hardware, operating system, database transaction processor and compiler upgrades, not to mention other system programs, and probably the greatest effort done on these was the Y2K conversion. Other than that, the most you probably have to do is some maintenance that takes a day to do. They all run in the production box without any tweaks to the system.

Follow by Email

Total Pageviews