http://www.flickr.com/photos/microraptor/5240669099/

Please refer to the MVS Initialization and Tuning Reference’  or the MVS Initialization and Tuning Guide’

Time and time again I was told to reference either the “MVS Initialization and Tuning Reference” or the “ MVS Initialization and Tuning Guide” more than any other manuals in the entire z/OS Internet Library.

Both these manuals cover the settings and configuration of MVS which is for the most part everything that’s in the PARMLIB dataset.

Unfortunately these manuals are about as exciting as reading the phone book.  Do I suggest Millennial Mainframers going through the entire manuals and comparing it to what your shop uses?  Yes!

It took me awhile but I grabbed our shop’s SYS1.PARMLIB listing and went through the entire listing and looking up what each setting did in the the “Init and Tuning Reference” primarily,  using my handy WikidPad to as I journeyed through.

I often reference my initial notes and discoveries to this day.

PARMLIB

 Why is PARMLIB so important?

If trying to use microprocessor terms,  PARMLIB is like the System Settings in Windows or OS X.  Within this dataset are the that defaults and setting for the entire z/OS system.  Knowing where to poke around as a Systems Programmer or where to ask for changes is an essential skill set.

More often than not, if you’re having issues with z/OS the first place you will want to check is the PARMLIB.

Here’s a few important members just to give you an idea how PARMLIB works:

IEASYMxx

Defines static system symbols.

SYSDEF LPARNAME(TST1) 
SYSNAME(TST1) 
SYMDEF(&SYSETC='&SYSNAME') 
SYMDEF(&RMDSCLS='N') 
SYMDEF(&S='&SYSNAME(-2:2)') 
SYMDEF(&SN='101') 
SYMDEF(&DOMAIN='CNMT1') 
SYMDEF(&NVASSLU='Z') 
SYMDEF(&MASTYPE='MASTEST') 
SYSPARM(T1)

Now if I were to use the symbolic &SYSNAME in another member the system will translate this into TST1

 

 

PROGxx

PROGxx (authorized program list, exits, LNKLST sets and LPA)

The PROGxx parmlib member contains the following optional statement types:

  • APF, which defines the format and contents of the APF-authorized program library list.
  • EXIT, which controls the use of exits and exit routines.
  • SYSLIB, which allows for the definition of alternate data sets for the system defaults (SYS1.LINKLIB, SYS1.MIGLIB, SYS1.CSSLIB, SYS1.SIEALNKE, SYS1.SIEAMIGE, and SYS1.LPALIB) at the beginning of the LNKLST and the LPALST concatenations.
  • LNKLST, which controls the definition and activation of a LNKLST set of data sets for the LNKLST concatenation.
  • LPA, (Link Pack Area) which defines the modules to be added to, or deleted from, LPA after IPL.
  • REFRPROT, which indicates that REFR programs are protected. Use the REFRPROT statement type to specify that REFR programs are protected from modification by placing them in key 0, non-fetch protected storage, and page protecting the full pages
  • NOREFRPROT, which indicates that REFR programs are not protected. 

Adding APF authorization to libraries  is sometimes a necessity when installing new software, and if not will result in a Return Code error when the system attempts to use these libraries.  In this example there is three”APF ADD” statements.

SYS1.PARMLIB(PROGAU)
********************************* Top of Data *****************
APF FORMAT(DYNAMIC) 
APF ADD DSNAME(ASM.SASMMOD1) VOLUME(******) 
APF ADD DSNAME(BACU.PRODINFO.WEBA.LOAD) VOLUME(FIN002) 
APF ADD DSNAME(BACU.TDLA.SIZDLOAD) SMS 

In this example:

Line #4:  ADD datasetname  “ASM.SASMMOD1” and assigns the volume to ‘******‘ which means that the system is to use the volume serial number of the current system residence (SYSRES) volume.  At our shop we have several “SYSRES” volumes and this can change depending on the LPAR

Line #5:  ADD datasetname  “BACU.PRODINFO.WEBA.LOAD” specifically using VOLUME(FIN002)  

Line #6:  ADD datasetname “BACU.TDLA.SIZDLOAD” which in on a volume that is SMS managed.

 

IEASYSxx

This is the grand daddy of all the members!  This member as per the reference manual:

You can specify system parameters using a combination of IEASYSxx parmlib members and operator responses to the SPECIFY SYSTEM PARAMETERS message. You can place system parameters in the IEASYS00 member or in one or more alternate system parameter lists (IEASYSxx) to provide a fast initialization that requires little or no operator intervention.

