$PAGE "MEASUREMENT INTERFACE SPECIFICATION INCLUDE FILE"                00001000
<<=========================================================             00002000
=                                                         =             00003000
=                      INCLMEAS - A5                      =             00004000
=                 MEASUREMENT INTERFACE                   =             00005000
=                                                         =             00006000
=========================================================>>             00007000
                                                                        00008000
EQUATE                                                                  00009000
   LDEVTABSIZE       =1024,                                             00010000
   CLASSCOUNT        =2,                                                00011000
   GLOBAL'HEADSIZE   =CLASSCOUNT+1,                                     00012000
   STD'SUBCLASS'OVHD =3,        << 3 WORD ENTRY 0 >>                    00013000
   CLASS0'SUBCLASSCNT=4,  !NUMBER OF SUBCLASSES FOR CLASS 0             00014000
   CLASS0'HEADSIZE   =CLASS0'SUBCLASSCNT+1,                             00015000
   C0SUB0'SEGRELOFF  =LDEVTABSIZE+       !OFFSET WITHIN MI'S            00016000
                       GLOBAL'HEADSIZE+  !XDS TO GLOBAL                 00017000
                       CLASS0'HEADSIZE+  !STATISTICS AREA (CLASS        00018000
                       STD'SUBCLASS'OVHD,!0, SUBCLASS 0)                00019000
   CLASS0'SUB0SIZE   =100,  !CLASS 0,SUBCLASS 0 SIZE                    00020000
   CLASS0'SUB1SIZE   =24,   !DISC ACTIVITY                              00021000
   CLASS0'SUB2SIZE   =4,    !LINE PRINTER ACTIVITY                      00022000
   CLASS0'SUB3SIZE   =4,    !TAPE ACTIVITY                              00023000
   C0SUB1'SEGRELOFF  =C0SUB0'SEGRELOFF+ <<POINTS TO ITEM 0  >>          00024000
                       CLASS0'SUB0SIZE+  <<OF CLASS0 SUB 1   >>         00025000
                       STD'SUBCLASS'OVHD,                               00026000
                                                                        00027000
   CLASS1'SUBCLASSCNT=6,   !NUMBER OF SUBCLASSES FOR CLASS 1            00028000
   CLASS1'SUB0SIZE   =44,       << CPU BURST >>                         00029000
   CLASS1'SUB1SIZE   =44,       << CPU PAUSE >>                         00030000
   CLASS1'SUB2SIZE   =44,       << THINK TIME >>                        00031000
   CLASS1'SUB3SIZE   =44,  !RESPONSE TIME DISTRIBUTION                  00032000
   CLASS1'SUB4SIZE   =50,       << CPU QUEUE INFORMATION >>             00033000
   CLASS1'SUB5SIZE   =88,  !INTERNAL SYNC RESOURCE STATS                00034000
                                                                        00035000
   CLASS15'SUBCLASSCNT =1,                                              00036000
   CLASS15'SUB0SIZE    =52, !CLASS 0,SUBCLASS 15 SIZE                   00037000
   MEASSIR             =28,                                             00038000
   PCLASSENBLMASK'IDX  =%74,  << PXFIXED Cell >>                        00039000
   MEASSTOPREASON'IDX  =%75,  << PXFIXED Cell >>                        00040000
   MEASSTOPTIME'IDX    =%76,  << PXFIXED Cell >>                        00041000
                                                                        00042000
  NUMDEVTYPES       =3;    <<NUM INTF KNOWS ABOUT>>                     00043000
                                                                        00044000
<<**************************************************                    00045000
* GLOBAL STATISTICS COUNTERS:  CLASS 0, SUBCLASS 0 *                    00046000
**************************************************>>                    00047000
EQUATE                                                                  00048000
!  PROCESS LAUNCH AND STOP INFORMATION                                  00049000
!  -----------------------------------                                  00050000
   C'LAUNCH           = 0, !# OF PROCESS LAUNCHES                       00051000
                                                                        00052000
!  STOPS FOR DISC I/O                                                   00053000
!  ------------------                                                   00054000
   C'STOPBLOCKDISC    = 1, !# STOPS--BLOCKED DISC I/O                   00055000
   C'STOPUNBLOCKDISC  = 2, !# STOPS--UNBLOCKED DISC I/O                 00056000
                                                                        00057000
!  SEGMENT FAULTS AND RECOVERIES                                        00058000
!  -----------------------------                                        00059000
   C'STOPSLFAULT      = 3, !# STOPS--SL CODE SEGMENT FAULTS             00060000
   C'SLRECOVERY       = 4, !# SL CODE SEGMENT OLC RECOVERYS             00061000
   C'STOPPBXFAULT     = 5, !# STOPS--PROGRAM FILE SEG FAULTS            00062000
   C'PBXRECOVERY      = 6, !# PROG FILE SEG OLC RECOVERYING             00063000
   C'STOPDATAFAULT    = 7, !# STOPS--STACK/DATA SEG FAULTS              00064000
   C'DATARECOVERY     = 8, !# STACKS/DATA SEG OLC RECOVERIES            00065000
   C'STOPCACHEFAULT   =25, !# STOPS--CACHE DOMAIN FAULTS                00066000
   C'CACHERECOVERY    =26, !# CACHE RECOVERIES                          00067000
                                                                        00068000
!  STOPS FOR TERMINAL I/O                                               00069000
!  ----------------------                                               00070000
   C'STOPTERMREAD     = 9, !# STOPS--TERMINAL READS                     00071000
   C'STOPTERMNONREAD  =10, !# STOPS--TERMINAL I/O, NOT READS            00072000
                                                                        00073000
!  STOPS FOR SEGMENT EXPANSION AND CONTRACTION                          00074000
!  -------------------------------------------                          00075000
   C'STOPSTKOVERFLOW  =11, !# STOPS--STACK OVERFLOWS                    00076000
   C'STOPDLEXPAND     =14, !# STOPS--DL AREA EXPANSIONS                 00077000
   C'DLCONTRACT       =15, !# DL AREA CONTRACTIONS                      00078000
   C'STOPPXFILEEXPAND =16, !# STOPS--PXFILE EXPANSION                   00079000
   C'PXFILECONTRACT   =17, !# PXFILE CONTRACTIONS                       00080000
   C'STOPDBZEXPAND    =18, !# STOPS--DB/Z EXPANSIONS                    00081000
   C'DBZCONTRACT      =19, !# DB/Z CONTRACTIONS                         00082000
   C'STOPXDSEXPAND    =20, !# STOPS--DTA SEGMENT EXPANSIONS             00083000
   C'DSEGCONTRACT     =21, !# DATA SEGMENT CONTRACTIONS                 00084000
                                                                        00085000
!  STOPS FOR IMPEDES AND SIRS                                           00086000
!  --------------------------                                           00087000
   C'STOPSIR          =12, !# STOPS--BUSY SIR                           00088000
   C'STOPIMPEDE       =13, !# STOPS--IMPEDES                            00089000
                                                                        00090000
!  PROCESS HANDLING STOP COUNTERS                                       00090100
!  ------------------------------                                       00090200
   C'STOPSUSPENDED    =28,  !# STOPS--SUSPEND                           00090300
   C'STOPACTIVATE     =29,  !# STOPS--ACTIVATE                          00090400
   C'STOPABORTSON     =37,  !# STOPS--SON ABORT                         00090500
   C'STOPFORMAIL      =38,  !# STOPS--MAIL                              00090600
                                                                        00090700
!  MISCELLANEOUS COUNTERS                                               00091000
!  ----------------------                                               00092000
   C'STOPTIMEOUT      =22, !# STOPS--TIME OUTS                          00093000
   C'PREEMPT          =23, !# PREEMPTIONS                               00094000
   C'STOPMISCBLOCKEDIO=24, !# STOPS--MISC BLOCKED I/O                   00095000
   C'STOPPAUSE        =27, !#STOPS--FOR PAUSE                           00095100
                                                                        00096000
!  PAUSE RELATED INFORMATION                                            00097000
!  -------------------------                                            00098000
   C'PAUSEIDLECNT     =30, !CPU IS PAUSED WITH NOTHING TO DO            00099000
   C'PAUSEDISCCNT     =31, !CPU IS PAUSED WAITING FOR DISC              00100000
   C'PAUSESEGSWAPCNT  =32, !CPU IS PAUSED WAITING FOR MEM MGT           00101000
   C'PAUSEBOTHCNT     =33, !CPU WAITING FOR DISC,MEM OR USER            00102000
   C'GARBAGECNT       =34, !DISP IS DOING BACKGROUND GARBAGE COLL       00103000
   C'CACHESWAPONLY    =36, !CPU WAITING FOR CACHE DISC I/O              00104000
                                                                        00105000
!  SWAP-IN RELATED INFORMATION                                          00106000
!  ---------------------------                                          00107000
   C'CACHERELEASE     =39, !# OF OC CDS CLEANED FROM REGION             00108000
   C'SWAPIN           =40, !# PROCESS SWAP-IN                           00109000
   C'MEMALLOC         =41, !# OBJECT TO BE FETCHED IS ABSENT            00110000
   C'INMOTIONIN       =42, !# OBJECT TO BE FETCHED IS IN IMI            00111000
   C'OLCANDRECOVERY   =43, !# OBJECT TO BE FETCHED IS A ROC             00112000
   C'PROCESSQUEUES    =44, !                                            00113000
   C'DEFERRAL         =45, !# TIMES SWAPIN FAILED                       00114000
   C'SWAPFROMSWAPQ    =46, !                                            00115000
   C'SWAPFROMDISPQ    =47, !                                            00116000
   C'LOCALITYCHOP     =48, !                                            00117000
   C'CODERELEASE      =49, !# OC CODE SEG CLEANED FROM REGION           00118000
   C'DATARELEASE      =50, !# OC DATA SEG CLEANED FROM REGION           00119000
   C'SWAPQDELAY       =51, !                                            00120000
   C'MOCTOROC         =52, !                                            00121000
   C'GIVEUP           =53, !# MEM MGT STOPS ON MORE URGENT ACT          00122000
   C'HARDREQUEST      =54, !# MEM MGT STOPS FOR URGENT PROCESS          00123000
   C'FREESPACE        =55, !# TIMES FETCHOBJECT FOUND SPACE             00124000
   C'SWAPQSUCCESS     =56, !                                            00125000
   C'DISPQSUCCESS     =57, !                                            00126000
                                                                        00127000
!  MISCELLANEOUS COUNTERS                                               00128000
!  ----------------------                                               00129000
   C'CACHEDATAMOVES   =35, !# DATA MOVED BETWEEN FILE&CACHE DOM         00130000
   C'LOCKREQ          =60, !# FETCHOBJECT CALLED WITH LOCK OPT          00131000
   C'FREEZEREQ        =61, !# FETCHOBJECT CALLED WITH FREEZE            00132000
   C'CANCELMSGNOTPROC =62, !                                            00133000
   C'CANCELMSGPROC    =63, !                                            00134000
   C'GARBMOVEBKRND    =64, !# GARBAGE MOVES, BACKGROUND                 00135000
   C'GARBMOVEALLOCATE =65, !# ATTEMPTS TO MAKE SEGMENT PRESENT          00136000
   C'GARBGIVEUPPREEMPT=66, !# GARBAGE COLLECTING PREEMPTED              00137000
   C'OVLAPSEEKISSUED  =67, !# LOOKAHEAD SEEKS FOR SERIES II,III         00138000
   C'CLOCKCYCLE       =68, !# MAKEROOM WHEN THRU ALL OF MEMORY          00139000
   C'MAKEROOMSUCCESS  =69, !# MAKEROOM WAS SUCCESSFULL                  00140000
   C'CACHEREADS       =70, !# READ REQ HANDLED BY CACHING               00141000
   C'CACHEREADHITS    =71, !# DATA READ WAS IN MEMORY                   00142000
   C'CACHEWRITES      =72, !# WRITE REQ HANDLED BY CACHING              00143000
   C'CACHEWRITEHITS   =73, !# DATA WRITTEN WAS IN MEMORY                00144000
   C'IMPEDECACHE      =74, !# STOPS--DISC CACHE IMPEDES                 00145000
                                                                        00146000
