SGNEXEC.CMD;2=SGNEXEC.VMD \ -/.589:/,, .; .; THE KMS ACCOUNTING AND MCR ENHANCEMENTS .; .IFF $MUP .SETF $RNPRV .IFF $MUP .SETF $KMSCO .IFF $MUP .GOTO KMSQ2B .IFT $SAVED .IFDF $KMS .IFF REPEAT .GOTO KMSQ1 .ASK $KMS 11A.'$SF1' Do you want an explanation of the KMS Enhancenments .IFF $KMS .GOTO KMSQ1 ; The KMS enhancement package offers a large number of options for a multiuser ; system. In general once a system generation is done, the enhancements can ; be included piecemeal(see the implementation notes). Included with this ; package is a reasonable Accounting Package for the RSX11M community, including ; user by user, terminal time, cpu time, global statistics, etc.. type accounting ; as well as limited task accounting(primarily a performance measurement tool). ; If you wish to incorporate these features, you must make several modifications ; to standard DEC distribution files. The command files(SGNEXEC, SGNTT, and SGNPER) ; are assumed to be modifed(adds accounting base to driver data bases). In ; addition the EXEC source files TDSCH.MAC and SYSCM.MAC must be modified. ; These changes will in NO WAY harm the operation of a normal RSX11M system or ; bring on flaky crashes. HOWEVER, they must be made, for the accounting ; enhancements to be included. The changes are all conditionalized so that ; they will not assemble unless they are selected. ; ; Answering Yes to the next question, enables the following questions and ; allows assembly of Run Privlege allocation modifications to INStall. ; .KMSQ1: .IFT $SAVED .IFDF $RNPRV .IFF REPEAT .GOTO KMSQ2 .ASK $RNPRV 11B.'$SF1' KMS Run Privlege allocation and system enhancements .IFF $KMS .GOTO KMSQ2 ; ; If you desire to include SYSTEM ACCOUNTING, you must select ; the CO: driver. Only the CO: driver data base is used. .KMSQ2:.IFT $SAVED .IFDF $KMSCO .IFF REPEAT .GOTO KMSQ2A .IFT $RNPRV .ASK $KMSCO 11C.'$SF1' Have you included the CO: driver. .KMSQ2A: .IFF $KMSCO ; The CO: data base is absolutely required for including SYSTEM ACCOUNTING. .IFF $KMSCO ; SYSTEM ACCOUNTING questions will not be asked, but HELLO/BYE can still .IFF $KMSCO ; keep a running tally of terminal logon time. .KMSQ2B:.IFF $KMSCO .SETF $CPUTM .IFF $KMSCO .GOTO KMSQ4 .IFF $KMS .GOTO KMSQ3 ; If you want CPU time or system accounting(SYSLOG) the various data ; bases in the EXEC must be assembled. .KMSQ3: .IFT $SAVED .IFDF $CPUTM .IFF REPEAT .GOTO KMSQ4 .IFT $RNPRV .ASK $CPUTM 11D.'$SF1' Include CPU time and system accounting data base changes .IFF $KMS .GOTO KMSQ4 ; In addition to CPU time, you can log QIO usage. .KMSQ4: .IFT $CPUTM .GOTO KMSQ4A .SETF $QCNT .SETF $SACC .SETF $MACC .SETF $TKACC .GOTO KMSSAV .KMSQ4A:.IFT $SAVED .IFDF $QCNT .IFF REPEAT .GOTO KMSQ5 .IFT $CPUTM .ASK $QCNT 11E.'$SF1' QIO accounting(system wide and user by user) .IFF $KMS .GOTO KMSQ5 ; You can collect statistics on LDR, CHECKPOINTS, and SHUFFLER activity. .KMSQ5:.IFT $SAVED .IFDF $SACC .IFF REPEAT .GOTO KMSQ6 .IFT $CPUTM .ASK $SACC 11F.'$SF1' Gather system wide accounting statistics .IFF $KMS .GOTO KMSQ6 ; You can keep track of totoal memory useage both in and out of core. .KMSQ6:.IFT $SAVED .IFDF $MACC .IFF REPEAT .GOTO KMSQ7 .IFT $CPUTM .ASK $MACC 11G.'$SF1' Monitor memory utilization .IFF $KMS .GOTO KMSQ7 ; Selective task accounting is designed to be a performance measurement tool. ; Using it one can keep track of users, the run time, the CPU time, and the ; QIO"s issued for any task or group of tasks. .KMSQ7:.IFT $SAVED .IFDF $TKACC .IFF REPEAT .GOTO KMSSAV .IFT $CPUTM .IFT $QCNT .ASK $TKACC 11H.'$SF1' Selective task accounting(measurement tool). .KMSSAV: .IFT $SAVE .DATA ; KMSKIT RELEASE 3.2XD .IFT $SAVE .DATA .SET'$KMS' $KMS .IFT $SAVE .DATA .SET'$RNPRV' $RNPRV .IFT $SAVE .DATA .SET'$CPUTM' $CPUTM .IFT $SAVE .DATA .SET'$QCNT' $QCNT .IFT $SAVE .DATA .SET'$SACC' $SACC .IFT $SAVE .DATA .SET'$MACC' $MACC .IFT $SAVE .DATA .SET'$TKACC' $TKACC .IFT $SAVE .DATA .SET'$KMSCO' $KMSCO .IFT $SAVE .DATA ; KMSKIT RELEASE 3.2XD .NOKMS: -/.725:/,, .; .; IF ALL USER-WRITTEN DRIVERS LOADABLE .; .IFF $UWD .SETF $ALOAD .IFF $UWD .GOTO 725A .IFT $SAVED .IFDF $ALOAD .IFF REPEAT .GOTO 725A .IFT $UWD .ASK $ALOAD 25A.'$SF1' Are all user-written drivers to be loadable .725A:.IFT $SAVE .DATA .SET'$ALOAD' $ALOAD -/V$$RSN/,, .IFT $RNPRV .DATA #1 ; KMSKIT RELEASE 3.2XD .IFT $RNPRV .DATA #1 R$$PRV=0 ; KMS FUSION ACCOUNTING ENHANCEMENTS .IFT $CPUTM .DATA #1 T$$CPU=0 ; ACCOUNT FOR CPU TIME .DISABLE SUBSTITUTION .IFT $QCNT .DATA #1 Q$$CNT=0 ; ACCOUNT FOR QIO'S .ENABLE SUBSTITUTION .IFT $SACC .DATA #1 S$$ACC=0 ; SYSTEM WIDE ACCOUNTING .IFT $MACC .DATA #1 M$$ACC=0 ; MEMORY UTILIZATION ACCOUNTING .IFT $TKACC .DATA #1 T$$KAC=0 ; SELECTIVE TASK ACCOUNTING .IFT $RNPRV .DATA #1 ; KMSKIT RELEASE 3.2XD /