*DECK OSWAPIN
IDENT OSWAPIN
ENTRY OSWAPIN
EXT OTIME
SST
*#
*1DC OSWAPIN
*
* 1. PROC NAME AUTHOR DATE
* OSWAPIN A. M. PRATT 76/04/20
*
* 2. FUNCTIONAL DESCRIPTION.
* THIS ROUTINE MAKES AN -SFCALL- TO THE OPERATING SYSTEM
* REQUESTING THE SWAP-IN OF A CERTAIN APPLICATION.
*
* 3. METHOD USED.
* SET UP
* DO -SFCALL-
*
* 4. ENTRY PARAMETERS.
* A1 = ADDRESS OF -SFCALL- PARAMETER WORDS
*
* 5. EXIT PARAMETERS. NONE
*
* 6. COMDECKS CALLED.
* INPARU MACDEF STATTAB
*
* 7. ROUTINES CALLED.
* OTIME GET SYSTEM RTIME
* SFCALL SYS-CTL-PT CALL
* XTRACE TRACES CALLS
*
* 8. DAYFILE MESSAGES. NONE
*
*#
*CALL MACDEF
*CALL INPARU
STAT1 IFEQ STAT,1
*CALL STATTAB
STAT1 ENDIF
OSWAPIN BSSZ 1
DEBUG1 IFEQ DEBUG,1
SX6 A1
SA6 TEMP
STAT2 IFEQ STAT,1
SA1 STIMEP PARAMETER BLOCK FOR CALLING OTIME
RJ OTIME GET RTIME VALUE BEFORE CALL
STAT2 ENDIF
SX1 XOSWAP
RJ XTRACE
SA1 TEMP
SA1 X1
DEBUG1 ELSE
STAT3 IFEQ STAT,1
SX6 A1 SAVE ADDRESS OF PARAMETER BLOCK IN TEMP
SA6 TEMP
SA1 STIMEP PARAMETER BLOCK FOR CALLING OTIME
RJ OTIME GET RTIME VALUE BEFORE CALL
SA1 TEMP RESTORE ADDRESS OF PARAMETER BLOCK IN A1
SA1 X1
STAT3 ENDIF
DEBUG1 ENDIF
SA1 X1 GET ADDRESS OF CALL PARAMETER
SA4 SWAPIN
MX3 -6
BX1 X3*X1
BX6 X4+X1
SA6 A1
SFCALL A1
STAT4 IFEQ STAT,1
SA1 ETIMEP PARAMETER BLOCK FOR CALLING OTIME
RJ OTIME GET RTIME VALUE AFTER CALL
SA1 STIME STARTING RTIME VALUE
MX0 24D MASK FOR RTIME MILLESECOND VALUE
BX1 -X0*X1 CLEAR SECONDS FIELD
SA2 ETIME ENDING RTIME VALUE
BX2 -X0*X2 CLEAR SECONDS FIELD
IX6 X2-X1 ELAPSED TIME FOR SWAPIN
SA1 ST$LSI LARGEST TIME SPENT IN OSWAPIN
IX5 X1-X6 DETERMINE IF LATEST TIME INTERVAL IS LARGER
PL X5,OSW01 IF PREVIOUS TIME INTERVAL WAS LARGER
SA6 ST$LSI SAVE NEW LARGEST TIME INTERVAL
OSW01 SA3 ST$TSI PREVIOUS CUMULATIVE VALUE
IX6 X3+X6 NEW CUMULATIVE VALUE
SA6 ST$TSI
MX6 -1 (X6)=-1
SA1 ST$NSI INCREMENT TOTAL NUMBER OF CALLS TO OSWAPIN
IX6 X1-X6 (X6)=(X1)+1
SA6 ST$NSI
STAT4 ENDIF
EQ OSWAPIN
EXT XTRACE
SWAPIN VFD 60/SF.SWPI
XOSWAP DATA L*SWAPI*
TEMP BSS 1
STAT5 IFEQ STAT,1
EXT OTIME
STIMEP VFD 60D/STIME
ETIMEP VFD 60D/ETIME
STIME BSS 1 START TIME FOR COMPARING SWAPIN TIME DELAY
ETIME BSS 1 END TIME FOR COMPARING SWAPIN TIME DELAY
STAT5 ENDIF
END