!  GLOBAL STATISTICS TIMER COUNTERS (DOUBLE WORD)                       00147000
!  ----------------------------------------------                       00148000
   C'PAUSEDCACHEONLY  =78,                                              00149000
   C'PAUSEIDLETIME    =80, !TIME SPENT IN PAUSED IDLE                   00150000
   C'PAUSESEGSWAPTIME =82, !TIME FOR MEM MGT DISC I/O                   00151000
   C'PAUSEDISCTIME    =84, !TIME FOR USER DISC I/O                      00152000
   C'PAUSEBOTHTIME    =86, !TIME FOR MEM MGT&DISC I/O                   00153000
   C'CPUPROCESS       =88, !TIME FOR ACTIVE PROCESS                     00154000
   C'CPUMEMORYALLOC   =90, !TIME TO BRING IN ABSENT SEGMENT             00155000
   C'CPUGARBAGE       =92, !TIME DOING BACKGROUND GARBAGE COLLECT       00156000
   C'CPUALLOCGARB     =94, !TIME DOING HIGH PRI GARBAGE COLLECT         00157000
   C'CACHEONPROCESS   =96, !TIME DOING CACHE MGT FOR PROCESS            00158000
   C'CACHEONICS       =98; !TIME DOING CACHE MGT ON ICS                 00159000
                                                                        00160000
<<*******************************************************               00161000
* SUBCLASS 1 OF CLASS 0 DISC SUBSYSTEM ACTIVITY PROFILE *               00162000
*******************************************************>>               00163000
EQUATE                                                                  00164000
   C'CODEREAD         = 1, !READ OF CODE SEGMENT BY MEM MGT             00165000
   C'DSEGREAD         = 2, !READ OF DATA SEGMENT BY MEM MGT             00166000
                                                                        00167000
   C'DSEGWRITEFORCED  = 3, !FORCED DISC WRITE TO MAKE SPACE             00168000
   C'DSEGWRITEBKGRD   = 4, !BACKGROUND DISC I/O (LOW PRI)               00169000
                                                                        00170000
   C'BLKREAD          = 5, !USER BLOCKED (WAIT) READ I/O                00171000
   C'BLKWRITE         = 6, !USER BLOCKED (WAIT) WRITE I/O               00172000
                                                                        00173000
   C'UNBLKREAD        = 7, !UNBLOCKED READ & PROC NOT WAITING           00174000
   C'UNBLKWRITE       = 8, !UNBLOCKED WRITE & PROC NOT WAITING          00175000
                                                                        00176000
   C'UNBLKREADAWAKE   = 9, !UNBLOCKED READ WITH PROC WAITING            00177000
   C'UNBLKWRITEAWAKE  =10, !UNBLOCKED WRITE WITH PROC WAITING           00178000
                                                                        00179000
   C'BUFFERTRAP       =11, !FREEZE FOR I/O ON ABSENT SEGMENT            00180000
                                                                        00181000
   C'BUSYCONTROLLER   =12, !# DISC I/O QUEUED ON CONTROLLER             00182000
                                                                        00183000
   C'DISCCONTROL      =13, !# OF CONTROL OPS ON THIS DEVICE             00184000
                                                                        00185000
   C'DISCQUEUE0       =14, !DISC PRIORITY QUEUE 0 LENGTH                00186000
   C'DISCQUEUE1       =15, !DISC PRIORITY QUEUE 1 LENGTH                00187000
   C'DISCQUEUE2       =16, !DISC PRIORITY QUEUE 2 LENGTH                00188000
   C'DISCQUEUE3       =17, !DISC PRIORITY QUEUE 3 LENGTH                00189000
   C'DISCQUEUE4       =18, !DISC PRIORITY QUEUE 4 LENGTH                00190000
   C'DISCQUEUE5       =19, !DISC PRIORITY QUEUE 5 LENGTH                00191000
   C'DISCQUEUE6       =20, !DISC PRIORITY QUEUE 6 LENGTH                00192000
                                                                        00193000
   C'CACHEREADACCESSES=21,                                              00194000
   C'CACHEFORCEDWRITES=22,                                              00195000
   C'CACHEBKGRNDWRITES=23;                                              00196000
                                                                        00197000
!  SUBCLASS 2 OF CLASS 0 LINE PRINTER ACTIVITY PROFILE                  00198000
!  ---------------------------------------------------                  00199000
EQUATE                                                                  00200000
   C'DEVREAD          = 1, !NUMBER OF DEVICE READS                      00201000
   C'DEVWRITE         = 2, !NUMBER OF DEVICE WRITES                     00202000
   C'DEVCONTROL       = 3; !NUMBER OF CONTROL OPERATIONS                00203000
                                                                        00204000
<<**************************************************                    00205000
* PROCESS SPECIFIC COUNTERS:  CLASS 15, SUBCLASS 0 *                    00206000
**************************************************>>                    00207000
EQUATE                                                                  00208000
!  PROGRAM INFORMATION                                                  00209000
!  -------------------                                                  00210000
   CP'PROGNAME        = 0,                                              00211000
   CP'GROUPNAME       = 4,                                              00212000
   CP'ACCTNAME        = 8,                                              00213000
                                                                        00214000
!  PROCESS SPECIFIC COUNTERS (SINGLE WORD)                              00215000
!  ---------------------------------------                              00216000
   CP'JOBSESSIONNUM   =12,                                              00217000
   CP'PROCQUESTOPWORD =13,                                              00218000
                                                                        00219000
!  NUMBER OF STOPS                                                      00220000
!  ---------------                                                      00221000
   CP'STOPSLFAULT     =14,  !STOPS--SL  FAULT                           00222000
   CP'STOPPBXFAULT    =15,  !STOPS--PBX FAULT                           00223000
   CP'STOPDSTFAULT    =16,  !STOPS--DST FAULT                           00224000
   CP'STOPSEGEXPAND   =17,                                              00225000
   CP'STOPBLOCKDISC   =18,  !STOPS--BLOCKED DISC I/O                    00226000
   CP'STOPUNBLOCKDISC =19,  !STOPS--UNBLOCKED DISC I/O                  00227000
   CP'STOPBLOCKEDIO   =20,                                              00228000
   CP'STOPTERMREAD    =21,                                              00229000
   CP'STOPIMPEDE      =22,  !STOPS--IMPEDES                             00230000
   CP'STOPTIMEOUT     =23,                                              00231000
   CP'STOPPREEMPTED   =24,                                              00232000
   CP'STOPRIN         =25,                                              00233000
                                                                        00234000
   CP'LAUNCH          =26,  !# TIMES PROC ALLOWED TO USE CPU            00235000
   CP'SWAPIN          =27,  !# SWAPINS NEEDED TO LAUNCH PROCESS         00236000
   CP'OVERLAYCAUSED   =28,  !#OC REGIONS CLEANREGION PROCESSED          00237000
   CP'STOPCACHEFAULT  =29,  !# CACHE FAULTS                             00238000
                                                                        00239000
!  DISC I/O                                                             00240000
!  --------                                                             00241000
   CP'DISCREAD        =30,  !# DISC READS                               00242000
   CP'DISCWRITE       =31,  !# DISC WRITES                              00243000
                                                                        00244000
!  MISCELLANEOUS PROCESS SPECIFIC COUNTERS (DOUBLE WORD)                00245000
!  -----------------------------------------------------                00246000
   CP'CREATETIME        =32,  !PROCESS CREATION TIME                    00247000
   CP'TERMINATETIME     =34,  !PROCESS TERMINATION TIME                 00248000
   CP'CPUTIME           =36,  !PROCESS CPU TIME                         00249000
                                                                        00250000
!  TOTAL TIME STOPPED                                                   00251000
!  ------------------                                                   00252000
   CP'PAUSESWAPTIME     =38,  !ACCUM TIME PROC PAUSED FOR SWAP          00253000
   CP'PAUSEDISCTIME     =40,  !TIME PROC STOPPED FOR DISC I/O           00254000
   CP'PAUSEIONONTERMTIME=42,                                            00255000
   CP'PAUSETERMREADTIME =44,                                            00256000
   CP'PAUSEIMPEDETIME   =46,                                            00257000
   CP'PAUSEACTIVETIME   =48,                                            00258000
                                                                        00259000
   CP'WORDSTRANS        =50;  !# WORDS TRANSFERED BY DISC               00260000
                                                                        00261000
