Thursday, December 13, 2007

CONSOLE DEFINITION GUIDE – by Senthil.U


Preamble:

The intention of the guide is to give a brief explanation of consoles and how to do the console definition for single LPAR [Not for SYSPLEX].

In this guide I assume that you have some mainframe experience and you can understand the terms like PARMLIB, PROCLIB, IEASYSxx, IPL, and POR etc...


What is console?

Console is a (mostly) display device which can be used to monitor the different activities of the system and interact to the system.


Types of consoles

There are three different types of consoles

1) MCS consoles
2) SMCS consoles
3) System Console


MCS (multiple console support) consoles are channel attached to the processors of the Mainframe e-server.

SMCS (SNA multiple console support) consoles use communication server to interact with ZOS. These consoles are called as Remote consoles.

System console is a primary console which is primarily used to interact with the system. This is called as master console.


Console Limit:

We can have 1-99 of MCS/SMCS consoles and one System console for a single LAPR or in a whole SYSPLEX.




PARMLIB members

This section describes the PARMLIB members that affect the console definition.

CONSOLxx – Main configuration dataset
PFKTABxx - Definition of PF Keys
MPFLSTxx - Message Processing Control
CNGRPxx - Candidate group definition


CONSOLxx Statements:

CONSOLE - used to define the characteristic of console.
DEFAULT – used to define routing codes for unsolicited messages
INIT - used to allocate the buffers for WTO, WTOR etc...

I covered all the necessary parameters of these statements in the following sections.


Sample Defintions:

Content of CONSOLxx member

INIT CMDDELIM(")
          MLIM(3500)
          LOGLIM(2500)
          MONITOR(DSNAME)
          MMS(NO)
          PFK(00)
          RLIM(10)
          UEXIT(N)

DEFAULT ROUTCODE(ALL)

CONSOLE DEVNUM(700)
                   ALTERNATE(701)
                   ROUTCODE(ALL)
                   PFKTAB(PFKTAB1)
                  AUTH(MASTER)
                  UNIT(3277-2)
                  MONITOR(JOBNAMES-T)
                  CON(N)
                  SEG(19)
                  DEL(RD)
                  RNUM(19)
                  RTME(1)
                  MFORM(J,T)
                 AREA(NONE)
Details:

INIT Statement:

CMDDELIM – is used to assign the command delimiter character so that the operators can issue multiple commands at a same time.

MLIM – it is used to specify the maximum no.of buffer limit for WTO messages
1 unit = 352 bytes

LOGLIM – used to specify maximum no of buffer limit for SYSLOG
1 unit = 140 bytes

MONITOR – this is the customization parameter for MOUNT request

MMS – used for message translation service

PFK – used to select PFKTABxx member

RLIM - used to specify maximum no of buffer limit for WTOR messages
1 unit = 96 bytes

DEFAULT Statement:

ROUTECODE – used to assign route codes for unsolicited messages


CONSOLE statement:

DEVNUM - used to specify the console device address which is defined using HCD

ALTERNATE - used to specify the alternative console device address

ROUTCODE - what are messages we want to display in this console

PFKTAB - used to specify the Program function definition table

AUTH(MASTER) – used to specify the authentication level

UNIT(3277-2) - unit type in this case the screen size 24x80

MONITOR(JOBNAMES-T) - determine the depth of messages to be displayed in this case job name with time stamp

CON(N) - decide whether conversational or non conversational mode

SEG(19) - the no of lines to be deleted when you give CONTROL or SEG command

DEL(RD) – decide the deletion mode. In this case the mode is Roll and delete

RNUM(19) – no.of lines to be rolled off for each roll

RTME(1) - no.of seconds between each roll off

MFORM(J,T) – message format j-job,T-with time stamp

AREA(NONE) – out-line-display area the minimum and maximum limit depends on the unit type.



Example of PFKTABxx


PFKTAB TABLE(PFKTAB1)
PFK(01) CMD('K S,DEL=RD,SEG=19,CON=N,RNUM=39,RTME=01,MFORM=J;K A,NONE')
PFK(02) CMD('K E,1 ERASE ONE LINE')
PFK(03) CMD('K E,D ERASE STATUS DISPLAY IN AREA')
PFK(04) CMD('K D,F FRAME DISPLAY FORWARD IN AREA')
PFK(05) CMD('K S,DEL=N HOLD IN-LINE OUTPUT')
PFK(06) CMD('K S,DEL=RD RESUME IN-LINE OUTPUT')
PFK(07) CMD('D A,L LIST ACTIVE JOBS AND TSO USERS')
PFK(08) CMD('D R,L LIST OPERATOR REQUESTS')
PFK(09) CMD('K D,U UPDATE DYNAMIC DISPLAY')
PFK(10) CMD('D C,M MASTER CONSOLE')
PFK(11) CMD('D C,HC HARDCOPY')
PFK(12) CMD('D A;D C COMMANDS')
So from the above contents it obvious to see each PF key is associated with one system command. So if you press any PF key then it will invoke the appropriate command.

Post-amble:

If you want to know further details, you can refer the following Redbooks

1) MVS Initialization and Tuning Reference

2) Z/OS MVS Planning: Operations.



Best of luck.

No comments: