Table of Contents

SSCONTL

Table Of Contents

Source Code

SSCONTL.txt
  1. .PROC,SSCONTL.
  2. * THIS JOB BUILDS TWO PROGRAMS THAT ARE NEEDED TO TIME EVENT
  3. * A SSMOVE DESTAGE JOB OR A LOW DISK SPACE SSMOVE JOB.
  4. *
  5. * *TIMESCR* PROGRAM IS CALLED BY A JOB THAT PLACES A SSMOVE
  6. * PROGRAM IN THE ROLLOUT QUEUE WAITTING FOR A PRESET TIME
  7. * TO START THE SSMOVE EXECUTION.
  8. * THIS DESTAGE RELATED PROCEEDURE IS CALL BY THE PROC *DESTAGE*.
  9. * ** THE BINNARY DECK IS CALLED *TIMEB*.
  10. *
  11. * *PROFULL* PROGRAM IS CALLED BY A JOB THAT PLACES A SSMOVE
  12. * PROGRAM IN THE ROLLOUT QUEUE WAITTING FOR A LOW DISK SPACE
  13. * THRESHOLD FLAG TO BE SET.
  14. * THE *PROFULL* BINNARIES MUST BE SYSEDITED OR BE PLACED ON
  15. * THE DEAD START TO EXECUTED. (AN SSJ= PROGRAM THAT READS
  16. * THE EST AND MST WITH SYSTEM MACRO-S FOR THE LOW DISK
  17. * THRESHOLD FLAGS.)
  18. * * THE BINNARY DECK IS CALLED *DKFULL*.
  19. *
  20. * THIS LOW DISK SPACE PROGRAM IS CALLED BY THE PROC *DKFULL*
  21. *
  22. ATTACH,OPL/UN=LIBRARY.
  23. COPYBR,TIMESRC,X.
  24. COPYBR,PROFULL,X1.
  25. REWIND,*.
  26. COPYBF,X,TIMESRC.
  27. COPYBR,X1,PROFULL.
  28. REWIND,*.
  29. MODIFY,P=0,C=0,N=N,F,Z./*CREATE,TIMESRC
  30. REWIND,*.
  31. MODIFY,P,LO=E,Z./*OPLFILE,N/*EDIT,TIMESRC
  32. FTN,I=COMPILE,L=L,B=TIMEB,S=PSSTEXT,S=NOSTEXT.
  33. REWIND,*.
  34. MODIFY,P=0,C=0,N=N,F,Z./*CREATE,PROFULL
  35. REWIND,*.
  36. MODIFY,P,LO=E,Z./*OPLFILE,N/*EDIT,DKFULL
  37. COMPASS,I,B=DKFUL,S=NOSTEXT,S=PSSTEXT,L=M.
  38. REWIND,*.
  39. MODIFY,P,LO=E,Z./*EDIT,MAC2
  40. COMPASS,I,B=MACBIN,S=NOSTEXT,S=PSSTEXT,S=SSYTEXT,L=0.
  41. REWIND,*.
  42. LIBGEN(F=MACBIN,P=MACLIB,NX=0)
  43. LDSET(LIB=MACLIB,PRESET=0,MAP=SBEX/MAP)
  44. LOAD(DKFUL)
  45. NOGO(DKFULL,DKFULL,$RFL=$,$SSJ=$)
  46. PURGE,TIMEB,DKFULL/NA.
  47. SAVE,TIMEB,DKFULL.
  48. REVERT. SAVE TIMEB AND DKFULLB.
  49. DIS.
  50. EXIT.
  51. REVERT. ERRORS......
  52. .DATA,TIMESRC.
  53. TIMESRC
  54. PROGRAM TIMESRC ( TAPE1 )
  55.  
  56. CCC *TIMESRC* CONTROLS THE CALLING OF *SSMOVE*.
  57. C
  58. C *TIMESRC* READS LOCAL FILE TAPE1 TO DETERMINE
  59. C THE NEXT TIME TO CALL *SSMOVE*. WHEN THE
  60. C TRIGGER TIME IS HIT, THEN *TIMESRC* ENDS AND
  61. C THE CCL PROCEDURE FILE IS ALLOWED TO CONTINUE.
  62. C
  63. C THE CCL PROCEDURE WILL THEN CALL *SSMOVE*.
  64. C
  65. C FORMAT OF TAPE1.
  66. C
  67. C N RECORDS OF FORMAT I4 - HHMM.
  68. C HH = HOUR OF NEXT DESTAGE.
  69. C MM = MINUTES OF NEXT DESTAGE.
  70.  
  71. INTEGER CURTM
  72.  
  73. C
  74. C READ NEXT TIME TO DESTAGE.
  75. C
  76.  
  77. READ ( 1 , 9000 ) IHR , ISE
  78. 9000 FORMAT ( 2I2 )
  79. NTM = SHIFT ( IHR , 6 ) .OR. ISE
  80.  
  81. C
  82. C DETERMINE CURRENT TIME
  83. C
  84.  
  85. 10 CALL GETCTM ( CURTM )
  86. CURTM = CURTM .AND. 777700B
  87. CURTM = SHIFT ( CURTM , -6 )
  88.  
  89. C
  90. C IF CURRENT TIME .GT. TIME TO DESTAGE, THEN
  91. C END TO ALLOW PROCEDURE TO CALL *SSMOVE*.
  92. C
  93.  
  94. IF ( NTM .GT. CURTM ) GOTO 100
  95. STOP
  96.  
  97. C
  98. C IF *SSMOVE* SHOULD RUN IN LESS THAN 15 MINUTES,
  99. C INCREASE THE FREQUENCY OF THE ROLLINS.
  100. C
  101.  
  102. 100 CURTM = CURTM - 15
  103. IF ( CURTM .GT. NTM ) 110 , 120
  104.  
  105. 110 ITIME = 3
  106. CALL ROLL ( ITIME )
  107. GOTO 10
  108.  
  109. 120 ITIME = 15
  110. CALL ROLL ( ITIME )
  111. GOTO 10
  112.  
  113. END
  114. IDENT GETCTM
  115. ENTRY GETCTM
  116. SPACE 4
  117. GETCTM BSSZ 1
  118. SA1 A1
  119. PDATE X1
  120. EQ GETCTM
  121. END
  122. IDENT ROLL
  123. ENTRY ROLL
  124. SPACE 4
  125. ROLL BSSZ 1
  126. SA1 X1
  127. SX2 60D CONVERT TIME TO SECONDS
  128. IX6 X1*X2
  129. SA6 ADDR
  130. ROLLOUT ADDR
  131. EQ ROLL RETURN AFTER ROLLOUT
  132.  
  133. ADDR BSSZ 1
  134. END
  135. .DATA,PROFULL.
  136. DKFULL
  137. IDENT DKFULL
  138.  
  139. SYSCOM B1
  140. SST
  141. ENTRY RFL=
  142. ENTRY SSJ=
  143. ENTRY DKFULL
  144. EXT RDESTC
  145.  
  146. *** *DKFULL* CONTROLS THE CALLING OF *SSMOVE* WHEN THE
  147. * DISK LOW SPACE THRESHOLD IS REACHED.
  148. *
  149.  
  150.  
  151. DKFULL SB2 ESTB BUFFER TO RECEIVE EST ENTRIES
  152. SB1 1
  153. SB3 ESTN
  154. SB4 -B1 READ MASS STORAGE ENTRIES
  155. RJ =XRDESTC READ EST INTO *ESTB*
  156. SA5 ESTN
  157. SB6 X5 SET LAST MASS STORAGE ORDINAL + 1
  158.  
  159. *SEARCH EST FOR MASS STORAGE DEVICES THAT ARE FULL.
  160.  
  161.  
  162. DFL1 SB4 B4+B1
  163. EQ B4,B6,DFL2 IF END OF MASS STORAGE DEVICES
  164.  
  165. SX1 B4 CALCULATE *ESTB* OFFSET
  166. R= X6,ESTE
  167. IX1 X1*X6
  168. SA1 ESTB+X1+EQDE GET NEXT EST ENTRY
  169. PL X1,DFL1 IF NOT MASS STORAGE DEVICE
  170. BX6 X1
  171. LX6 59-54
  172. NG X6,DFL1 IF DEVICE UNAVAIBLE FOR ACCESS
  173. RJ RDM READ MST
  174. SA2 MSTB+ACGL-TDGL
  175. LX2 59-4
  176. NG X2,DFL1 IF ERROR IDLE SET ON DEVICE
  177. SA2 MSTB+MDGL-TDGL
  178. LX2 59-58
  179. NG X2,DFL1 IF AUXILIARY DEVICE
  180. SA2 MSTB+DULL-TDGL
  181. LX2 59-11
  182. NG X2,DFL1 IF FAMILY IDLE DOWN FLAG IS SET
  183. SA2 MSTB+THLL-TDGL
  184. LX2 59-35
  185. NG X2,DFL3 FULL DISK FOUND
  186. EQ DFL1 CHECK NEXT ENTRY
  187.  
  188. DFL2 ROLLOUT ADDR
  189. EQ DKFULL CHECK REASON FOR ROLLIN
  190.  
  191. DFL3 ENDRUN
  192.  
  193.  
  194. *** RDM - READ FULL *MST* ENTRY.
  195. *
  196. * ENTRY (X1) = EST ENTRY.
  197. *
  198. * EXIT (X3) = MST ADDRESS.
  199. * (MSTA) = MST POINTER PARAMETER.
  200. * (MSTB) = *MSTN* CONTIGUOUS WORDS STARTING AT *TDGL*
  201. * OF THE MST ENTRY.
  202. *
  203. * USES A - 6, 7.
  204. * X - 0, 2, 3, 6, 7.
  205. *
  206. * MACROS SYSTEM.
  207.  
  208.  
  209. RDM SUBR ENTRY/EXIT
  210. MX0 -12
  211. BX3 -X0*X1 GET ADDRESS OF MST ENTRY
  212. LX3 3
  213. SX2 X3+TDGL READ WORD *TDGL* OF MST
  214. LX2 35-17
  215. MX7 1
  216. SA7 MSTB
  217. SX7 MSTXL NUMBER OF MST ENTRY WORDS TO READ
  218. LX7 59-23
  219. BX6 X7+X2
  220. SX2 MSTB
  221. BX6 X2+X6
  222. SA6 MSTA
  223. SYSTEM RSB,R,A6
  224. EQ RDMX RETURN
  225.  
  226.  
  227.  
  228. SSJ= BSS 0 SSJ= PARAMETER BLOCK
  229. BSSZ 1
  230. CON 0
  231. BSSZ SSJL PAD SSJ= PARAMETERS
  232. BSS 1
  233.  
  234.  
  235. * BUFFERS
  236.  
  237. ADDR VFD 24/0,24/LSPE,12/7020B LOW SPACE THRESHOLD/ HOUR TIMER
  238.  
  239. ESTB BSS ESMX*ESTE EST BUFFER
  240. ESTN BSS 1 LAST MASS STORAGE ORDINAL + 1
  241. MSTA BSS 1 MST POINTER PARAMETER WORD
  242. MSTB BSS MSTXL MST ENTRY BUFFER
  243.  
  244.  
  245. * COMMON DECKS
  246.  
  247. *CALL COMSEVT
  248. *CALL COMCMAC
  249. USE //
  250. RFL= BSS 0
  251. USE *
  252. END DKFULL