In many cases the IEASYSxx define what the other members in PARMLIB will be using.  For example CMD=00 completes the name of the parmlib member COMMNDxx which will be COMMAND00 , which contains commands to be issued internally during master scheduler initialization.

Here’s an example of IEASYSXX (system parameter list):

SYS1.PARMLIB(IEASYS00) 
********************************* Top of Data *****************
ALLOC=00,               ALLOCATION SYSTEM DEFAULTS
CLOCK=00,               PROMPT OPERATOR FOR TOD
CLPA,                   CLEAR LINK PACK AREA - REMOVED VIO
CMB=(COMM,200),         CMB SET TO 200 FOR COMMS DEVICES
CMD=00,                 COMMANDS AUTOMATICALLY ISSUED AT IPL
CON=00,                 CONSOLE CONFIGURATION DEFINITION
COUPLE=00,              CROSS-SYSTEM COUPLING FACILITY (XCF)
CSA=(3200,153600),      3.5 MB CSA AND 150MB ECSA
DIAG=00,                CONTROL CS TRACKING AND GFS TRACE
DUMP=NO,                PLACE SVC DUMPS ON DASD DEVICES
FIX=00,                 FIXED LPA LIST
GRS=STAR,               GRS COMPLEX MODE
GRSCNF=00,              GRS CONFIGURATION
GRSRNL=00,              GRS RESOURCE NAME LISTS
IKJTSO=00,              TSO/E COMMANDS AND PROGRAMS
IOS=00,                 MISSING INTERRUPT HANDLER (MIH)
LPA=(00,L),             SPECIFY LPALST00 AS LPA LIST
LOGCLS=L,               SYSLOG
LOGLMT=999999,          MUST BE 6 DIGITS,MAX WTL MESSAGES QUEUED
LOGREC=SYS1.LOGREC.&SYSNAME.,
MAXUSER=600,            (SYS TASKS + INITS + TSOUSERS) < 600
MSTRJCL=00,             MASTER SCHEDULER JCL
OPI=YES,                ALLOW OPERATOR OVERRIDE TO IEASYS00
OPT=00,                 SPECIFY IEAOPT00 (SRM TUNING PARMETERS)
PAGE=(PAGE.PLPA.&SYSNAME.,
      PAGE.COMMON.&SYSNAME.,
      PAGE.LOCAL1.&SYSNAME.,
      PAGE.LOCAL2.&SYSNAME.,
      PAGE.LOCAL3.&SYSNAME.,L),
PLEXCFG=MULTISYSTEM,   TYPE OF PLEX, ANY ALLOWS GRS-STAR OR MIM
PROD=00,               PRODUCT ENABLEMENT POLICY
PROG=(EX,AU,LK,LS),    EXITS AUTHORIZATION AND LINKLST
REAL=0,                NO V=R STORAGE
RSVNONR=800,           ASVT RESERVED ENTRIES(REPLACEMENTS)
RSVSTRT=5,             ASVT RESERVED ENTRIES(STARTS)
SCH=00,                SVC TABLE SCHED00
SMF=00,                SELECT SMFPRM00, SMF PARMETERS
SSN=00,                SUBSYSTEM DEFINITIONS
SQA=(16,1200),         SQA=(16*64K),ESQA=(1200*64K)
SVC=00,                INSTALLATION-DEFINED SVCS
UNI=01,                UNICODE CONVERSION SERVICES
VAL=00,                SELECT VATLST00 DEFAULT
VIODSN=SYS1.STGINDEX.&SYSNAME.,
VRREGN=64              DEFAULT REAL-STORAGE REGION SIZE DEFAULT
******************************** Bottom of Data ***************

This is just a fragment of what an actual PARMLIB would consist of.  Keep in mind if you made changes to the PARMLIB they might not even take effect until the next IPL or until you issue a refresh command of some kind.  More importantly PARMLIB changes could seriously impact the system at large!

So please ‘PARMLIB‘ responsibly!

Nahuel Tori

(Nahuel Tori está en el extremo derecho)

English version

Unos días antes de Navidad…

Me llegó un mail de IBM anunciando los resultados del concurso Master the Mainframe Sudamérica 2012. Con mucha ansiedad abrí el mail, y recibí la grata sorpresa de que había terminado en el primer puesto. Realmente no lo esperaba, ya que fue un concurso con muchas tareas desafiantes, y una gran cantidad de participantes de toda latinoamérica.
El día de la entrega de premios en el edificio de IBM, también me sorprendí al encontrarme con algunos conocidos: el segundo lugar en fue para un compañero de la facultad de Ingeniería de la UBA, al cual había invitado al concurso y charlamos al inscribirnos. También me encontré con otro conocido, un ex-compañero de trabajo, quien estudia en la UTN. El mundo de sistemas es muy chico, y más todavía el de Mainframe: uno siempre se vuelve a encontrar con viejos compañeros.

El tratamiento “VIP”

El premio por obtener el primer lugar, consistía en un viaje a la planta de IBM en Poughkeepsie, el cual estuvo estupendo. La planta es enorme, como una mini ciudad, que posee instalaciones donde se fabrican integralmente todos los equipos: desde la confección de los circuitos y ensamble, hasta el testeo, puesta a punto y envío a los clientes. Lo que más me asombró de toda la instalación, es el aprovechamiento que realizan del agua fría del río Hudson: a través de tuberías se ingresa el agua fría a las instalaciones, la cual se utiliza para refrigerar todo tipo de equipos e instalaciones: funcionamiento de los mainframes, servidores y un Green Data Center. Pude apreciar que todos los edificios contaban con cañerías con agua fría a disposición, y debajo de todos los pisos flotantes había conexiones de agua para conectar directamente a los equipos. Es de resaltar que esta utilización del agua es totalmente ecológica, ya que es devuelta al río sin ninguna alteración ni modificación, apenas unos grados de diferencia de temperatura. Y además permite ahorrar mucha electricidad en equipos de refrigeración.

Los otros ganadores

En Poughkeepsie me encontré con los ganadores del concurso de otros países: los tres primeros puestos de EEUU y Canadá, y el ganador de España. Quiero destacar también la gran hospitalidad y amabilidad de todos los empleados de IBM con que nos recibieron a los ganadores, quienes dedicaron dos días a enseñarnos y contarnos sus tareas en la planta, y charlar con nosotros sobre la tecnología actual y todas las dudas que tuviésemos sobre lo que hacen.
Creo que fue una experiencia muy enriquecedora tanto para mi carrera profesional como para mi vida, ya que pude conocer a muchas personas importantes e interesantes de la industria y sus profesiones, a la vez que compartir su cultura y ofrecer un poco de la propia.

 

Muchas gracias por la oportunidad, y hasta el próximo encuentro!

 
 

Nahuel Tori

(Nahuel Tori, Argentina far right)

Versión española

A few days before Christmas…

I got an email announcing the results IBM Master the Mainframe Contest South America 2012.  With much anxiety I opened the mail , and I received the pleasant surprise that I was in the first place .  I really did not expect it , as it was a competition with many challenging tasks , and a large number of participants from throughout Latin America .

The day of the awards ceremony in the IBM building, I was also surprised to meet some acquaintances : the second place went to a fellow of the Faculty of Engineering of the University of Buenos Aires , whom he had invited to the contest and talked to enroll.  I also met by another acquaintance , a former co-worker, who studies at NTU.  The world is very small, and even more so the Mainframe : you always reconnects with old friends .

VIP Treatment

The prize for getting first place , was on a trip to the IBM plant in Poughkeepsie , which was great.  The plant is huge, like a mini city, with facilities that manufacture integrally all the teams: from the manufacture of circuits and assembly; testing; commissioning; and delivery to customers.

What amazed me about the entire system is using cold water from the Hudson River.  Cold water enters through pipes throughout the facility cooling all kinds of equipment and facilities : operation mainframes, servers and Green Data Center.  I could see that all buildings had cold water pipes on hand, and under all floating floors had water connections to connect directly to computers.  It is noteworthy that this water is completely organic, as it is returned to the river without any alteration or modification, only a few degrees difference in temperature.  And it saves a lot of electricity on refrigeration equipment.

The Other Winners

In Poughkeepsie I found the winners from other countries : the top three U.S. and Canada , and the winner of Spain.  I noted also the great hospitality and friendliness of all IBM employees that greeted the winners, who devoted two days to teach us and tell us your tasks on the ground, and chat with us about current technology and all the doubts that we had about what they do .

I think it was a very enriching experience both for my career and for my life, since I was able to meet many interesting and important people in the industry and the professions, while sharing their culture and offer some of their own.

Thank you very much for the opportunity , and until we meet again !