!  PROCESS STOP REASON EQUATE                                           00262000
!  --------------------------                                           00263000
EQUATE                                                                  00264000
   STOPSEGFAULT    =1,  !SEGMENT FAULT                                  00265000
   STOPDISCWAIT    =2,                                                  00266000
   STOPBLKIONONTERM=3,                                                  00267000
   STOPTERMREAD    =4,                                                  00268000
   STOPIMPEDE      =5,  !IMPEDED                                        00269000
   STOPACTIVE      =6;  !PROCESS WAS ACTIVE                             00270000
 <<STOPCACHEFAULT  =7;>>!WE DON'T HAVE A NEW COUNTER TO KEEP            00271000
                        !TRACK TIME FOR THIS STOP, THEREFORE            00271100
                        !WE SHOULD NOT USE THIS STOP REASON,            00271200
                        !WE RATHER LUMP IT INTO STOPSEGFAULT            00271300
                                                                        00272000
!  CLASS OF MEASUREMENT INTERFACE (PCLASSENABLEDMASK) MASK BITS         00273000
!  ------------------------------------------------------------         00274000
DEFINE                                                                  00275000
   CLASS0  =(0:1)#,   !GLOBAL STATISTICS                                00276000
   CLASS1  =(1:1)#,   !  UNASSIGNED                                     00277000
   CLASS2  =(2:1)#,   !  UNASSIGNED                                     00278000
   CLASS3  =(3:1)#,   !  UNASSIGNED                                     00279000
   CLASS4  =(4:1)#,   !  UNASSIGNED                                     00280000
   CLASS5  =(5:1)#,   !  UNASSIGNED                                     00281000
   CLASS6  =(6:1)#,   !  UNASSIGNED                                     00282000
   CLASS7  =(7:1)#,   !  UNASSIGNED                                     00283000
   CLASS8  =(8:1)#,   !  UNASSIGNED                                     00284000
   CLASS9  =(9:1)#,   !  UNASSIGNED                                     00285000
   CLASS10 =(10:1)#,  !  UNASSIGNED                                     00286000
   CLASS11 =(11:1)#,  !  UNASSIGNED                                     00287000
   CLASS12 =(12:1)#,  !  UNASSIGNED                                     00288000
   CLASS13 =(13:1)#,  !  UNASSIGNED                                     00289000
   CLASS14 =(14:1)#,  !I/O STATISTICAL DATA                             00290000
   CLASS15 =(15:1)#;  !PROCESS SPECIFIC STATISTICS                      00291000
                                                                        00292000
DEFINE                                                                  00293000
   CFIELD =(0:4)#,    <<CLASS FIELD OF LDEVTAB>>                        00294000
   SFIELD =(4:4)#,    <<SUBCLASS FIELD OF LDEVTAB>>                     00295000
   EFIELD =(8:8)#,    <<ENTRY FIELD OF LDEVTAB>>                        00296000
   STOPFLD=(8:8)#;    <<REASON STOP IN PROCQUESTOPWORD>>                00297000
                                                                        00298000
DEFINE                                                                  00299000
   MEASMASK=ABSOLUTE(%1262)#,  !ADDRESS OF MI CLASS MASK                00300000
   CLASS0FLAG=(0:1)#,                                                   00301000
   CLASS0STATSENABLED=LOGICAL((MEASMASK).CLASS0FLAG)#;                  00302000
                                                                        00303000
EQUATE                                                                  00304000
   MEASCLASS0 =0,                                                       00305000
   MEASSUBCLASS0 =0,                                                    00306000
   MEASSUBCLASS1 =1,                                                    00307000
   MEASENTRY1 =1,                                                       00308000
   NOTDOUBLE =FALSE,                                                    00309000
   NOTNEWVALUE =FALSE,                                                  00310000
   DOUBLEVALUE =TRUE;                                                   00311000
$TITLE " "                                                              00312000
<<=========================================================             00313000
=                                                         =             00314000
=                       END INCLMEAS                      =             00315000
=                                                         =             00316000
=========================================================>>             00317000
