| Front Page | News Headlines | Technical Headlines | Planning Features | Advanced Search |
Acucorp Sponsor Message

     

How to Get the Numbers

By Steve Hammond

I don’t get my kid’s music. She’s 16, normal, a good student, but she listens to some of the strangest music. But of course, my father disliked my tunes and I suspect it’s been that way going back thousands of generations.

Ogg and Thagg sit in the cave. In another part of the cave sits Ogg, Jr. and several of his friends pounding rocks and sticks together. Suddenly Ogg shouts, “Could you turn down that noise! Oy, you call that music?” Thagg agrees, “Not like our music - the pure sound of rock hitting rock, none of this crap with the sticks and the twigs. Those kids are going to be the death of me!”

Well, I guess I’m not alone. But what really surprises me is that every group or band that my daughter likes has a number in it — Blink 182, Eve 6, Matchbox 20.

Anyway, that got me thinking about how one of our favorite MPEX commands can be enhanced by a few simple numbers. That command is LISTF and the numbers range from -3 through 6. And if you’ve only used 1, 2 and 3 — well, there’s a whole different world of LISTFs out there. Let’s save some time, paper and electrons. I am going to assume that everyone knows all about LISTF, 0 (the default), 1, -1 and 2. If you do not know these commands, then I recommend that you sign up for the remedial class MPE 101 at the Fiorina School of Orphan Operating Systems.

It’s when we get to LISTF,3 we start to see the difference and power of MPEX.

%LISTF,3
                          MPEX %LISTF @   PAGE 1
         STEVE,MANAGER.TESTACCT,PUB   THU, JUL 17, 2003,  2:44 PM

ACCOUNT=  TESTACCT    GROUP=  PUB

FILENAME CODE  CREATOR  CRE-DATE  MOD-DATE  MOD-TIME  ACC-DATE  RST-DATE

FILE0          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
FILE1          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
FILE2          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
FILE3          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
FILE4          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
FILE5          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
FILE6          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
FILE7          MANAGER  17 JUL 03 17 JUL 03 01:58 PM 17 JUL 03 17 JUL 03
KFILE    KSAM  MANAGER  17 JUL 03 17 JUL 03 01:59 PM 17 JUL 03 17 JUL 03
KFILEK   KSAMK MANAGER  17 JUL 03 17 JUL 03 01:59 PM 17 JUL 03 17 JUL 03
TESTDB   PRIV  MANAGER  17 JUL 03 17 JUL 03 02:00 PM 17 JUL 03 17 JUL 03
TESTDB01 PRIV  MANAGER  17 JUL 03 17 JUL 03 02:00 PM 17 JUL 03 17 JUL 03
TESTDB02 PRIV  MANAGER  17 JUL 03 17 JUL 03 02:00 PM 17 JUL 03 17 JUL 03

GROUP     TOTAL:    13 FILES        5 MEGABYTES          21424 SECTORS

I have always found the MPE LISTF,3 to be all but worthless. In MPEX, you can, in an easy glance, see the file code, creator and the creation, modification, access and restore dates and last access time. The MPEX LISTF,3 shown below is much easier to deal with when looking for files that have been ‘touched’ recently.

I find the MPEX LISTF,3 format far more user-friendly than the MPE — it has the information you need all right in front of you, instead of spread out over multiple screens.

Now we move into the realm of the unknown, LISTF,4 (Figure 2).

%LISTF,4
                            MPEX %LISTF @   PAGE 1
           STEVE,MANAGER.TESTACCT,PUB   THU, JUL 17, 2003,  2:54 PM

ACCOUNT=  TESTACCT    GROUP=  PUB

-----FILE------ EXTENTS           -----SECTORS-----  DEVICE            LABEL
NAME      CODE  NUM MAX           USED NOW  SAVABLE  CLASS             LDEV

FILE0             4  32               2048     1040  DISC              37
    Dev/Sector:   37/%0000016534760  37/%0000016535360  37/%0000016535760
    Dev/Sector:   37/%0000016536760
FILE1             3  32               1024      304  DISC              34
    Dev/Sector:   37/%0000016540760  37/%0000016541360  37/%0000016541760
FILE2             3  32               1024      336  DISC              33
    Dev/Sector:   37/%0000016542760  37/%0000016543360  37/%0000016543760
FILE3             4  32               2048     1040  DISC              32
    Dev/Sector:   37/%0000016544760  37/%0000016545360  37/%0000016545760
    Dev/Sector:   37/%0000016546760

This command gives us some deeper information on where the file resides. In this example, FILE0 has four extents with a maximum of 32. It is currently using 2048 sectors, but more than half of them (1040) could be saved using the command ALTFILE with the BLKFACT=BEST;SQUEEZE option. The file was written to the device class DISC and its label is on logical device 37. The following lines tell us that all four extents are on device 37 and we also are provided the sector where that extent resides.

Now for the big question — how is this useful? If you ever decide to do some ‘disc balancing’ (i.e. moving IMAGE masters onto one disk and details onto another), it is helpful to know where those files are before you start.

LISTF,5 is used exclusively for program files.

%LISTF,5
                  MPEX %LISTF @   PAGE 1
  STEVE,MANAGER.DCSHSS,PUB   FRI, JUL 18, 2003,  2:29 PM

ACCOUNT=  DCSHSS      GROUP=  PUB

FILENAME  MAXDATA STACK DLSIZE DBSIZE #SEGS  CAPABILITIES

DEADLINE        0           -1               BA IA
SLEEP           0           -1               BA IA PH
TDP         32000  1200      0   1911    27  BA IA DS PH
UPDATE          0           -1               BA IA
VALIDATE    30000  1200      0  12236     2  BA IA

GROUP     TOTAL:     5 FILES        1 MEGABYTE            4304 SECTORS

The significant part of this report is the list of capabilities which a program was PREPed with and the MAXDATA value for the two CM programs. Also shown are the DBSIZE, which shows the size of the program’s global variable area, the number of segments in the program and the stack and dl sizes.

I have used LISTF,6 many times when I have been doing two step processes.

%LISTF,6
FILE0.PUB.TESTACCT
FILE1.PUB.TESTACCT
FILE2.PUB.TESTACCT
FILE3.PUB.TESTACCT
FILE4.PUB.TESTACCT
FILE5.PUB.TESTACCT
FILE6.PUB.TESTACCT
FILE7.PUB.TESTACCT
KFILE.PUB.TESTACCT
KFILEK.PUB.TESTACCT
TESTDB.PUB.TESTACCT
TESTDB01.PUB.TESTACCT
TESTDB02.PUB.TESTACCT

Why have I used it? I have often had to have search for files using various attributes, but I need the list of file names to do a subsequent step. LIST,6 gives me a list of fully qualified file names, which I put out into a separate file. I use that file as an indirect file in my next step.

The last two “numbered” LISTF commands I want to mention can be covered quite simply - LISTF,-2 tells you everything you need to know about ACDs on your fileset and LISTF,-3 is like the MPEX LISTF,-3 which is like the old LISTDIR5’s LISTF;PASS.

As an added bonus this month, I will share with you the MPEX command I have used more than any other in my erstwhile career — LISTF,ACCESS (Figure 4).

Many has been the time I needed to run a process that needed exclusive access to a database and I needed to get everyone out of the database. LISTF,ACCESS quickly gave me the ability to find out who to call or whose desk I would need to visit to log them off. It made life much easier.

Steve Hammond, who works for a professional association in Washington, DC, knows that “Eve 6” is a reference to the “X Files.”


Copyright The 3000 NewsWire. All rights reserved.