SCHEDIN867

(George Source)

Macros used: ACROSS, BC, BI, BSON, BXE, BXGE, BXL, BXU, CANDCNT, CANDINIT, ENDCCYCLE, FSHTEST, JBC, JBS, JMBAC, JMBAS, JMBS, MENDAREA, OFF, ON, SEGENTRY, TEST, TRACEDP, TRACEVER

SCHEDIN867.txt
22FL ...#SEG  SCHEDIN                    [DEK BEASLEY     :CENT 
22KH ...[   
22PD ...[ (C) COPYRIGHT INTERNATIONAL COMPUTERS LTD 1983
22T* ...[   
22^=    #OPT  K0SCHEDIN=0   
23DW    #LIS  K0SCHEDIN>K0ALLGEO>K0LLS  
23YG          8HSCHEDIN 
24D6    #   
24XQ    #     THIS IS THE CORE SCHEDULER :  
25CB    #   
25X2    #     IT SELECTS,WHEN APPROPRIATE,A PROGRAM TO BE NEXT SWAPPED IN AND   
26BL    #      RUN  
26W=    #   
27*W          SEGENTRY K1SCHEDIN,XX1S   
285# ...#SKI  JWPHASE4<1$1  
28*6    POINT9         #34631463           [ 0.9  APPROX.   
28SQ    [   
29#B    [  SUBROUTINE TO CLEAR BIGBITS IN JOBBLOCK  
29S2    [  I.E TO RETURN PROGRAMS THAT HAVE FAILED TO SWAPIN OR ARE 
2=?L    [  AS LARGE AS ONE THAT FAILED,TO THE CORE SCHEDULERS CONSIDERATION 
2=R=    [   
2?=W    #   
2?QG    TCLEAR  
2#69 ...      LDX   0  BIGPROGCP
2#FY ...      BZE   0  (6)                 [EXIT IF NO BIG PROGS
2#TM ...      STOZ     BIGPROGCP
2*9B          LDN   3  BJOBQ
2*P2    NN    LDX   3  FPTR(3)  
2B8L          TXU   3  CXJO 
2BN=          BCC      (6)                 [EXIT AT END 
2C7W          BC       3,JBBIG  
2CMG          BRN      NN   
2D76
2DLQ    [   
2F6B ...[   
2FL2 ...[ HERE WE HAVE THE SUBROUTINE WHICH SELECTS CANDIDATE TO BE SWAPPED IN  
2G5L ...[     IT SELECTS BETWEEN THE SWAPPED OUT,SPECIALLY SWAPPED OUT SUSPENDED
2GK= ...[     PROGRAMS,IGNORING ANY MARKED TOO BIG OR OF CORE PRIORITY < HIGHEST
2H4W ...[     CORE PRIORITY OF JOBS MARKED TOO BIG(STORED IN BIGPROGCP) 
2HJG ...[     WE CHOOSE ANY REALTIME PROGRAM FIRST,THEN THE PROGRAM WITH
2J46 ...[     THE HIGHEST CORE PRIORITY.IF 2 EXIST OF THE SAME CORE PRIORITY
2JHQ ...[     WE USE FWT+LTR ALGORITHM. 
2K3B ...[   
2KH2 ...[     LINK: X7,USES ALL ACCUMULATORS
2L2L ...[     EXITS +0,IF NONE FOUND,OTHERWISE +1   
2LG= ...[     ON EXIT, X1=FX1,X2=FX2,X4=JOB NUMBER,X3-> JOB BLOCK   
2L^W ...[     THROUGHOUT SUBROUTINE,X3 USED TO SEARCH JOBQ  
2MFG ...[     X5=TLR+FWT OF BEST SO FAR 
2M^6 ...[     X4= ADDRESS OF JOBBLOCKOF BEST SO FAR 
2NDQ ...[     X6=CORE PRIORITY OF HIGHEST SO FAR
2NYB ...[     SETS AWORK4 TO THE HIGHEST CORE PRIORITY OF THE MOP JOBS  
2PD2 ...[      WAITING TO COME IN (IF ANY) EVEN IF THEY ARE MARKED TOO BIG.WHEN 
2PXL ...[      SET +VE,THIS IMPLIES A MOP ENVIRONMENT   
2QC= ...[      THIS IS USED BY SCHEDOUT IF A SWAPOUT IS NEEDED  
2QWW ...[   
2RBG ...SLLSIN  
2RW6 ...      LDN   4  0                   [INITIALISE  
2S*Q ...      LDX   5  GMINUS1             [ALL BITS
2STB ...      LDN   6  0
2T*2 ...      LDX   1  FX1  
2TSL ...      LDX   2  FX2  
2W#= ...      STOZ     AWORK4(2)           [SET BACKGROUND  
2WRW ...      CANDINIT  
2X?G ...      LDN   3  BJOBQ
2XR6 ...ROUND LDX   3  FPTR(3)             [X3 -> NEXT JOBBLOCK 
2Y=Q ...      BXE   3  CXJO,QEND
2YQB ...      CANDCNT   
2^=2 ...      JMBS     ROUND,3,JBPLUGGING,JBBEING   
2^PL ...      JMBAS    TRY,3,JBSO,JBSUSP
329= ...      JMBAC    ROUND,3,JBSTSO,JBPISO
32NW ...TRY 
338G ...                                   [DROP THRU IF TO BE CONSIDERED   
33N6 ...#SKI  G3
347Q ...(   
34MB ...[ WE LOOK FOR REALTIME REQUESTED JOBS FIRST IN GEORGE3  
3572 ...[ BECAUSE SUPPOSE WE HAVE TO KICK OUT AHIGHER PRIORITY  
35LL ...[ PROGRAM TO SWAP IN THE REALTIME ONE IN LOW ADDRESS
366= ...[ THEN ON NEXT TRIP THROUGH SLLLSIN WE'D PICK THAT  
36KW ...[ INSTEAD OF THE REALTIME ONE AND THUS LOOP 
375G ...      JBS      XIT1,3,JBREON
37K6 ...)   
384Q ...      JMBS NOTMOP,3,JBOFFL,JBSISS,JBSSTAR    [J IF NOT MOP JOB  
38JB ...      LDEX  0  ACOREP(3)               [LOAD CP - NB.IGNORE TOP CHAR.   
3942 ...      BXL   0  AWORK4(2),NOTMOP    [J IF < HIGHEST MOP CP SO FAR
39HL ...      STO   0  AWORK4(2)           [SET MOP ENVIRONMENT 
3=3= ...NOTMOP  
3=GW ...      JBS   ROUND,3,JBBIG          [J IF TOO BIG AT PRESENT 
3?2G ...      LDEX  0  ACOREP(3)               [LOAD JOBS CP
3?G6 ...      BXL   0  6,ROUND             [J IF < BEST CP SO FAR   
3?HT ...#   
3?KJ ...#      THE FOLLOWING CODE UP TO TLR IS INSERTED AS A RESULT OF  
3?M? ...#      CORRECTING B9127, SINCE BIGPROGCP IF SET NOW HAS B0=1
3?P2 ...#   
3?QP ...      LDX   0  BIGPROGCP
3?SD ...      BPZ   0  TLR                 [J IF NO TOO BIGS
3?TQ ...                                       [SET B0, SAME AS IN BIGPROGCP
3?X4 ...      LDEX  0  ACOREP(3)
3?YB ...      ORX   0  GSIGN
3?^Q ...      BXL   0  BIGPROGCP,ROUND     [J IF < HIGHEST CP OF TOO BIGS   
3#9J ...TLR 
3#FB ...      LDX   0  JCTLR(3)            [WORK OUT ITS TLR+FWT (FWT WILL  
3#^2 ...      ADX   0  JCFWT(3)            [ BE ZERO WITH IGNOREFWT ON) 
3*DL ...#SKI  K6LLSTEST>499-499 
3*Y= ...      TRACEVER 0,TLR+FWT
3B=M ...      LDEX  1  ACOREP(3)
3BK4 ...      BXU   6  1,XBEST             [J IF ITS CP IS HIGHEST SO FAR   
3BXG ...      BXGE  0  5,ROUND             [AS CP'S =,CHOOSE LEAST TLR+FWT  
3CC6 ...[   
3CWQ ...[     WE HAVE NEW BEST CANDIDATE
3DBB ...[   
3DW2 ...XBEST LDX   5  0                   [SET ITS TLR+FWT 
3F*L ...      LDX   4  3                   [ & ITS JOB BLOCK ADDR.  
3FT= ...      LDEX  6  ACOREP(3)         [ & ITS CP 
3G#W ...#SKI  K6LLSTEST>499-499 
3GSG ...      TRACEVER JOBNUM(3),BSTSOFAR   
3H#6 ...      BRN      ROUND
3HRQ ...QEND                               [END OF JOBQ FOUND   
3J3J ...      LDX   1  FX1  
3J?B ...      BZE   4  (7)                 [EXT IF NONE FOUND   
3JR2 ...      LDX   3  4
3K=L ...XIT1
3KQ= ...      EXIT  7  1
3R66    [   
3RKQ    [   
3S5B    [   
3SK2    [ MAIN ENTRY TO SCHEDULER : IN ASWINT   
3T4L    [   
3TJ=    [   
3W3W    XX1S
3WHG    R4    BSON     BSTRAT,(GEOERR)     [EXTERMINATE IF STRATEGY IN PROGRESS 
3X36          JBS      S1,,ASWCORJAM       [J IF COREJAM
3XGQ          OFF      CJAMAB              [NO  
3Y2B    S1    TEST     0,CSWAPAB,CDELAB,CJAMAB  
3YG2          BNZ   0  TERM                [ANY 'ACTIVE' ABORT MARKER SET   
3Y^L    #SKI  K6LLSTEST>499-499 
3^F=          TRACEVER CLEANCT,SELNEXT  
3^YW          CALL  7  SLLSIN              [SET NECT CANDIDATE  
42DG          BRN      NONE 
42Y6          TRACEDP  0,CLEANCT,4,5,JCSIZE(3),AWORK1(2)
43CQ    S3    ON       BSTRAT              [STRATEGY NOW IN PROGRESS
43XB          LDX   6  JOBNUM(3)
44C2          LDX   5  JCSIZE(3)
44WL          JBC      R4A,3,JBREON        [J IF NOT REALTIME ON
45B=          ORX   5  GSIGN               [AID TO STRATEGY 
45TW    R4A 
46*G          ACROSS   CORESHED,1   
46T6
47#Q    [   
47SB    [ IF NO SWAPIN CANDIDATES,WE TERMINATE  
48#2    [  UNLESS THERE HAS BEEN A FAILED SWAPIN I.E. BIGBIT SET
48RL    [  IN WHICH CASE WE  GO TO SCHEDOUT ING4
49?=    [   
49QW    [  FAILED SWAPIN INCLUDES FAILED O.P.CORE REQUEST IN G4 
4==G    [   
4=Q6    NONE
4?9Q          TRACEDP  1,CLEANCT
4??J ...      CALL  6  TCLEAR   
4?KB ...#UNS  FSHTEST   
4?X8 ...      BI       FX2,BFSHACTB            [INVERT MACHINE BIT  
4#92    TERM
4#NL          ENDCCYCLE 
4*8=          MENDAREA 50,K100SCHEDIN   
4*MW    #END
^^^^ ...141313030002
  • Last modified: 17/01/2024 11:55
  • by 127.0.0.1