DataMuseum.dk

Presents historical artifacts from the history of:

CR80 Wang WCS documentation floppies

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about CR80 Wang WCS documentation floppies

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download
Index: ┃ 0 1 8 C S W ~

⟦d26bbd021⟧ Bits:30005813 8" Wang WCS floppy, CR 0120A, 8" Floppy Disk

    Length: 315392 (0x4d000)
    Description: Bits:30005813 8" Wang WCS floppy, CR 0120A
    Types: 8" Floppy Disk

Namespace

name artifact - - - - - - - - - - - - - - - - - - - - - - -
0843A Skemaer Performance rep. sdv FAH CPS/REP/001 30-03-81 15:41 05 182 04-11-82 09:23 02 28 04-11-82 09:27 05-11-82 10:08 0120A 78 27 57 2176 32560 0843A ⟦455f22f4a⟧ Wang Wps File, Skemaer Performance rep.
1313A CPS/ECP/021 am] FAH/FE Changes to Req. Base 02-10-81 13:21 36 1107 29-01-82 11:12 07 479 29-01-82 11:20 05-02-82 14:12 0120A 5 7 42 80 26515 1313A ⟦91d1fc958⟧ Wang Wps File, CPS/ECP/021
1477A CPS/SDS/024 dhh JSC fra 4.2.4.4.5 30-11-81 09:53 11 30 55883 26-08-85 13:03 01 13 26-08-85 13:05 27-08-85 13:10 0120A 88 25 07 776 77886 @ 1477A ⟦7703c57f7⟧ Wang Wps File, CPS/SDS/024
~ORPHAN03.13 ⟦2c00321e5⟧ Wang Wps File, Spelunked
~ORPHAN05.12 ⟦0c76e0d9b⟧ Wang Wps File, Spelunked
~ORPHAN05.15 ⟦f706245c4⟧ Wang Wps File, Spelunked
1482A CPS/SDS/024 vhn/pn OKH 4.2.5.4.2.5 01-12-81 12:50 4 25 18168 05-02-82 14:41 02 14 05-02-82 10:55 05-02-82 15:28 0120A 77 8 41 616 24179 ~ORPHAN76.00 ⟦73f53d71a⟧ Wang Wps File, Spelunked
1479A CPS SE TEAM MEETING 3 pn ikke slettes!!!!!! 30-11-81 10:38 35 3460 07-01-82 15:16 01 4 23-12-81 13:01 09-02-82 12:24 0120A 3 3 47 48 13437 ~ORPHAN76.08 ⟦acc35cfec⟧ Wang Wps File, Spelunked

Disk picture

  Unclaimed
  Document Body
  Document Head
  Marked Free
  Content List

OctetView

0x00000…00100 (0, 0, 0)   Sector 01204130313230 ┆  A0120A                                                                                                                                                                                                                                                        ┆
0x00100…00200 (0, 0, 1)   Sector 00000000000000 ┆                                                                                                                                                                                                                                                                ┆
0x00200…00300 (0, 0, 2)   Sector ff00ffffffffff ┆           p                                                                                                                                                                                                                                                    ┆
0x00300…00306 (0, 0, 3)   WangDocument {d00=0x08, d01=0x43, d02=0x41, ptr=(50,0, 0), d05=0x00}
0x00306…0030c             WangDocument {d00=0x13, d01=0x13, d02=0x41, ptr=( 2,0, 8), d05=0x00}
0x0030c…00312             WangDocument {d00=0x14, d01=0x77, d02=0x41, ptr=(61,0, 0), d05=0x00}
0x00312…00320             14 82 41 49 00 49 14 82 41 4c 00 00 00 00   ┆  AI I  AL    ┆
0x00320…00340             00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00   ┆                                ┆
         […0x5…]
0x003e0…00400             00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 12   ┆                                ┆
0x00400…00500 (0, 0, 4)   Sector 00000000000000 ┆                                                                                                                                                                                                                                                                ┆
0x00500…00600 (0, 0, 5)   Sector 86312020202020 ┆ 1                                                                                                                                                            8      7  Q? > 7                                                \ . d N ~<) 0uH  &4'>( 1c5 & &    ┆
0x00600…00700 (0, 0, 6)   Sector 421c402600415b ┆B @& A['          X%   %  PO P    ;      A %   C g x g V WD  O @ :s       e 1482A  g     L         < {C < { ; 2     b      PK    b   bD   K      8 : 9~    t   xD e   O  naE                              [8[9 2p&[1[3c;                                        ┆
0x00700…00800 (0, 0, 7)   Sector 00000000000000 ┆                                                                                                                                                                                                                                                                ┆
         […0x8…]
0x01000…01100 (1, 0, 0)   WangDocumentBody
         […0x17…]
0x02800…02900 (2, 0, 8)   WangDocumentHead {hdr=WangSectHead {next=( 2,0, 9), len=0xff, h3=41131341}, f00=»1313A «, f01=»CPS/ECP/021               «, f02=»am]                  «, f03=»FAH/FE               «, f04=»Changes to Req. Base «, f05=02-10-81 13:21, f06=»     «, f07=»36 «, f08=»  1107 «, f09=29-01-82 11:12, f10=»     «, f11=»07 «, f12=»   479 «, f13=29-01-82 11:20, f14=05-02-82 14:12, f15=»0120A «, f16=»  5 «, f17=»   7 «, f18=»42 «, f19=»   80 «, f20=» 26515 «, f21=»  «, f22=»   «, f99=020020000110068610110480aaca15050000000000000037031800df}
0x02900…02a00 (2, 0, 9)   WangDocumentBody
         […0xe…]
0x03800…03900 (3, 0, 8)   Sector 0309ff00148241 ┆      Acf. 4.1.4.1.2  Shared buffer array cf. 4.2.1.4.1.4.c1  Main Queue array cf. 4.2.2.5.2  Sub queue array cf. 4.2.2.5.3  Queue Group descriptor cf. 4.2.2.5.4  Queue List array cf. 4.2.2.5.5  Subprocess capability array cf. 4.2.2.5.6  Capability array c┆
0x03900…03a00 (3, 0, 9)   Sector 030aff00148241 ┆      Af. 4.2.2.5.6  Synchronization element cf. (d)  name array  cf. 4.2.2.5.7  HCB array  cf. 4.2.4.5.2.1    4.3.2 CSF Local Protected Data   These data are located in the local CSF segment for each process   SOBC array  cf. 4.2.6.5.2  Process record cf.┆
0x03a00…03b00 (3, 0, 10)  Sector 030bde00148241 ┆  ^   A 4.1.4.2.1  SSCB array  cf. 4.2.6.5.1  Control translation table cf. 4.2.4.5.3  Info element cf. 4.2.4.5.3   Addressing at these data is done via a bound-registed located in the Kernel Data. (ref. fig. 4.3.2-1).     SOCB.SS DATA  DONE COUNT = 1  DON┆
0x03b00…03c00 (3, 0, 11)  Sector 030caf00148241 ┆  /   A 1                                                                                                                   FIGURE 4.3-1  LAUOUT OF PROTECTED AREA OF A PROCESS    (DONE COUNT: INTEGER,      DONE SOCB: POINTER):OK  DONE SOCB = FIRST SOCB  DO┆
0x03c00…03d00 (3, 0, 12)  Sector 0000b700148241 ┆  7   A 1                                                                                                                   FIGURE 4.3.2-1  ADDRESSING OF CSF, IOC AND TMP DATA IN PPS       CC: COMPLETION CODE): OK  RESTORE R0-R4  R6 = SOCB.IOS DATA.SAVER 6┆
0x03d00…03e00 (3, 0, 13)  Sector 030edd00148241 ┆  ]   A4.1.4.2.1  SSCB array  cf. 4.2.6.5.1  Control translation table cf. 4.2.4.5.3  Info element cf. 4.2.4.5.3   Addressing at these data is done via a bound-registed located in the Kernel Data. (ref. fig. 4.3.2-1).      SOCB.SS DATA  DONE COUNT = 1  DON┆
0x03e00…03f00 (3, 0, 14)  Sector 030f5b00148241 ┆  [   A 1                                                                   FIGURE 4.3-1    e SIZE words from RECEIVED INFO.DATA to INFO (0..SIZE)  DONE SOCB.PCF DATA.SIZE = SIZE  DONE COUNT = 1  RETURN (OK)  Stop                       FIGURE 4.2.6.4.3.5-2┆
0x03f00…04000 (3, 0, 15)  Sector 00005a00148241 ┆  Z   A 1                                                                   FIGURE 4.3.2-1  IOS COMPLETE  (SOCB: POINTER)      (OUTR04: ARRAY (0..4) OF INTEGER      EXIT NO: ERROR OK)      CC: COMPLETION CODE): OK  RESTORE R0-R4  R6 = SOCB.IOS DATA.SAVER 6┆
0x04000…04100 (4, 0, 0)   Sector 0401ff00148241 ┆      A       SSCB= RECORD     KIND: SS KIND; 4.1.6.1.6.5    COMMUNICATION:"COM" SS COMMUNICATION; 4.1.6.6.7.    LOCK:"L" BOOLEAN;      "Defines, if hardware semaphore shall be locked.    DISABLE:"D" BOOLEAN;      "Defines if interrupts shall be "disabled.┆
0x04100…04200 (4, 0, 1)   Sector 0402ab00148241 ┆  +   A    LOCK SEM: POINTER;    PCF PARAM: PCF SINGLE PARAM;      "(   ) (PSP for Process Communication)    SOCB LIST: LINK HEAD    END       Refer figure 4.2.6.5.1-1      record.  4.1.7.2.6.7    4.2.6.4.3.2 PCF Module Interface   Cf. 4.1.7.2.6.7    4.2.6┆
0x04200…04300 (4, 0, 2)   Sector 0403ff00148241 ┆      A 1                                                                  4.2.6.5.2 System Operation Control Block   Each pending System Call is described in an SOCB. SOCBs are located in an array indexed by SOCB INDEX, refer 4.1.6.6.2.   VAR   SOCB ARRAY┆
0x04300…04400 (4, 0, 3)   Sector 0404af00148241 ┆  /   A= ARRAY(1..MAX SOCB INDEX) OF SOCB,  refer 4.1.6.6.1.   Initialization   As part of SCM Initialization, all SOCBs are chained to the FREE SOCB LIST with STATUS= FREE.   .    Flowgram    Cf. figure 4.2.6.4.4.5-1   b) IOS ANSWER RECEIVED    Narrative ┆
0x04400…04500 (4, 0, 4)   Sector 0405ab00148241 ┆  +   A 1                                                                                                                  FIGURE 4.2.6.5.1-1  Service System Control Block  IOS COMPLETE    Narrative    Delivers output parametes saved in SOCB to caller.    ┆
0x04500…04600 (4, 0, 5)   Sector 0406ff00148241 ┆      A 1                                                                  4.2.6.5.3 Ready SOCB List   The list of Ready SOCBs.   VAR READY LIST: LINK HEAD    4.2.6.5.4 Free SOCB List   The list of Free SOCBs.   VAR FREE SOCB LIST: LINK HEAD    4.2.6.6 Sys┆
0x04600…04700 (4, 0, 6)   Sector 04079c00148241 ┆      Atem Call Monitor Common Procedures   System Call Monitor has no common subpackage procedures.     4.2.6.7 Subpackage Interfaces    Refer 4.1.7.3.6     Cf. figure 4.2.6.4.4.5-3    ESULT=NO SIGNAL    SSCB.SOCB LIST. Empty ?    Increment P COUNT    SSC┆
0x04700…04800 (4, 0, 7)   Sector 0308ff00148241 ┆      A 1                                                                  4.3 Memory Layout   Refer fig. 4.3-1    4.3.1 CSF Shared data   The data located in the shared protected CSF segment are the following:   QEL array  cf. 4.1.4.1.1  Subprocess array ┆
0x04800…04900 (4, 0, 8)   Sector 0409f600148241 ┆  v   AOPERATION REF, CC): ERROR OK:   - ERROR? -  SOCB.STATUS = SC ERROR       EXIT NO = ERROR   - OK   ?   EXIT NO = OK  End Case General  SOCB.IOS DATA.SAVER6 = IOS OPERATION REF  RETURN (OK)  Stop                          FIGURE 4.2.6.4.4.5-1 EGAL PCF ┆
0x04900…04a00 (4, 0, 9)   Sector 040aff00148241 ┆      A 1                                                                  Procedure IOS ANSWER RECEIVED  (FIRST SOCB,       LAST SOCB: POINTER       INFO: INTEGER)       (DONE COUNT:INTEGER       DONE SOCB: POINTER):OK  SOCB = FIRST SOCB  SOCB.STATUS = DO┆
0x04a00…04b00 (4, 0, 10)  Sector 040bff00148241 ┆      ANE  Case WAITOPERATION (SOCB.SAVR6) (IOS CC): ERRROR OK:   - ERROR ? - IOS CC = OK?  EXIT NO = ERROR      RETIRE(SCM ERROR, IOS CC)   - OK ?  EXIT NO = OK  End case WAITOPERATION  Save (R0-R4, EXIT,NO (SAVR6),CC) in SOCB.SS DATA  DONE COUNT = 1  DON┆
0x04b00…04c00 (4, 0, 11)  Sector 040c4f00148241 ┆  O   AE SOCB  = SOCB  RETURN (OK)  Stop                  FIGURE 4.2.6.4.4.5-2  dure PCF ANSWER RECEIVED (RECEIVED INFO: SYNC INFO,      FIRST SOCB,      LAST SOCB: POINTER)      (DONE COUNT: INTEGER,      DONE SOCB: POINTER):OK  DONE SOCB = FIRST SOCB  DO┆
0x04c00…04d00 (4, 0, 12)  Sector 040dff00148241 ┆      A 1                                                                  Start  Procedure IOS COMPLETE  (SOCB: POINTER)      (OUTR04: ARRAY (0..4) OF INTEGER      EXIT NO: ERROR OK)      CC: COMPLETION CODE): OK  RESTORE R0-R4  R6 = SOCB.IOS DATA.SAVER 6┆
0x04d00…04e00 (4, 0, 13)  Sector 040ede00148241 ┆  ^   A  R7 = SOCB.IOS DATA.CC  RETURN (OK)  Stop   Start  Procedure IOS CANCEL (SOCB): OK  Case CANCEL (SOCB. SAVR6) (IOS CC): ERROR OK:   - ERROR? - RETIRE (SCM ERROR, IOS CC)   - OK?  End case CANCEL  RETURN (OK)  Stop  : OK  EXIT NO = OK  CC = OK  RETU┆
0x04e00…04f00 (4, 0, 14)  Sector 040fff00148241 ┆      A 1                                                                  4.2.6.5  System Call Monitor Subpackage Data    SCM Data are located in the Local System Segment for calling process, cf. 4.1.4.    4.2.6.5.1 Service System Control Blocks   Each Se┆
0x04f00…05000 (4, 0, 15)  Sector 0400ff00148241 ┆      Arvice System accessed by a process is described by an SSCB. The SSCBs are located in an array indexed by SSCB INDEX, refer 4.1.6.6.4.   VAR   SSCB ARRAY=ARRAY(SSCB INDEX) OF SSCB   TYPE   1                                                            ┆
0x05000…05100 (5, 0, 0)   Sector 0501ff00148241 ┆      A IOS Interface Module Interface   Cf. 4.1.7.2.6.8    4.2.6.4.4.3 IOS Interface Module Components   The IOS interface module consists of four procedures:   - IOS INIT  - IOS ANSWER RECEIVED  - IOS COMPLETE  - IOS CANCEL    4.2.6.4.4.4 IOS Interface M┆
0x05100…05200 (5, 0, 1)   Sector 0502b500148241 ┆  5   Aodule Data   a) Data References    SOCB cf. 4.1.6.6.1   b) External Data    NA   c) Local Data    The IOS Interface Module has structured the SOCB SS DATA field as a record.  4.1.7.2.6.7    4.2.6.4.3.2 PCF Module Interface   Cf. 4.1.7.2.6.7    4.2.6┆
0x05200…05300 (5, 0, 2)   Sector 0503ff00148241 ┆      A 1                                                                    TYPE   1                                                                    IOS DATA = RECORD       SAVER0,       SAVER1,       SAVER2,       SAVER3,       SAVER4,       SAVER6,  ┆
0x05300…05400 (5, 0, 3)   Sector 0504ff00148241 ┆      A     CC: INTEGER      END    4.2.6.4.4.5 IOS Interface Module Design   a) IOS INIT    Narrative    Call IO-System in General-IO entry and Saves IOS OPERATION REF in SOCB.    Flowgram    Cf. figure 4.2.6.4.4.5-1   b) IOS ANSWER RECEIVED    Narrative ┆
0x05400…05500 (5, 0, 4)   Sector 0505ff00148241 ┆      A   Call IO-System function "Wait Operation" and save R0-R4, EXIT NO and CC in SOCB.    DONE COUNT is always set to "1".    Flowgram    Cf. figure 4.2.6.4.4.5-2.   c) IOS COMPLETE    Narrative    Delivers output parametes saved in SOCB to caller.    ┆
0x05500…05600 (5, 0, 5)   Sector 05062d00148241 ┆  -   AFlowgram    Cf. figure 4.2.6.4.4.5-3.  NSWER RECEIVED    Narrative    Received info are delivered to caller in specified area and SOCB. PCF DATA is updated.    Flowgram    Cf. figure 6.4.3.5-2   c) PCF COMPLETE    Output parameter from SOCB.PCF DATA┆
0x05600…05700 (5, 0, 6)   Sector 0507b900148241 ┆  9   A 1                                                                   d) IOS CANCEL    Narrative    Call the IO-System "Cancel" function    Flowgram    Cf. figure 4.2.6.4.4.5-3    ESULT=NO SIGNAL    SSCB.SOCB LIST. Empty ?    Increment P COUNT    SSC┆
0x05700…05800 (5, 0, 7)   Sector 0408ff00148241 ┆      A 1                                                                  Procedure IOS INIT (FUNCTION: SS FUNCTION,    SOCB:POINTER,    INR04: ARRAY(0..4)OF INTEGER)    (CC: COMPLETION CODE):OK  Case GENERAL (FUNCTION IOR INITERFLAG, SOCB, INR04)   (IOS ┆
0x05800…05900 (5, 0, 8)   WangDocumentBody
         […0x3…]
0x05c00…05d00 (5, 0, 12)  Sector 050d6400147741 ┆  d  wA 1                                                                        Fig. 4.2.5.4.2.3-1  MBER = ERROR                OK:     EXIT NUMBER = OK          End Case WAIT SYSTEM CALL    End Case INIT SYSCALL    Stop     Fig. 4.2.5.4.1.5-1b zed as fol┆
0x05d00…05e00 (5, 0, 13)  Sector 050eff00147741 ┆     wA 1                                                                  4.2.5.4.2.4 Data Description   a) Data References    1) COROUTINE RECORD c.f. 4.1.6.5.1   2) COROUTINE OPERATION c.f. 4.1.6.5.2   3) COROUTINE SEMAPHORE c.f. 4.1.6.5.3   4) RUNNING ┆
0x05e00…05f00 (5, 0, 14)  Sector 0000c000147741 ┆  @  wACOROUTINE c.f. 4.1.6.5.6   5) READY LIST c.f. 4.2.5.5.2   b) External Data    1) COROUTINE RECORD. (m)   2) COROUTINE OPERATION. (m)   3) COROUTINE SEMAPHORE (m)   c) Local Data    None RE? SEMAPHORE = OPERATION.ACTIVATION           DECREMENT SEMAPH┆
0x05f00…06000 (5, 0, 15)  Sector 0500ff00147741 ┆     wA                          System Call       (c.f. b)                   STORE REGISTERS                   TRACE (EXIT, SHORT)   End Case SC FUNCTION   RETIRE (CMON ERROR, FALSE)  (d) 4.1.4.6    RESTORE REGISTERS   RETURN (EXIT NUMBER)   Stop        F┆
0x06000…06100 (6, 0, 0)   WangDocumentBody
         […0x2bf…]
0x32000…32100 (50, 0, 0)  WangDocumentHead {hdr=WangSectHead {next=(50,0, 1), len=0xff, h3=41084341}, f00=»0843A «, f01=»Skemaer Performance rep.  «, f02=»sdv                  «, f03=»FAH                  «, f04=»CPS/REP/001          «, f05=30-03-81 15:41, f06=»     «, f07=»05 «, f08=»   182 «, f09=04-11-82 09:23, f10=»     «, f11=»02 «, f12=»    28 «, f13=04-11-82 09:27, f14=05-11-82 10:08, f15=»0120A «, f16=» 78 «, f17=»  27 «, f18=»57 «, f19=» 2176 «, f20=» 32560 «, f21=»  «, f22=»   «, f99=020098000110056610110220aa4a55050000000000000138037002df}
0x32100…32200 (50, 0, 1)  WangDocumentBody
         […0xae…]
0x3d000…3d100 (61, 0, 0)  WangDocumentHead {hdr=WangSectHead {next=(61,0, 1), len=0xff, h3=41147741}, f00=»1477A «, f01=»CPS/SDS/024               «, f02=»dhh                  «, f03=»JSC                  «, f04=»fra 4.2.4.4.5        «, f05=30-11-81 09:53, f06=»  11 «, f07=»30 «, f08=» 55883 «, f09=26-08-85 13:03, f10=»     «, f11=»01 «, f12=»    13 «, f13=26-08-85 13:05, f14=27-08-85 13:10, f15=»0120A «, f16=» 88 «, f17=»  25 «, f18=»07 «, f19=»  776 «, f20=» 77886 «, f21=»  «, f22=» @ «, f99=020010000110062710110280aaca15050000000000000037031c01df}
0x3d100…3d200 (61, 0, 1)  WangDocumentBody
         […0x6…]
0x3d800…3d900 (61, 0, 8)  Sector 3d09ff00148241 ┆=     A 1                                                                  Procedure PCF INIT (FUNCTION:SCM FUNCTION,     INFO: POINTER,     SOCB: POINTER),     (EXIT NO: ERROR OK,     CC:COMPLETION CODE):OK  FUNCTION NE AWAIT SYNCEL? - RETIRE(ILLEGAL PCF ┆
0x3d900…3da00 (61, 0, 9)  Sector 3d0aff00148241 ┆=     AFUNCTION)  SOCB.PCF DATA.INFO = INFO  CC = OK  EXIT NO = OK  RETURN (OK)  Stop  SSCB = SSCB ARRAY (SOCB.SS ID)  CASE CHECK PAGE ACCESS(INFO,SSCB SIZE,WRITE ACCESS):ERROR OK      ERROR: SCM RETIRE (SCM PARAM ADDRESS ERROR)  END CASE                  ┆
0x3da00…3db00 (61, 0, 10) Sector 3d0b2200148241 ┆= "   A       FIGURE 4.2.6.4.3.5-1                                         IO ANSWER RECEIVED  Start  SSCB=SSCB ARRAY (SOCB.SS ID)  Case SSCB.KIND:   IOS?-IOS ANSWER RECEIVED(SOCB,IOS OP)       (COUNT)   IOC?-IOC ANSWER RECEIVED(SOCB,IOS OP)       (COUNT) ┆
0x3db00…3dc00 (61, 0, 11) Sector 3d0cff00148241 ┆=     A 1                                                                  Procedure PCF ANSWER RECEIVED (RECEIVED INFO: SYNC INFO,      FIRST SOCB,      LAST SOCB: POINTER)      (DONE COUNT: INTEGER,      DONE SOCB: POINTER):OK  DONE SOCB = FIRST SOCB  DO┆
0x3dc00…3dd00 (61, 0, 12) Sector 3d0dff00148241 ┆=     ANE SOCB.STATUS = DONE  SIZE = RECEIVED INFO.XFER  INFO = DONE SOCB.PCF DATA.INFO  Move SIZE words from RECEIVED INFO.DATA to INFO (0..SIZE)  DONE SOCB (WORK(O) = SIZE  DONE COUNT = 1  RETURN (OK)  Stop                          FIGURE 4.2.6.4.3.5-2  ┆
0x3dd00…3de00 (61, 0, 13) Sector 3d0eff00148241 ┆=     A 1                                                                  Procedure PCF COMPLETE  (SOCB:POINTER)      (COUNT:INTEGER,      INFO:ARRAY (1..COUNT) OF INTEGER,      EXIT NO: ERROR OK,      CC: COMPLETION CODE): OK  EXIT NO = OK  CC = OK  RETU┆
0x3de00…3df00 (61, 0, 14) Sector 3d0f9800148241 ┆=     ARN (OK)  Stop   Start  Procedure PCF CANCEL (SOCB:POINTER):OK  SOCB.STATUS = DONE  RETURN (OK)  Stop                         FIGURE 4.2.6.4.3.5-3 2.4 SCM Wait Module Data   a) Data References    SSCB ARRAY  c.f. 4.2.6.5.4    SOCB  c.f. 4.l.6.6.l   b┆
0x3df00…3e000 (61, 0, 15) Sector 0500ff00148241 ┆      A 1                                                                  4.2.6.4.4 IOS Interface Module Specification   IOS interface Module maintains the interface to DAMOS   IOS.    4.2.6.4.4.1 Functional Specification   Cf. 4.1.7.2.6.8.    4.2.6.4.4.2┆
0x3e000…3e100 (62, 0, 0)  Sector 3e016200148241 ┆> b   A.HEAD.NEXT  End READY SOCB Loop  Stop                                  FIGURE 4.2.6.4.2.5-4                        Type PCF SYNC INFO =    RECORD     HEADER: SYNC INFO HEADER;     INFO: ARRAY (1..PCF MAX INFO SIZE)        OF INTEGER;    END; case SS┆
0x3e100…3e200 (62, 0, 1)  Sector 3e02ff00148241 ┆>     A 1                                                                  4.2.6.4.3 Process Communication Facility Module Specification    4.2.6.4.3.1 Functional Speification   Cf. 4.1.7.2.6.7    4.2.6.4.3.2 PCF Module Interface   Cf. 4.1.7.2.6.7    4.2.6┆
0x3e200…3e300 (62, 0, 2)  Sector 3e03ff00148241 ┆>     A.4.3.3 PCF Module Components   The PCF module consists of four procedures:   - PCF INIT  - PCF ANSWER RECEIVED  - PCF COMPLETE  - PCF CANCEL    4.2.6.4.3.4 PCF Data   a) Data References    SOCB c.f. 4.1.6.6.1   b) External Data    NA   c) Local Data┆
0x3e300…3e400 (62, 0, 3)  Sector 3e044800148241 ┆> H   A    PCF Module has structured the SOCB.SS DATA field as a record. his SSCB, the corresponding Service System is entered in the entry point Answer Received, by calling the Answer Received procedure in actual Service System.   Upon return from Answer ┆
0x3e400…3e500 (62, 0, 4)  Sector 3e05ff00148241 ┆>     A 1                                                                     TYPE   PCF DATA=RECORD     INFO:POINTER,     SIZE:INTEGER,      END    4.2.6.4.3.5 PCF Module Design   a) PCF INIT    Narrative    Input parameters are saved in SOCB    Flowgram ┆
0x3e500…3e600 (62, 0, 5)  Sector 3e06ff00148241 ┆>     A   C.f. figure 4.2.6.4.3.5-1   b) PCF ANSWER RECEIVED    Narrative    Received info are delivered to caller in specified area and SOCB. PCF DATA is updated.    Flowgram    Cf. figure 6.4.3.5-2   c) PCF COMPLETE    Output parameter from SOCB.PCF DATA┆
0x3e600…3e700 (62, 0, 6)  Sector 3e078400148241 ┆>     A are delivered to caller.    Flowgram    Cf. figure 4.2.6.4.3.5-3   d) PCF CANCEL    Narrative    SOCB.STATUS is set to DONE   For all SSCBs in SSCB ARRAY LOOP    SSCB.PCF PARAM.RESULT=NO SIGNAL    SSCB.SOCB LIST. Empty ?    Increment P COUNT    SSC┆
0x3e700…3e800 (62, 0, 7)  Sector 3d087200148241 ┆= r   A 1                                                                    Flowgram    Cf. figure 4.2.6.4.3.5-3  OMMUNICATION EQ BY SEMA ?    SSCB. PCF PARAM.INFO = HEADER      SSCB.PCF PARAM.INFO = NIL    LAST SSCB IN ARRAY ?    EXIT   End SSCB LOOP    ┆
0x3e800…3e900 (62, 0, 8)  Sector 3e09ff00148241 ┆>     AP COUNT EQ 0 ? - retire (no pending system calls)   Case GENERAL AWAIT (PARAM LINK, NIL)      (SOCB, IOS OP, CC):(ERROR, IO, NO IO)    ERROR?- RETIRE (SCM ERROR, CC, FALSE)    IO?- IO ANSWER RECEIVED    NO IO?- NO IO ANSWER RECEIVED   End case GENER┆
0x3e900…3ea00 (62, 0, 9)  Sector 3e0a3d00148241 ┆> =   AAL AWAIT   RETURN (OK)   Stop     FIGURE 4.2.6.4.2.5-1              4.2.6.4.2 SCM Wait Module Specification    4.2.6.4.2.1 Functional Specification   SCM Wait Module is only activated from system Call Monitor itself. It contains the central waiting ┆
0x3ea00…3eb00 (62, 0, 10) Sector 3e0bff00148241 ┆>     A 1                                                                  IO ANSWER RECEIVED  Start  SSCB=SSCB ARRAY (SOCB.SS ID)  Case SSCB.KIND:   IOS?-IOS ANSWER RECEIVED(SOCB,IOS OP)       (COUNT)   IOC?-IOC ANSWER RECEIVED(SOCB,IOS OP)       (COUNT) ┆
0x3eb00…3ec00 (62, 0, 11) Sector 3e0c7000148241 ┆> p   A End case SSCB KIND  TEST DONE SOCBS(COUNT,SOCB)  Stop                               FIGURE 4.2.6.4.2.5-2  Registers    R4 Pointer to CSF Local Data (kept)   R6 LINK (destr)    Return Registers    R0-R5,R7 (kept)    Fatal Errors    No pending system┆
0x3ec00…3ed00 (62, 0, 12) Sector 3e0dff00148241 ┆>     A 1                                                                  NO IO ANSWER RECEIVED  Start  REPEAT FOR ALL SSCBS Loop   SSCB.PCF PARAM.RESULT EQ INFO RECEIVED?  EXIT  End REPEAT FOR ALL SSCBS Loop  Case SSCB.KIND   - QMON?-INSPECT RECEIVE(NIL,┆
0x3ed00…3ee00 (62, 0, 13) Sector 3e0eff00148241 ┆>     ASSCB.SOCB LIST)          (COUNT,DONE SOCB)   - MMON?-MMON ANSWER RECEIVED(INFO,SSCB.SOCB LIST)          (COUNT,DONE SOCB)   - TMP ?-TMP ANSWER RECEIVED(INFO,SSCB.SOCB LIST)          (COUNT,DONE SOCB)   -PCF ? PCF ANSWER RETURNED (INFO, SSCB.SOCB LIS┆
0x3ee00…3ef00 (62, 0, 14) Sector 3e0f7d00148241 ┆> }   AT)          (INFO, DONE SOCB)  End case SSCB.KIND  TEST DONE SOCBS(COUNT,DONE SOCB)  Stop          FIGURE 4.2.6.4.2.5-3                   4.2.6.4.2.4 SCM Wait Module Data   a) Data References    SSCB ARRAY  c.f. 4.2.6.5.4    SOCB  c.f. 4.l.6.6.l   b┆
0x3ef00…3f000 (62, 0, 15) Sector 3e00ff00148241 ┆>     A 1                                                                  Procedure TEST DONE SOCBS(COUNT:INTEGER, SOCB:POINTER):OK  READY SOCB Loop   COUNT LE 0 ?   EXIT   SOCB.STATUS NE DONE?   CHAIN SOCB (SOCB,READY LIST)   DECREMENT COUNT   SOCB= SOCB┆
0x3f000…3f100 (63, 0, 0)  Sector 3f01f800148241 ┆? x   Aive the info from a synchronization element.   1                                                                   Type PCF SYNC INFO =    RECORD     HEADER: SYNC INFO HEADER;     INFO: ARRAY (1..PCF MAX INFO SIZE)        OF INTEGER;    END; case SS┆
0x3f100…3f200 (63, 0, 1)  Sector 3f02ff00148241 ┆?     A 1                                                                   TMP ANSWER RECEIVED  c.f. (j) 4.2.1   ANSWER RECEIVED  c.f. (f) 4.2   Narrative   The SSCB ARRAY is used to collect a parameter list for the IO system procedure General Await. Each┆
0x3f200…3f300 (63, 0, 2)  Sector 3f03ff00148241 ┆?     A SSCB having a non-empty list of pending SOCBs and communicating by synch.element is included in the General Await parameter.   If no SSCBs have pending SOCBs, the process is retired.   Upon return from General Await the parameter list is then inspe┆
0x3f300…3f400 (63, 0, 3)  Sector 3f04ff00148241 ┆?     Acted in order to locate the SSCB for which info is received. For this SSCB, the corresponding Service System is entered in the entry point Answer Received, by calling the Answer Received procedure in actual Service System.   Upon return from Answer ┆
0x3f400…3f500 (63, 0, 4)  Sector 3f05ff00148241 ┆?     AReceived the Wait Event procedure shall move all SOCBs with DONE status from the list of pending SOCBs to the common "List of Ready Operations". This is done by calling the   TEST DONE SOCBS procedure.   If a Service System uses IO System instead of┆
0x3f500…3f600 (63, 0, 5)  Sector 3f06b300148241 ┆? 3   A a special synchronization element, the info parameter in Answer Received shall be the operation reference returned by IO System.   Flowgram  c.f. fig. 4.2.6.4.2.5-(l-4)     EQ SSCB ARRAY (SOCB.SS ID)  SELECT SERVICE SYSTEM COMPLETION  SOCB.STATUS =┆
0x3f600…3f700 (63, 0, 6)  Sector 3f07ff00148241 ┆?     A 1                                                                   Procedure WAIT EVENT:OK   PARAM LINK = 0 ,  P COUNT = 0   For all SSCBs in SSCB ARRAY LOOP    SSCB.PCF PARAM.RESULT=NO SIGNAL    SSCB.SOCB LIST. Empty ?    Increment P COUNT    SSC┆
0x3f700…3f800 (63, 0, 7)  Sector 3e08ff00148241 ┆>     AB. COMMUNICATION EQ BY IOS ?    SSCB. PCF PARAM.LINK = PARAM LINK    PARAM LINK = % SSCB.PCF PARAM    SSCB.COMMUNICATION EQ BY SEMA ?    SSCB. PCF PARAM.INFO = HEADER      SSCB.PCF PARAM.INFO = NIL    LAST SSCB IN ARRAY ?    EXIT   End SSCB LOOP    ┆
0x3f800…3f900 (63, 0, 8)  Sector 3f099500148241 ┆?     ATE(SOCB)    - PCF  ?- PCF COMPLETE(SOCB)    - IOS ?- IOS COMPLETE(SOCB)   End case SSCB.KIND  Stop                        FIGURE 4.2.6.4.1.5-9 rs    - SYSTEM CALL STATUS is set to PENDING    Function is then used to select a SSCB. The appropriate Se┆
0x3f900…3fa00 (63, 0, 9)  Sector 3f0aff00148241 ┆?     A 1                                                                  4.2.6.4.2 SCM Wait Module Specification    4.2.6.4.2.1 Functional Specification   SCM Wait Module is only activated from system Call Monitor itself. It contains the central waiting ┆
0x3fa00…3fb00 (63, 0, 10) Sector 3f0bff00148241 ┆?     Apoint of a process.   It is called when the process cannot proceed further until some external event has occurred.   The process must have pending system calls when this module is entered. Otherwise it is a fatal error.    4.2.6.4.2.2 SCM Wait Modul┆
0x3fb00…3fc00 (63, 0, 11) Sector 3f0cff00148241 ┆?     Ae Interface   Call specification   a) WAIT EVENT:OK   b) WAIT EVENT(R6):OK    Register Conventions    Call Registers    R4 Pointer to CSF Local Data (kept)   R6 LINK (destr)    Return Registers    R0-R5,R7 (kept)    Fatal Errors    No pending system┆
0x3fc00…3fd00 (63, 0, 12) Sector 3f0dff00148241 ┆?     A calls.    4.2.6.4.2.3 SCM Wait Module Component    SCM Wait Module is implemented as two procedures.   The first is WAIT EVENT which is called from the Application Interface Module. The second is TEST DONE SOCB which is only called from WAIT EVENT.┆
0x3fd00…3fe00 (63, 0, 13) Sector 3f0e0800148241 ┆?     A  (SCM NO RESOURCES)  SOCB.FUNCTION = FUNCTION  SOCB.AP REF = AP REF  SOCB.STATUS = PENDING  SSCB =SSCB ARRAY (FUNCTION.SS ID)  SELECT SERVICE SYSTEM FUNCTION  Case SOCB.STATUS:   1                                                                   -┆
0x3fe00…3ff00 (63, 0, 14) Sector 3f0fff00148241 ┆?     A 1                                                                    1                                                                   4.2.6.4.2.4 SCM Wait Module Data   a) Data References    SSCB ARRAY  c.f. 4.2.6.5.4    SOCB  c.f. 4.l.6.6.l   b┆
0x3ff00…40000 (63, 0, 15) Sector 3f00ff00148241 ┆?     A)   External Data    SSCB (ALL) (M)   SOCB (ALL) (M)   c)   Local Data     4.2.6.4.2.5 SCM Wait Module Design   External Procedures   INSPECT RECEIVE  c.f. 4.2.2.4.1   MMON ANSWER RECEIVED  c.f. 4.4.2.4     PCF Parameter   The parameter used to rece┆
0x40000…40100 (64, 0, 0)  Sector 4001ff00148241 ┆@     AOCB)    (EXIT NO, CC):OK   TMP ?- TMP INIT(SS CODE, SOCB)    (EXIT NO, CC):OK   IOC ?- IOC INIT(SS CODE, SOCB)    (EXIT NO, CC):OK   PCF ?- PCF INIT(SS CODE, SOCB)    (EXIT NO, CC):OK   IOS ?- IOS INIT(SS CODE, SOCB)    (EXIT NO, CC):OK  End case SS┆
0x40100…40200 (64, 0, 1)  Sector 40023c00148241 ┆@ <   ACB.KIND  Stop                    FIGURE 4.2.6.4.1.5-7               E CANCEL  Start  SOCB = SOCB ARRAY (SO REF)  Array address error or SOCB.STATUS EQ FREE  ?-RETIRE(SCM ERROR, SOCB REF ERROR)  SOCB.STATUS NE PENDING?  SSCB = SSCB ARRAY (SOCB.FUNCTI┆
0x40200…40300 (64, 0, 2)  Sector 4003ff00148241 ┆@     A 1                                                                   c) Wait    Narrative    Waits for completion of the system call identified by SOCB.    If SOCB Status is PENDING, the internal procedure Wait Event is called. This is repeated unti┆
0x40300…40400 (64, 0, 3)  Sector 4004ff00148241 ┆@     Al the Status of SOCB has changed to DONE. Then the Service System is entered in the COMPLETE FUNCTION entry point, by calling the "COMPLETE" procedure in actual Service System.    Upon return from Service System, the SOCB is released.    The "work" ┆
0x40400…40500 (64, 0, 4)  Sector 4005ad00148241 ┆@ -   Apart of SOCB is, however, untouched and may be used by calling procedure to get output parameters from service system.    Flowgram    Cf. figure 4.2.6.4.1.5-8 to -9.  , ILLEGAL SS ID) or SSCB.KIND = NE PCF KIND  SSCB.COMMUNCATION = COMMUNICATION KIN┆
0x40500…40600 (64, 0, 5)  Sector 4006ff00148241 ┆@     A 1                                                                  Procedure WAIT (SOCB:POINTER)  Wait loop   SOCB.STATUS NE PENDING?  EXIT  WAIT EVENT  End WAIT Loop  SSCB EQ SSCB ARRAY (SOCB.SS ID)  SELECT SERVICE SYSTEM COMPLETION  SOCB.STATUS =┆
0x40600…40700 (64, 0, 6)  Sector 40076f00148241 ┆@ o   A FREE  CHAIN SOCB (SOCB, FREE SOCB LIST)  RETURN(OK)  Stop                          FIGURE 4.2.6.4.1.5-8  called.    - DEFINE SERVICE SYSTEM:      Initializes a SSCB with the parameters specified by call.   Flowgram   cf. figure 4.2.6.4.1.5-1 to -3.┆
0x40700…40800 (64, 0, 7)  Sector 3f08ff00148241 ┆?     A 1                                                                  SELECT SERVICE SYSTEM COMPLETION  Start  Case SSCB.KIND:   - QMON  ?- COMPLETE RECEIVE(SOCB)    - MMON ?- MMON COMPLETE(SOCB)    - TMP  ?- TMP COMPLETE(SOCB)    - IOC  ?- IOC COMPLE┆
0x40800…40900 (64, 0, 8)  Sector 4009ff00148241 ┆@     A  A free SOCB is allocated and initialized with:    - FUNCTION taken from input parameters    - APPLICATION REFERENCE taken from input parameters    - SYSTEM CALL STATUS is set to PENDING    Function is then used to select a SSCB. The appropriate Se┆
0x40900…40a00 (64, 0, 9)  Sector 400aff00148241 ┆@     Arvice System is then entered in its INIT FUNCTION entry point. This is done by calling the INIT procedure in actual Service System.    Upon return from Service System, the SYSTEM CALL STATUS of SOCB is inspected. If it is DONE, the SOCB is chained t┆
0x40a00…40b00 (64, 0, 10) Sector 400bff00148241 ┆@     Ao the list of ready operations. If it is SC ERROR, the SOCB is released. If it is PENDING the SOCB is chained into SOCB LIST in SSCB.    Finally return is made with the completion code and exit condition received from Service System, and with the Sy┆
0x40b00…40c00 (64, 0, 11) Sector 400c6a00148241 ┆@ j   Astem Operation Reference return parameter set to SOCB ID   Flowgram   Cf. figure 4.2.6.4.1.5.(6-7)   System Call cf. 4.1.7.2.6.2   c) Wait System Call cf. 4.1.7.2.6.3   d) Cancel System Call cf. 4.1.7.2.6.4   e) Wait Next Operation cf. 4.1.7.2.6.5  ┆
0x40c00…40d00 (64, 0, 12) Sector 400dff00148241 ┆@     A 1                                                                  Start  Procedure INIT SYSTEM CALL (FUNCTION: SCM FUNCTION,      AP REF: INTEGER)       EXIT NO: ERROR OK,      SOCB: POINTER,      CC:COMPLETION CODE)  FREE SOCB LIST EMPTY? - RETIR┆
0x40d00…40e00 (64, 0, 13) Sector 400eff00148241 ┆@     AE (SCM NO RESOURCES)  SOCB.FUNCTION = FUNCTION  SOCB.AP REF = AP REF  SOCB.STATUS = PENDING  SSCB =SSCB ARRAY (FUNCTION.SS ID)  SELECT SERVICE SYSTEM FUNCTION  Case SOCB.STATUS:   1                                                                   -┆
0x40e00…40f00 (64, 0, 14) Sector 400fcd00148241 ┆@ M   A DONE  ? - CHAIN SOCB (SOCB, READY LIST)  - PENDING  ? - CHAIN IN(SOCB, SSCB. SOCB LIT)   - SC ERROR ? - SOCB.STATUS = FREE  End case SOCB.STATUS  Return  Stop                  FIGURE 4.2.6.4.1.5-6  CB.STATUS EQ FREE   WAIT (SOCB)   RESTORE REGISTER┆
0x40f00…41000 (64, 0, 15) Sector 4000ff00148241 ┆@     A 1                                                                  SELECT SERVICE SYSTEM FUNCTION  Start  SS CODE = FUNCTION.SS CODE  Case SSCB.KIND   QMON ? - INIT RECEIVE FIRST QEL(SS CODE, SOCB)    (EXIT NO, CC):OK   MMON ?- MMON INIT(SS CODE, S┆
0x41000…41100 (65, 0, 0)  Sector 41014800148241 ┆A H   A REF, SOCB.SOCB ID, OK)   Stop              FIGURE 4.2.6.4.1.5-3             Figure 4.2.6.4.1.3-1   furthermore the System Call Monitor common functions are shown at the same level.   The modules having more than one mainfunction are broken down so ┆
0x41100…41200 (65, 0, 1)  Sector 4102ff00148241 ┆A     A 1                                                                  E CANCEL  Start  SOCB = SOCB ARRAY (SO REF)  Array address error or SOCB.STATUS EQ FREE  ?-RETIRE(SCM ERROR, SOCB REF ERROR)  SOCB.STATUS NE PENDING?  SSCB = SSCB ARRAY (SOCB.FUNCTI┆
0x41200…41300 (65, 0, 2)  Sector 4103ff00148241 ┆A     AON.S ID)  Case SSCB.KIND   - QMON ? - CANCEL RECEIVE (SOCB)   - MMON ? - MMON CANCEL (SOCB)   - TMP  ? - TMP CANCEL (SOCB)   - IOC  ? - IOC CANCEL (SOCB)   - PCF  ? - PCF CANCEL (SOCB)   - IOS  ? - IOS CANCEL (SOCB)  End case SSCB.KIND  SOCB.STATUS ┆
0x41300…41400 (65, 0, 3)  Sector 41047700148241 ┆A w   ANE DONE ?  CHAIN OUT (SOCB)  CHAIN IN (SOCB, READY LIST)  MON RETURN (0,OK)  Stop           FIGURE 4.2.6.4.1.5-4 T  IOC COMPLETE  IOC CANCEL  .   (f) 4.2  rocedures    WAIT EVENT cf. 4.2.6.4.2.5   PCF INIT cf. 4.2.6.4.3.5.a   PCF ANSWER RECEIVED cf.┆
0x41400…41500 (65, 0, 4)  Sector 4105ff00148241 ┆A     A 1                                                                  E DEFINE SERVICE SYSTEM  Start  SSCB = SSCB ARRAY (SS ID)  Array address error? - RETIRE (SCM ERROR, ILLEGAL SS ID) or SSCB.KIND = NE PCF KIND  SSCB.COMMUNCATION = COMMUNICATION KIN┆
0x41500…41600 (65, 0, 5)  Sector 4106ff00148241 ┆A     AD  SSCB.PCF PARAM.SYNCEL = SYNCEL ID  CASE COMMUNICATION KIND   BY SEMA ? SYNCEL INFO SIZE NE 0 ?   BY INFO ? SYNCEL INFO SIZE EQ 0 ?      SSCBZ.SIZE =  ????(ILLEGAL     MIN(PCF MAX SIZE,  DEFINE PARAMS)     SYNC INFO SIZE   END CASE  MON RETURN  st┆
0x41600…41700 (65, 0, 6)  Sector 41073200148241 ┆A 2   Aop                     FIGURE 4.2.6.4.1.5-5 rocedure in the Service System identified by SS ID in SOCB is called.    - DEFINE SERVICE SYSTEM:      Initializes a SSCB with the parameters specified by call.   Flowgram   cf. figure 4.2.6.4.1.5-1 to -3.┆
0x41700…41800 (65, 0, 7)  Sector 4008ff00148241 ┆@     A 1                                                                    1                                                                   b) Initiate System Call    Narrative    From the INIT SYSCALL entry the INIT SYSTEM CALL procedure is called.  ┆
0x41800…41900 (65, 0, 8)  Sector 4109ff00148241 ┆A     A 1                                                                   MON Procedure SCM (INR04:ARRAY(0..4)OF INTEGER,      SCM CODE:SCM CODE TYPE,      FUNCTION: SCM FUNCTION,      AP REF: INTEGER,      SO REF: SOCB INDEX)       (OUTR04:ARRAY (0..4) ┆
0x41900…41a00 (65, 0, 9)  Sector 410aff00148241 ┆A     AOF INTEGER,      AP REF: INTEGER,      SO REF: SOCB INDEX,      CC: COMPLETION CODE): ERROR OK   1                                                                   Case SCM CODE   - INIT SYSCALL ?-E INIT SYSCALL   - SYSCALL  ?-E SYSCALL   - WAIT SY┆
0x41a00…41b00 (65, 0, 10) Sector 410bff00148241 ┆A     ASCALL ?-E WAIT SYSCALL   - WAIT NEXT OPERATION ?-E WAIT NEXT OPERATION   - CANCEL SYSCALL ?-E CANCEL   - DEFINE SERVICE SYSTEM ?-E DEFINE SERVICE SYSTEM  End case SCM CODE   RETIRE (SCM ERROR, ILLEGAL CODE)   Stop                        FIGURE 4.2.6┆
0x41b00…41c00 (65, 0, 11) Sector 410c0f00148241 ┆A     A.4.1.5-1 lel.    4.2.6.4.1.1 Functional Specification   a) Initiate System Call cf. 4.1.7.2.6.1   b) System Call cf. 4.1.7.2.6.2   c) Wait System Call cf. 4.1.7.2.6.3   d) Cancel System Call cf. 4.1.7.2.6.4   e) Wait Next Operation cf. 4.1.7.2.6.5  ┆
0x41c00…41d00 (65, 0, 12) Sector 410dff00148241 ┆A     A 1                                                                   E INIT SYSCALL   Start   INIT SYSCALL (FUNCTION, AP REF)      (EXIT NO, SOCB, CC)   MON RETURN  (SOCB.SOCB ID, CC, EXIT NO,)   Stop    E SYSCALL   Start   INIT SYSCALL (FUNCTION, A┆
0x41d00…41e00 (65, 0, 13) Sector 410efa00148241 ┆A z   AP REF) (EXIT NO,SOCB,CC);   IF EXIT NUMBER = OKAY THEN    BEGIN     WAIT (SOCB);     RESOTRE REGISTERS, CC AND EXIT NUMBER FROM SOCB    END;    End case INIT SYSCALL   MON RETURN(OUTR04, EXIT NO, CC)   Stop                 FIGURE 4.2.6.4.1.5-2 ters ┆
0x41e00…41f00 (65, 0, 14) Sector 410fff00148241 ┆A     A 1                                                                   E WAIT SYSCALL   Start   SOCB = SOCB ARRAY (SO REF)   array address error OR              ? - RETIRE(SCM ERROR,SOCB REF ERROR)  SOCB.STATUS EQ FREE   WAIT (SOCB)   RESTORE REGISTER┆
0x41f00…42000 (65, 0, 15) Sector 4100ff00148241 ┆A     AS, CC AND EXIT NO FROM SOCB   MON RETURN (OUTR04, EXIT NO, CC)   Stop   E WAIT NEXT OPERATION   Start   READY loop    READY LIST  NOT EMPTY? EXIT    WAIT EVENT   End READY loop   SOCB = READY LIST. NEXT   CHAIN SOCB (SOCB,SOCB)   MON RETURN (SOCB.AP┆
0x42000…42100 (66, 0, 0)  Sector 42016900148241 ┆B i   A 1                                                                           Figure 4.2.6.4.1.3-1   furthermore the System Call Monitor common functions are shown at the same level.   The modules having more than one mainfunction are broken down so ┆
0x42100…42200 (66, 0, 1)  Sector 4202ff00148241 ┆B     A 1                                                                  4.2.6.4.1.4 Application Interface Data   a) Data References    SSCB ARRAY cf. 4.2.6.5.1   SOCB ARRAY cf. 4.2.6.5.4   READY LIST cf. 4.2.6.5.2   FREE SOCB LIST cf. 4.2.6.5.3   b) Ext┆
0x42200…42300 (66, 0, 2)  Sector 4203ff00148241 ┆B     Aernal Data    READY LIST   FREE SOCB LIST   SSCB (ALL) (M)   SOCB (ALL) (M)   c) Local Data    None    4.2.6.4.1.5 Application Interface Module Design   External Procedures   INIT RECEIVE FIRST QEL  COMPLETE RECEIVE  CANCEL RECEIVE  cf. 4.2.2.4.1.  ┆
0x42300…42400 (66, 0, 3)  Sector 4204a100148241 ┆B !   A MMON INIT  MMON COMPLETE  MMON CANCEL  cf. 4.4.2.4   TMP INIT  TMP COMPLETE  TMP CANCEL  .   (j) 4.2.1   IOC INIT  IOC COMPLETE  IOC CANCEL  .   (f) 4.2  rocedures    WAIT EVENT cf. 4.2.6.4.2.5   PCF INIT cf. 4.2.6.4.3.5.a   PCF ANSWER RECEIVED cf.┆
0x42400…42500 (66, 0, 4)  Sector 4205ff00148241 ┆B     A 1                                                                   a) SCM Monitor Procedure    Narrative    This monitor procedure has a case selecting one of System Call Monitors main functions.    The four first entries perform most processing b┆
0x42500…42600 (66, 0, 5)  Sector 4206ff00148241 ┆B     Ay means of procedure calls. The called procedures is further described in the following paragraphs.    The last two entries call no procedures and will thus be described here.    - CANCEL SYSCALL:      If STATUS of SOCB is not PENDING nothing is don┆
0x42600…42700 (66, 0, 6)  Sector 4207ff00148241 ┆B     Ae. If STATUS of SOCB is PENDING the cancel procedure in the Service System identified by SS ID in SOCB is called.    - DEFINE SERVICE SYSTEM:      Initializes a SSCB with the parameters specified by call.   Flowgram   cf. figure 4.2.6.4.1.5-1 to -3.┆
0x42700…42800 (66, 0, 7)  Sector 41086700148241 ┆A g   A   - CANCEL SYSCALL cf. figure 4.2.6.4.1.5-6   - DEFINE SERVICE SYSTEM cf. figure 4.2.6.4.1.5-5   the single Service System functions are called.    EADY LIST: LINK HEAD;    4.2.5.6 Coroutine Monitor Common Procedures    e is called.    4.2.5.4.5.2 ┆
0x42800…42900 (66, 0, 8)  Sector 42096300148241 ┆B c   A 1                                                                          Figur 4.2.6.3-1  .5.6.1.1 Functional Specification   The CHAIN IN procedure chains an object into a double linked list. The object is chained in, in accordance to its priori┆
0x42900…42a00 (66, 0, 9)  Sector 420aff00148241 ┆B     A 1                                                                  4.2.6.4 System Call Monitor Module Specification    4.2.6.4.1 Application Interface Module   The application Interface Module maintains the interfaces from application modules to Se┆
0x42a00…42b00 (66, 0, 10) Sector 420bff00148241 ┆B     Arvice Systems.   Requests from applications are passed on to the Service Systems and on return the answers are returned to calling modules.   Furthermore, this module makes it possible for a process to wait for completion of several pending requests┆
0x42b00…42c00 (66, 0, 11) Sector 420cff00148241 ┆B     A in parallel.    4.2.6.4.1.1 Functional Specification   a) Initiate System Call cf. 4.1.7.2.6.1   b) System Call cf. 4.1.7.2.6.2   c) Wait System Call cf. 4.1.7.2.6.3   d) Cancel System Call cf. 4.1.7.2.6.4   e) Wait Next Operation cf. 4.1.7.2.6.5  ┆
0x42c00…42d00 (66, 0, 12) Sector 420dff00148241 ┆B     A f) Define Service System cf. 4.1.7.2.6.6    4.2.6.4.1.2 Application Interface Module Interfaces   a) Initiate System Call cf. 4.1.7.2.6.1   b) System Call cf. 4.1.7.2.6.2   c) Wait System Call cf. 4.1.7.2.6.3   d) Cancel System Call cf. 4.1.7.2.6.4┆
0x42d00…42e00 (66, 0, 13) Sector 420e5c00148241 ┆B \   A   e) Wait Next Operation cf. 4.1.7.2.6.5   f) Define Service System cf. 4.1.7.2.6.6   OUT (OBJECT: COROUTINE LINK): OK   b) CHAIN OUT (R5, R6): OK   Register Conventions   Call Registers   R5   pointer to OBJECT  (kept)  R6 LINK   Return Registers ┆
0x42e00…42f00 (66, 0, 14) Sector 420fff00148241 ┆B     A 1                                                                  4.2.6.4.1.3 Application Interface Module Components   The components in this module are the Monitor procedure SCM and the two procedures INIT SYSTEM CALL and WAIT.   Cf. Figure 4.2.┆
0x42f00…43000 (66, 0, 15) Sector 42001100148241 ┆B     A6.4.1.3-1                                                            c) Local Data    NA    4.2.5.7 Subpackage Interfaces   NA.   4.2.6 System Call Monitor Subpackage Specification    4.2.6.1 Functional Specification   The System Call Monitor has at┆
0x43000…43100 (67, 0, 0)  Sector 4301ff00148241 ┆C     A Figure 4.2.6.1-1 been broken down so the upper level shows the four modules in System Call Monitor furthermore the System Call Monitor common functions are shown at the same level.   The modules having more than one mainfunction are broken down so ┆
0x43100…43200 (67, 0, 1)  Sector 4302c600148241 ┆C F   Athe mainfunctions are identified.   For further functional specification refer to module specification (cf. 4.2.6.4).   The number in the boxes representing modules refers to module number.   HORE COUNT   SEMAPHORE.NEXT =  SEEMAPHORE.PREVIOUS = SEMA┆
0x43200…43300 (67, 0, 2)  Sector 43036300148241 ┆C c   A 1                                                                         Figure 4.2.6.1-1  MON NAME, LENGTH: (SHORT, LONG)): OK   TRACE ENABLE EQ FALSE?   TRACE NAME = NAME   COROUTINE ID = COROUTINE.COROUTINE ID   SUBPROCESS ID = COROUTINE.SUBPRO┆
0x43300…43400 (67, 0, 3)  Sector 4304ff00148241 ┆C     A 1                                                                  4.2.6.2 System Call Monitor Software Structure   Refer to figure 4.2.6.1-1   Internal procedures    WAIT EVENT cf. 4.2.6.4.2.5   PCF INIT cf. 4.2.6.4.3.5.a   PCF ANSWER RECEIVED cf.┆
0x43400…43500 (67, 0, 4)  Sector 4305ff00148241 ┆C     A 4.2.6.4.3.5.b   PCF COMPLETE cf. 4.2.6.4.3.5.c   PCF CANCEL cf. 4.2.6.4.3.5.d   IOS INIT cf. 4.2.6.4.4.5.a   IOS ANSWER RECEIVED cf. 4.2.6.4.4.5.b   IOS COMPLETE cf. 4.2.6.4.4.5.c   IOS CANCEL cf. 4.2.6.4.4.5.d   Monitor Procedure   Monitor procedu┆
0x43500…43600 (67, 0, 5)  Sector 4306ff00148241 ┆C     Are with 6 entries:    SCM   cf. 4.2.6.4    4.2.6.3 System Call Monitor Control Logic   Control logic for System Call Monitor is shown at figure 4.2.6.3-1.   An application process activating the SCM Monitor procedure with its six entries are shown l┆
0x43600…43700 (67, 0, 6)  Sector 4307ff00148241 ┆C     Aeftmost.   Furthermore, the System Call Monitor procedures associated to the general System Call Monitor functions are shown.   At the rightmost the Service Systems called by System Call Monitor are shown. This Service System may be external Service┆
0x43700…43800 (67, 0, 7)  Sector 42089b00148241 ┆B     A Systems as well as System Call Monitors own Service Systems.   It is shown from which procedures the single Service System functions are called.    EADY LIST: LINK HEAD;    4.2.5.6 Coroutine Monitor Common Procedures    e is called.    4.2.5.4.5.2 ┆
0x43800…43900 (67, 0, 8)  Sector 4309ff00148241 ┆C     A 1                                                                  4.2.5.6.1 Chain In    4.2.5.6.1.1 Functional Specification   The CHAIN IN procedure chains an object into a double linked list. The object is chained in, in accordance to its priori┆
0x43900…43a00 (67, 0, 9)  Sector 430aff00148241 ┆C     Aty, highest priority equal zero. Lowest priority equal 255.   The object must be of the COROUTINE LINK type.    4.2.5.6.1.2 Chain In Interface   Call Specification   a) CHAIN IN (OBJECT: COROUTINE LINK      HEAD:    LINK HEAD): OK   b) CHAIN IN(R4, ┆
0x43a00…43b00 (67, 0, 10) Sector 430bff00148241 ┆C     AR5, R6):OK   Register Conventions   Call Registers  1                                                                    R4   pointer to HEAD (dest)  R5   pointer to OBJECT (kept)  R6 LINK  (dest)   Return Registers   R0, R1-R3, kept  R7   (destroye┆
0x43b00…43c00 (67, 0, 11) Sector 430c8f00148241 ┆C     Ad)    4.2.5.6.1.3 Chain In Data   a) Data References    COROUTINE LINK cf. 4.1.6.5.4   LINK HEAD cf. 4.1.6.5.5   b) External Data    NA  le Data Description   a) Data References    - COROUTINE RECORD cf. 4.1.6.5.1   - RUNNING COROUTINE cf.    - CURR┆
0x43c00…43d00 (67, 0, 12) Sector 430dff00148241 ┆C     A 1                                                                   c) Local Data    NA    4.2.5.6.2 Chain Out    4.2.5.6.2.1 Functional Specification   The Chain Out procedure chains an object out of a double linked list.   The object must be of C┆
0x43d00…43e00 (67, 0, 13) Sector 430eff00148241 ┆C     AOROUTINE LINK type.    4.2.5.6.2.2 Chain Out Interface   Call Specification   a) CHAIN OUT (OBJECT: COROUTINE LINK): OK   b) CHAIN OUT (R5, R6): OK   Register Conventions   Call Registers   R5   pointer to OBJECT  (kept)  R6 LINK   Return Registers ┆
0x43e00…43f00 (67, 0, 14) Sector 430f8400148241 ┆C     A  R0-R4, R7 kept    4.2.5.6.2.3 Chain Out Data   a) Data References    COROUTINE LINK Cf. 4.1.6.5.4   b) External Data    NA  igure 4.2.5.4.5.4-1   COROUTINE ID TYPE       PRIORITY: PRIORITY TYPE,       SUBPROCESS ID: SUBPROCESS ID TYPE,       START┆
0x43f00…44000 (67, 0, 15) Sector 4300ff00148241 ┆C     A 1                                                                   c) Local Data    NA    4.2.5.7 Subpackage Interfaces   NA.   4.2.6 System Call Monitor Subpackage Specification    4.2.6.1 Functional Specification   The System Call Monitor has at┆
0x44000…44100 (68, 0, 0)  Sector 4401ff00148241 ┆D     A 1                                                                  4.2.5.4.5.5 Trace Module Design   External Procedures   CMON TRACE (cf. 4.1.7.2.1.12)   Narrative   Trace procedure updates TRACE BUFFER if TRACE ENABLE is true otherwise it returns┆
0x44100…44200 (68, 0, 1)  Sector 4402a800148241 ┆D (   A to caller immediately.   The TRACE BUFFER to be updated may be short or long as indicated by the input parameter LENGTH.   Flowgram   Cf. figure 4.2.5.4.5.5-1   : OK   SEMAPHORE.COUNT = SEMAPHORE COUNT   SEMAPHORE.NEXT =  SEEMAPHORE.PREVIOUS = SEMA┆
0x44200…44300 (68, 0, 2)  Sector 4403ff00148241 ┆D     A 1                                                                   Procedure TRACE(NAME: COMON NAME, LENGTH: (SHORT, LONG)): OK   TRACE ENABLE EQ FALSE?   TRACE NAME = NAME   COROUTINE ID = COROUTINE.COROUTINE ID   SUBPROCESS ID = COROUTINE.SUBPRO┆
0x44300…44400 (68, 0, 3)  Sector 4404ff00148241 ┆D     ACESS ID   MOVE (SAVER0 - SAVER7) TO TRACEBUFFER   LENGTH EQ SHORT? - COUNT = 8    MOVE R5 (5..12) TO LONG TRACE BUFFER (0..7)   COUNT = 16   CMON TRACE (TRACE BUFFER) cf.4.1.7.2.7.2   LOAD REGISTERS   RETURN (OK)   Stop                    FIGURE 4.2┆
0x44400…44500 (68, 0, 4)  Sector 44051100148241 ┆D     A.5.4.5.5-1 .4.5-4                                                   4.2.5.4.4.4 Data Description   a) Data References    COROUTINE RECORD cf. 4.1.5.5.1   COROUTINE OPERATION cf. 4.1.5.5.2   COROUTINE SEMAPHORE cf. 4.1.5.5.3   RUNNING COROUTINE cf. 4┆
0x44500…44600 (68, 0, 5)  Sector 4406ff00148241 ┆D     A 1                                                                  4.2.5.5 Common Coroutine Monitor Data    4.2.5.5.1 Current Subprocess   Each process using coroutines has one variable named CURRENT SUBPROCESS containing the Subprocess ID associat┆
0x44600…44700 (68, 0, 6)  Sector 4407ff00148241 ┆D     Aed to the coroutine running now.   It will be updated by coroutine monitor each time a new running coroutine is selected.   VAR   CURRENT SUBPROCESS: SUBPROCESS ID    4.2.5.5.2 Ready List   Each process using coroutines has one variable named READY ┆
0x44700…44800 (68, 0, 7)  Sector 4308e300148241 ┆C c   ALIST.   The READY LIST points to first and last coroutine in a double linked list containing the coroutine records of all ready coroutines.   VAR   READY LIST: LINK HEAD;    4.2.5.6 Coroutine Monitor Common Procedures    e is called.    4.2.5.4.5.2 ┆
0x44800…44900 (68, 0, 8)  Sector 4409ff00148241 ┆D     AModule Interface   The Trace procedure is called with two input parameters.   - NAME which is a name identifying the Coroutine Monitor function which has generated the trace   - LENGTH Telling if a short or a long trace are wanted.   Call Specificat┆
0x44900…44a00 (68, 0, 9)  Sector 440a6900148241 ┆D i   Aion   a) TRACE (NAME:COMON NAME,     LENGTH: (SHORT, LONG)): OK   b) TRACE (NAME, LENGTH, R6): OK  PHORE    Narrative:    The specified SEMAPHORE is updated with COUNT.    The SEMAPHORE LIST is initialized.    Flowgram:    See Fig. 4.2.5.4.4.5-3   d┆
0x44a00…44b00 (68, 0, 10) Sector 440bff00148241 ┆D     A 1                                                                   Register Conventions   Call Registers  1                                                                    R6 LINK  (destr)   Return Registers   R0-R5 and R7 (kept)   Fatal Errors┆
0x44b00…44c00 (68, 0, 11) Sector 440cff00148241 ┆D     A   None    4.2.5.4.5.3 Trace Module Components   The Trace Module has one component.    - TRACE  cf. 4.2.5.4.4.5   4.2.5.4.5.4 Trace Module Data Description   a) Data References    - COROUTINE RECORD cf. 4.1.6.5.1   - RUNNING COROUTINE cf.    - CURR┆
0x44c00…44d00 (68, 0, 12) Sector 440de300148241 ┆D c   AENT SUBPROCESS cf. 4.2.5.5.1   - TRACE BUFFER   b) External Data    - COROUTINE RECORD    - RUNNING SUBPROCESS   c) Local Data    c1) Trace Buffer     The buffer used to build the Trace Record before calling CMON TRACE.  DY LIST)   RETURN (OK)   Sto┆
0x44d00…44e00 (68, 0, 13) Sector 440eff00148241 ┆D     A 1                                                                     VAR TRACE BUFFER:   1                                                                      RECORD      HEAD: CMON TRACE PARAM       cf. 4.1.6.1.1       DATA: ARRAY (0..15) OF INT┆
0x44e00…44f00 (68, 0, 14) Sector 440f9900148241 ┆D     AEGER     END     INIT TRACE BUFFER.HEAD.OFFSET = 0     TRACE BUFFER.HEAD.ADDRESS =       ADDRESS (TRACE BUFFER.DATA)   Refer figure 4.2.5.4.5.4-1   COROUTINE ID TYPE       PRIORITY: PRIORITY TYPE,       SUBPROCESS ID: SUBPROCESS ID TYPE,       START┆
0x44f00…45000 (68, 0, 15) Sector 44006700148241 ┆D g   A 1                                                                         FIGURE 4.2.5.4.5.4-1  COROUTINE.SUBPROCESS ID = SUBPROCESS ID   COROUTINE.SAVER7 = START ADDRESS   CHAIN IN (COROUTINE, READY LIST)   RETURN (OK)   Stop                      ┆
0x45000…45100 (69, 0, 0)  Sector 45012200148241 ┆E "   A       FIGURE 4.2.5.4.4.5-2 tion Functions Interfaces   The Initialization Functions Module has four independent interfaces.   a) Initialize Coroutine Monitor. Cf. 4.1.6.2.5.10.   b) Initialize Coroutine. Cf. 4.1.6.2.5.11.   c) Initialize Semaphore.┆
0x45100…45200 (69, 0, 1)  Sector 4502ff00148241 ┆E     A 1                                                                       Procedure INIT SEMAPHORE (SEMAPHORE COUNT: INTEGER,       SEMAPHORE: COROUTINE SEMAPHORE): OK   SEMAPHORE.COUNT = SEMAPHORE COUNT   SEMAPHORE.NEXT =  SEEMAPHORE.PREVIOUS = SEMA┆
0x45200…45300 (69, 0, 2)  Sector 45035b00148241 ┆E [   APHORE   RETURN (OK)   Stop                                      FIGURE 4.2.5.4.4.5-3  - INIT OPERATION cf. 4.2.5.4.4.5.d   Cf. Figure 4.2.5.4.3.3-1   the coroutine record. When the coroutine is eventually readied and selected as running coroutine, i┆
0x45300…45400 (69, 0, 3)  Sector 4504ff00148241 ┆E     A 1                                                                       Procedure INIT OP  (OPERATION: COROUTINE OPERATION,       PRIORITY: PRIORITY TYPE): OK   OPERATION.PRIORITY = PRIORITY   RETURN (OK)                                         FIG┆
0x45400…45500 (69, 0, 4)  Sector 45051800148241 ┆E     AURE 4.2.5.4.4.5-4                                                   4.2.5.4.4.4 Data Description   a) Data References    COROUTINE RECORD cf. 4.1.5.5.1   COROUTINE OPERATION cf. 4.1.5.5.2   COROUTINE SEMAPHORE cf. 4.1.5.5.3   RUNNING COROUTINE cf. 4┆
0x45500…45600 (69, 0, 5)  Sector 4506ff00148241 ┆E     A 1                                                                  4.2.5.4.5 Trace Module Specification   The Trace Module maintains the interface between Coroutine Monitor and the CSF Trace Module (cf. 4.2.1.1.7.2.1.10.    4.2.5.4.5.1 Functional S┆
0x45600…45700 (69, 0, 6)  Sector 4507ff00148241 ┆E     Apecification   The Trace Module may perform a short trace or a long trace.   The short trace updates a short trace buffer with   - Trace Name  - Coroutine ID  - Subprocess ID  - Value of the 8 saved registers   The long trace updates a long trace bu┆
0x45700…45800 (69, 0, 7)  Sector 4408ff00148241 ┆D     Affer.   The long trace buffer contains the same information as the short trace buffer plus the 8 words pointed out by (saved R5 + 5)(datafield in operation).   When the trace buffer has been updated the CSF trace procedure is called.    4.2.5.4.5.2 ┆
0x45800…45900 (69, 0, 8)  Sector 4509ff00148241 ┆E     A 1                                                                    Flowgram    See Fig. 4.2.5.4.4.5-1   b) INIT COROUTINE    Narrative    The specified COROUTINE RECORD is updated with COROUTINE ID, PRIORITY, SUBPROCESS ID and START ADDRESS.    T┆
0x45900…45a00 (69, 0, 9)  Sector 450aff00148241 ┆E     Ahen the coroutine is chained to the READY LIST    Flowgram    See Fig. 4.2.5.4.4.5-2   c) INIT SEMAPHORE    Narrative:    The specified SEMAPHORE is updated with COUNT.    The SEMAPHORE LIST is initialized.    Flowgram:    See Fig. 4.2.5.4.4.5-3   d┆
0x45a00…45b00 (69, 0, 10) Sector 450b7f00148241 ┆E     A) INIT OP    Narrative:    The specified OPERATION is initialized with PRIORITY.    Flowgram:    See Fig. 4.2.5.4.4.5-4  1 Functional Specification   The Pause Module contains the waiting point of Coroutine Monitor. It is called from Coroutine Monit┆
0x45b00…45c00 (69, 0, 11) Sector 450cff00148241 ┆E     A 1                                                                   Procedure INIT COMON (COROUTINE: COROUTINE RECORD      COROUTINE ID: COROUTINE ID TYPE,      PRIORITY: PRIORITY TYPE,      SUBPROCESS ID: SUBPROCESS ID TYPE): OK   RUNNING COROUTIN┆
0x45c00…45d00 (69, 0, 12) Sector 450dff00148241 ┆E     AE = COROUTINE   COROUTINE.COROUTINE ID = COROUTINE ID   COROUTINE.PRIORITY = PRIORITY   COROUTINE.SUBPROCESS ID = SUBPROCESS ID   CURRENT SUBPROCESS = SUBPROCESS ID   READY LIST. NEXT = READY LIST. PREVIOUS = ADDRESS (READY LIST)   RETURN (OK)   Sto┆
0x45d00…45e00 (69, 0, 13) Sector 450e3700148241 ┆E 7   Ap                           FIGURE 4.2.5.4.4.5-1      (CC): ERROR OK     ERROR ?  RETIRE (COMMON ERROR)    END CASE "CHANGE SUBROUTINES    RESTORE REGISTERS    ENTER COROUTINE IN LOCATION (SAVER7)    Stop       FIGURE 4.2.5.4.3.5-1  (a - c) rocedure┆
0x45e00…45f00 (69, 0, 14) Sector 450fff00148241 ┆E     A 1                                                                       Procedure INIT COROUTINE (COROUTINE: COROUTINE RECORD,       COROUTINE ID: COROUTINE ID TYPE       PRIORITY: PRIORITY TYPE,       SUBPROCESS ID: SUBPROCESS ID TYPE,       START┆
0x45f00…46000 (69, 0, 15) Sector 4500ff00148241 ┆E     A ADDRESS: INTEGER): OK   COROUTINE.COROUTINE ID = COROUTINE ID   COROUTINE.PRIORITY = PRIORITY   COROUTINE.SUBPROCESS ID = SUBPROCESS ID   COROUTINE.SAVER7 = START ADDRESS   CHAIN IN (COROUTINE, READY LIST)   RETURN (OK)   Stop                      ┆
0x46000…46100 (70, 0, 0)  Sector 4601ff00148241 ┆F     A3.    4.2.5.4.4.2 Initialization Functions Interfaces   The Initialization Functions Module has four independent interfaces.   a) Initialize Coroutine Monitor. Cf. 4.1.6.2.5.10.   b) Initialize Coroutine. Cf. 4.1.6.2.5.11.   c) Initialize Semaphore.┆
0x46100…46200 (70, 0, 1)  Sector 4602ff00148241 ┆F     A Cf. 4.1.6.2.5.12.   d) Initialize Operation. Cf. 4.1.6.2.5.13.    4.2.5.4.4.3 Initialization Function Module Components   The four Initialization Functions interfaces are each implemented as a procedure. The four procedures are   - INIT COMON cf. 4┆
0x46200…46300 (70, 0, 2)  Sector 46039b00148241 ┆F     A.2.5.4.4.5.a  - INIT COROUTINE cf. 4.2.5.4.4.5.b  - INIT SEMAPHORE cf. 4.2.5.4.4.5.c  - INIT OPERATION cf. 4.2.5.4.4.5.d   Cf. Figure 4.2.5.4.3.3-1   the coroutine record. When the coroutine is eventually readied and selected as running coroutine, i┆
0x46300…46400 (70, 0, 3)  Sector 46046600148241 ┆F f   A 1                                                                        FIGURE 4.2.5.4.4.3-1  r call of WAIT NEXT OPERATION until the ready list is not empty.  PERATION): OK   STORE REGISTERS   TRACE (SIGNAL OPSEM,LONG)   INTERN SIGNAL(SEMAPHORE, ┆
0x46400…46500 (70, 0, 4)  Sector 4605ff00148241 ┆F     A 1                                                                  4.2.5.4.4.4 Data Description   a) Data References    COROUTINE RECORD cf. 4.1.5.5.1   COROUTINE OPERATION cf. 4.1.5.5.2   COROUTINE SEMAPHORE cf. 4.1.5.5.3   RUNNING COROUTINE cf. 4┆
0x46500…46600 (70, 0, 5)  Sector 4606ff00148241 ┆F     A.1.5.5.4   CURRENT SUBPROCESS cf. 4.2.5.5.5   READY LIST cf. 4.2.5.5.6   b) External Data    1) COROUTINE RECORD (M)   2) COROUTINE OPERATION (M)   3) COROUTINE SEMAPHORE (M)   4) RUNNING COROUTINE (M)   5) CURRENT SUBPROCESS (M)   6) READY LIST (M)┆
0x46600…46700 (70, 0, 6)  Sector 4607ff00148241 ┆F     A   7) READY LIST (M)   c) Local Data    None.    4.2.5.4.4.5 Initialization functions Module Design    External procedures   CHAIN IN  cf. 4.2.5.6.1   a) INIT COMON    Narrative:    RUNNING COROUTINE is set to specified COROUTINE.    The specified c┆
0x46700…46800 (70, 0, 7)  Sector 4508ad00148241 ┆E -   Aoroutine record is initialized with COROUTINE ID, PRIORITY and SUBPROCESS ID CURRENT SUBPROCESS is set to specified SUBPROCESS ID.    The READY LIST is initialized.   TION:COROUTINE OPERATION): OK   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0 ?┆
0x46800…46900 (70, 0, 8)  Sector 4609ff00148241 ┆F     A 1                                                                     Procedure PAUSE:OK  COROUTINE.SAVER7 = R6  Active Loop   READY LIST NOT EMPTY?   EXIT   Case WAIT NEXT OPERATION()(OPERATION:COROUTINE OPERATION): ERROR OK    ERROR? - RETIRE(COM┆
0x46900…46a00 (70, 0, 9)  Sector 460aff00148241 ┆F     AON ERROR)   End case WAIT NEXT OPERATION   Case OPERATION.ACTION:    TO SEMAPHORE? - SIGNAL (cf. a)    TO COROUTINE? - Activate (cf. b)    SET DONE ? - OPERATION.STATUS = DONE   End case OPERATION.ACTION   End active loop  Enter Coroutine (cf. c)  S┆
0x46a00…46b00 (70, 0, 10) Sector 460b3200148241 ┆F 2   Atop                    FIGURE 4.2.5.4.3.5-1                            4.2.5.4.3 Pause Module Specification    4.2.5.4.3.1 Functional Specification   The Pause Module contains the waiting point of Coroutine Monitor. It is called from Coroutine Monit┆
0x46b00…46c00 (70, 0, 11) Sector 460cff00148241 ┆F     A 1                                                                      a) Signal    Start    INTERN SIGNAL(OPERATION.ACTIVATION, OPERATION)    Stop   b) Activate    Start    COROUTINE = OPERATION.ACTIVATION    OPERATION.STATUS = DONE    CHAIN IN (C┆
0x46c00…46d00 (70, 0, 12) Sector 460dff00148241 ┆F     AOROUTINE, READY LIST)    Stop   c) Enter Coroutine    Start    COROUTINE = READY LIST.FIRST    RUNNING COROUTINE = COROUTINE    CHAIN OUT (COROUTINE)    CURRENT SUBPROCESS EQ COROUTINE.SUBPROCESS ID?    CURRENT SUBPROCESS = COROUTINE.SUBPROCESS ID  ┆
0x46d00…46e00 (70, 0, 13) Sector 460ef700148241 ┆F w   A  CASE CHANGE SUBPROCESS ID (CURRENT SUBPROCESS)      (CC): ERROR OK     ERROR ?  RETIRE (COMMON ERROR)    END CASE "CHANGE SUBROUTINES    RESTORE REGISTERS    ENTER COROUTINE IN LOCATION (SAVER7)    Stop       FIGURE 4.2.5.4.3.5-1  (a - c) rocedure┆
0x46e00…46f00 (70, 0, 14) Sector 460fff00148241 ┆F     A 1                                                                  4.2.5.4.4 Initialization Functions Module Specification   The Initialization Functions Module contains functions for initialization of the control data structures used by the Corout┆
0x46f00…47000 (70, 0, 15) Sector 4600ff00148241 ┆F     Aine Monitor Subpackage.    4.2.5.4.4.1 Functional Specification   a) Initialize Coroutine Monitor. Cf. 4.1.6.2.5.10.   b) Initialize Coroutine. Cf. 4.1.6.2.5.11.   c) Initialize Semaphore. Cf. 4.1.6.2.5.12.   d) Initialize Operation. Cf. 4.1.6.2.5.1┆
0x47000…47100 (71, 0, 0)  Sector 4701ff00148241 ┆G     A 1                                                                     4.2.5.4.3.4 Pause Data   a) Data References    COROUTINE RECORD cf. 4.1.6.5.1   COROUTINE OPERATION cf. 4.1.6.5.2   RUNNING COROUTINE cf. 4.1.6.5.3   CURRENT SUBPROCESS cf. 4.2.5┆
0x47100…47200 (71, 0, 1)  Sector 4702ff00148241 ┆G     A.5.1   READY LIST cf. 4.2.5.5.2   b) External Data    COROUTINE RECORD (M)   COROUTINE OPERATION (M)   RUNNING COROUTINE (M)   CURRENT SUBPROCESS (M)   READY LIST (M)   c) Local Data    None.    4.2.5.4.3.5 Pause Module Design   Narrative   Internal┆
0x47200…47300 (71, 0, 2)  Sector 4703ff00148241 ┆G     A procedure called from the "wait" procedures when a coroutine encounters a waiting point.   The link register is saved in the Register R7 location of the coroutine record. When the coroutine is eventually readied and selected as running coroutine, i┆
0x47300…47400 (71, 0, 3)  Sector 4704a800148241 ┆G (   At will be resumed in this location.   If the ready list is empty the following is repeated  after call of WAIT NEXT OPERATION until the ready list is not empty.  PERATION): OK   STORE REGISTERS   TRACE (SIGNAL OPSEM,LONG)   INTERN SIGNAL(SEMAPHORE, ┆
0x47400…47500 (71, 0, 4)  Sector 4705ff00148241 ┆G     A 1                                                                      WAIT NEXT OPERATION   Case activation field of operation of:   a) TO SEMAPHORE    The STATUS is set to IN SEMAPHORE, and the operation is sent to the semaphore pointed to by ACT┆
0x47500…47600 (71, 0, 5)  Sector 4706ff00148241 ┆G     AIVATION.   b) TO COROUTINE    The coroutine pointed to by ACTIVATION is made ready and STATUS is changed to DONE.   c) SET DONE    STATUS is changed to DONE   The first coroutine is chained out from ready list. The Coroutine Monitor variable running┆
0x47600…47700 (71, 0, 6)  Sector 4707ff00148241 ┆G     A coroutine pointer is updated, and the CSF Utility Procedure "Change Subprocess Id" is called, if the subprocess id of this coroutine is different from that of the previous one. Finally, the coroutine is entered at the program location defined by sa┆
0x47700…47800 (71, 0, 7)  Sector 46083f00148241 ┆F ?   Aved register R7.   Flowgram   Cf. figure 4.2.5.4.3.5-1.                 Procedure INTERN SIGNAL(SEMAPHORE:COROUTINE SEMAPHORE,                                    OPERATION:COROUTINE OPERATION): OK   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0 ?┆
0x47800…47900 (71, 0, 8)  Sector 4709ff00148241 ┆G     A      CHAIN IN (OPERATION, SEMAPHORE)      OPERATION.STATUS = IN SEMAPHORE      OPERATION.ACTIVATION = SEMAPHORE   COROUTINE = SEMAPHORE.NEXT   COROUTINE.SAVER5 = OPERATION   CHAIN OUT (COROUTINE)   CHAIN IN (COROUTINE, READY LIST)   RETURN (OK)   S┆
0x47900…47a00 (71, 0, 9)  Sector 470a3500148241 ┆G 5   Atop                       FIGURE 4.2.5.4.2.5-6 e pointer value    If STATUS is DONE INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-5   f) INTERN SIGNAL    Narrative    The semaphore counter is increased by one. If the resulting┆
0x47a00…47b00 (71, 0, 10) Sector 470bff00148241 ┆G     A 1                                                                     4.2.5.4.3 Pause Module Specification    4.2.5.4.3.1 Functional Specification   The Pause Module contains the waiting point of Coroutine Monitor. It is called from Coroutine Monit┆
0x47b00…47c00 (71, 0, 11) Sector 470cff00148241 ┆G     Aor procedures with waiting points when they reach their waiting points.   The first coroutine in READY LIST is selected for running.   If the READY LIST is empty the System Call Monitor procedure Wait Next Operation is called.   If the new coroutine┆
0x47c00…47d00 (71, 0, 12) Sector 470dff00148241 ┆G     A has a SUBPROCESS ID different from CURRENT SUBPROCESS, the Utility Function CHANGE SUBPROCESS is called.    4.2.5.4.3.2 Pause Module Interface   Call Specification   a) PAUSE: OK   b) PAUSE (R5): OK   Register Conventions   Call Registers  1       ┆
0x47d00…47e00 (71, 0, 13) Sector 470eff00148241 ┆G     A                                                                R5 LINK  (destr)   Return Registers   R0-R6 Contain the values of the saved registers from Coroutine record.    4.2.5.4.3.3 Pause Module Components   Pause module contains one procedure┆
0x47e00…47f00 (71, 0, 14) Sector 470f4000148241 ┆G @   A. This is the PAUSE procedure. Cf. figure 4.2.5.4.3.3-1.             Procedure SIGNAL SEM (SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (SIGNAL SEM, SHORT)   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0?   COROUTINE = SEMAPHORE.N┆
0x47f00…48000 (71, 0, 15) Sector 47009200148241 ┆G     A 1                                                                                                                     FIGURE 4.2.5.4.3.3-1 5.4.2.5-2                                                                                                    ┆
0x48000…48100 (72, 0, 0)  Sector 4801ff00148241 ┆H     A 1                                                                   Procedure WAIT OPSEM(SEMAPHORE:COROUTINE SEMAPHORE)                                 (OPERATION:COROUTINE OPERATION): OK   STORE REGISTERS   TRACE (WAIT OPSEM, SHORT)   DECREMENT SE┆
0x48100…48200 (72, 0, 1)  Sector 4802ff00148241 ┆H     AMAPHORE.COUNT   SEMAPHORE.COUNT GE 0 ?   CHAIN IN (COROUTINE,SEMAPHORE)   PAUSE  OPERATION = COROUTINE.SAVER5=SEMAPHORE.NEXT                                    CHAIN OUT(SEMAPHORE.NEXT)   OPERATION.STATUS = DONE   TRACE (EXIT, LONG)   RESTORE REGIST┆
0x48200…48300 (72, 0, 2)  Sector 48034a00148241 ┆H J   AERS   RETURN (OK)   Stop                       FIGURE 4.2.5.4.2.5-3        CPS/SDS/024   840503   CAMPS SYSTEM FUNCTIONS DETAILED DESIGN SPECIFICATION ISSUE 1 CAMPS       , > I!e=6 !Z="(=e*$<kas#r  9x2"<! <6 M8)I:^=~ B#.!#<6 ! <6 M&&:!<~ J#.:!<2.=M2┆
0x48300…48400 (72, 0, 3)  Sector 4804ff00148241 ┆H     A 1                                                                      Procedure SIGNAL OPSEM(SEMAPHORE:COROUTINE SEMAPHORE,                OPERATION:COROUTINE OPERATION): OK   STORE REGISTERS   TRACE (SIGNAL OPSEM,LONG)   INTERN SIGNAL(SEMAPHORE, ┆
0x48400…48500 (72, 0, 4)  Sector 48057000148241 ┆H p   AOPERATION)   RESTORE REGISTERS   RETURN (OK)   STOP                                 FIGURE 4.2.5.4.2.5-4      Figure 4.2.5.4.2.5-1.   b) SIGNAL SEM    Narrative    The semaphore counter is increased by one. If the resulting value is zero or negative┆
0x48500…48600 (72, 0, 5)  Sector 4806ff00148241 ┆H     A 1                                                                      Procedure ASSOCIATE(SEMAPHORE:COROUTINE SEMAPHORE,                OPERATION:COROUTINE OPERATION): OK   STORE REGISTERS   TRACE (ASSOCIATE OP,SHORT)   CASE OPERATION.STATUS     P┆
0x48600…48700 (72, 0, 6)  Sector 4807e900148241 ┆H i   AENDING ? - OPERATION.ACTION = TO SEMAPHORE          OPERATION.ACTIVATION = SEMAPHORE     DONE    ? - INTERN SIGNAL (SEMAPHORE, OPERATION)   RESTORE REGISTERS   RETURN (OK)   STOP                            FIGURE 4.2.5.4.2.5-5  Flowgram    Figure 4.┆
0x48700…48800 (72, 0, 7)  Sector 4708ff00148241 ┆G     A 1                                                                      Procedure INTERN SIGNAL(SEMAPHORE:COROUTINE SEMAPHORE,                                    OPERATION:COROUTINE OPERATION): OK   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0 ?┆
0x48800…48900 (72, 0, 8)  Sector 4809ff00148241 ┆H     A 1                                                                   d) SIGNAL OPSEM    Narrative    INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-4   e) ASSOCIATE    Narrative    If STATUS is PENDING    - ACTION is set to TO ┆
0x48900…48a00 (72, 0, 9)  Sector 480aff00148241 ┆H     ASEMAPHORE   - ACTIVATION is set to the semaphore pointer value    If STATUS is DONE INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-5   f) INTERN SIGNAL    Narrative    The semaphore counter is increased by one. If the resulting┆
0x48a00…48b00 (72, 0, 10) Sector 480bff00148241 ┆H     A value is positive, the operation is chained into the semphore list according to its priority. Otherwise, the first coroutine is chained out from the semaphore list and made ready, and the operation address is placed in a saved register of the readi┆
0x48b00…48c00 (72, 0, 11) Sector 480c3a00148241 ┆H :   Aed coroutines.    Flowgram    Figure 4.2.5.4.2.5-6  5.2   b) External Data    1) COROUTINE RECORD. (m)   2) COROUTINE OPERATION. (m)   3) COROUTINE SEMAPHORE (m)   c) Local Data    None E? SEMAPHORE = OPERATION.ACTIVATION           DECREMENT SEMAPHO┆
0x48c00…48d00 (72, 0, 12) Sector 480dff00148241 ┆H     A 1                                                                   Procedure WAIT SEM(SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (WAIT SEM, SHORT)   DECREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GE 0?   CHAIN IN (COROUTINE, SEMAPHO┆
0x48d00…48e00 (72, 0, 13) Sector 480e7f00148241 ┆H     ARE)   PAUSE   TRACE (EXIT, SHORT)   RESTORE REGISTERS   RETURN (OK)   Stop                          FIGURE 4.2.5.4.2.5-1 RETURN (EXIT NUMBER)   STOP  and ACTIVATION is set to     RUNNING COROUTINE.  The running coroutine is then paused.  When resume┆
0x48e00…48f00 (72, 0, 14) Sector 480fff00148241 ┆H     A 1                                                                   Procedure SIGNAL SEM (SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (SIGNAL SEM, SHORT)   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0?   COROUTINE = SEMAPHORE.N┆
0x48f00…49000 (72, 0, 15) Sector 48009d00148241 ┆H     AEXT   CHAIN OUT (COROUTINE)   CHAIN IN (COROUTINE, READY LIST)   RESTORE REGISTERS   RETURN (OK)   Stop                          FIGURE 4.2.5.4.2.5-2                                                                                                    ┆
0x49000…49100 (73, 0, 0)  Sector 4901ff41148241 ┆I  A  A1482A CPS/SDS/024               dhh                  JSC                  4.2.5.4.2.5          01 12 81 12 50    4 25  18168 02 01 85 13 38      11    422 02 01 85 13 55 04 01 85 14 03 0120A  77   12 08   572  28211    P U      '    *J         7 ] _┆
0x49100…49200 (73, 0, 1)  Sector 49024d00148241 ┆I M   A     I   I H H H H H H H G G G G F F F F F E E E E E E D D D D D D C C C C C B B B B B B A A A A A A @ @ @ @ @ ? ? ? ? > > > > > > = = = =                                                                                                               ┆
0x49200…49300 (73, 0, 2)  Sector 4903b100148241 ┆I 1   A 1                                                                         CPS/SDS/024   840503   CAMPS SYSTEM FUNCTIONS DETAILED DESIGN SPECIFICATION ISSUE 1 CAMPS       , > I!e=6 !Z="(=e*$<kas#r  9x2"<! <6 M8)I:^=~ B#.!#<6 ! <6 M&&:!<~ J#.:!<2.=M2┆
0x49300…49400 (73, 0, 3)  Sector 4904ff00148241 ┆I     A 1                                                                  4.2.5.4.2.5 Semaphore Functions Module Design   a) WAIT SEM    Narrative    The semaphore counter is decreased by one. If the resulting value is smaller than zero, the running corou┆
0x49400…49500 (73, 0, 4)  Sector 4905ff00148241 ┆I     Atine is linked to the semaphore list and paused. Otherwise, the procedure returns immediately.    Flowgram    Figure 4.2.5.4.2.5-1.   b) SIGNAL SEM    Narrative    The semaphore counter is increased by one. If the resulting value is zero or negative┆
0x49500…49600 (73, 0, 5)  Sector 4906ff00148241 ┆I     A, the first waiting coroutine is chained out from the semaphore list and made ready.    Flowgram    Figure 4.2.5.4.2.5-2   c) WAIT OPSEM    Narrative    The semaphore counter is decreased by one. If the resulting value is smaller than zero, the runn┆
0x49600…49700 (73, 0, 6)  Sector 4907ff00148241 ┆I     Aing coroutine is linked to the semaphore list and paused. Otherwise, the first operation is chained out from the semaphore list and the operation address is returned in a register. Finally STATUS of OPERATION is set to DONE.    Flowgram    Figure 4.┆
0x49700…49800 (73, 0, 7)  Sector 48081300148241 ┆H     A2.5.4.2.5-3   MM(!  "(=~~ J*2M2/C<2:^=~ B<2:b= R<2M/,:g=~ BG2M")M2&!  "(=~~ BW2I! <6 M /M?.I*:="8=IM2&MP'Mc2! m"2< [MI !?=6 :  #wI>K!8=>R 2!8=6 #4  E*8=k L<M% :8=F 28=I!#<:"<>R<2> I  E*#<&  "< DM L<M% :#<F 2#<> I:g= Ro2M/2 Rl2> IC13!?=4~~ B|2> I:A=!┆
0x49800…49900 (73, 0, 8)  Sector 4909ff00148241 ┆I     A 1                                                                   d) SIGNAL OPSEM    Narrative    INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-4   e) ASSOCIATE    Narrative    If STATUS is PENDING    - ACTION is set to TO ┆
0x49900…49a00 (73, 0, 9)  Sector 490aff00148241 ┆I     ASEMAPHORE   - ACTIVATION is set to the semaphore pointer value    If STATUS is DONE INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-5   f) INTERN SIGNAL    Narrative    The semaphore counter is increased by one. If the resulting┆
0x49a00…49b00 (73, 0, 10) Sector 490bff00148241 ┆I     A value is positive, the operation is chained into the semphore list according to its priority. Otherwise, the first coroutine is chained out from the semaphore list and made ready, and the operation address is placed in a saved register of the readi┆
0x49b00…49c00 (73, 0, 11) Sector 490c3a00148241 ┆I :   Aed coroutines.    Flowgram    Figure 4.2.5.4.2.5-6                  4.2.5.4.2 Semaphore Functions Module Specification   Semaphore Functions Module supplies communication and synchronization tools by using the semaphore concept.    4.2.5.4.2.1 Funct┆
0x49c00…49d00 (73, 0, 12) Sector 490dff00148241 ┆I     A 1                                                                   Procedure WAIT SEM(SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (WAIT SEM, SHORT)   DECREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GE 0?   CHAIN IN (COROUTINE, SEMAPHO┆
0x49d00…49e00 (73, 0, 13) Sector 490e7f00148241 ┆I     ARE)   PAUSE   TRACE (EXIT, SHORT)   RESTORE REGISTERS   RETURN (OK)   Stop                          FIGURE 4.2.5.4.2.5-1  list according to its priority.  Otherwise, the first coroutine is chained out from the semaphore list and made ready, and the ┆
0x49e00…49f00 (73, 0, 14) Sector 490fff00148241 ┆I     A 1                                                                   Procedure SIGNAL SEM (SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (SIGNAL SEM, SHORT)   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0?   COROUTINE = SEMAPHORE.N┆
0x49f00…4a000 (73, 0, 15) Sector 49009d00148241 ┆I     AEXT   CHAIN OUT (COROUTINE)   CHAIN IN (COROUTINE, READY LIST)   RESTORE REGISTERS   RETURN (OK)   Stop                          FIGURE 4.2.5.4.2.5-2                                                                                                    ┆
0x4a000…4a100 (74, 0, 0)  Sector 4a01ff41148241 ┆J  A  A1482A CPS/SDS/024               vhn/pn               OKH                  4.2.5.4.2.5          01 12 81 12 50    4 25  18168 05 02 82 14 41    2 57   3316 07 05 84 09 21 07 05 84 15 24 0120A  77   11 36   596  27481   0         '    *J         7 \ _┆
0x4a100…4a200 (74, 0, 1)  Sector 4a024d00148241 ┆J M   A     J   J I I I I I I I H H H H G G G G G F F F F F F E E E E E E D D D D D C C C C C C B B B B B B A A A A A @ @ @ @ ? ? ? ? ? ? ? > > > > > >                                                                                                         ┆
0x4a200…4a300 (74, 0, 2)  Sector 4a03b100148241 ┆J 1   A 1                                                                         CPS/SDS/024   840503   CAMPS SYSTEM FUNCTIONS DETAILED DESIGN SPECIFICATION ISSUE 1 CAMPS       , > I!e=6 !Z="(=e*$<kas#r  9x2"<! <6 M8)I:^=~ B#.!#<6 ! <6 M&&:!<~ J#.:!<2.=M2┆
0x4a300…4a400 (74, 0, 3)  Sector 4a04ff00148241 ┆J     A 1                                                                  4.2.5.4.2.5 Semaphore Functions Module Design   a) WAIT SEM    Narrative    The semaphore counter is decreased by one. If the resulting value is smaller than zero, the running corou┆
0x4a400…4a500 (74, 0, 4)  Sector 4a05ff00148241 ┆J     Atine is linked to the semaphore list and paused. Otherwise, the procedure returns immediately.    Flowgram    Figure 4.2.5.4.2.5-1.   b) SIGNAL SEM    Narrative    The semaphore counter is increased by one. If the resulting value is zero or negative┆
0x4a500…4a600 (74, 0, 5)  Sector 4a06ff00148241 ┆J     A, the first waiting coroutine is chained out from the semaphore list and made ready.    Flowgram    Figure 4.2.5.4.2.5-2   c) WAIT OPSEM    Narrative    The semaphore counter is decreased by one. If the resulting value is smaller than zero, the runn┆
0x4a600…4a700 (74, 0, 6)  Sector 4a07ff00148241 ┆J     Aing coroutine is linked to the semaphore list and paused. Otherwise, the first operation is chained out from the semaphore list and the operation address is returned in a register. Finally STATUS of OPERATION is set to DONE.    Flowgram    Figure 4.┆
0x4a700…4a800 (74, 0, 7)  Sector 49081300148241 ┆I     A2.5.4.2.5-3   MM(!  "(=~~ J*2M2/C<2:^=~ B<2:b= R<2M/,:g=~ BG2M")M2&!  "(=~~ BW2I! <6 M /M?.I*:="8=IM2&MP'Mc2! m"2< [MI !?=6 :  #wI>K!8=>R 2!8=6 #4  E*8=k L<M% :8=F 28=I!#<:"<>R<2> I  E*#<&  "< DM L<M% :#<F 2#<> I:g= Ro2M/2 Rl2> IC13!?=4~~ B|2> I:A=!┆
0x4a800…4a900 (74, 0, 8)  Sector 4a09ff00148241 ┆J     A      CHAIN IN (OPERATION, SEMAPHORE)      OPERATION.STATUS = IN SEMAPHORE      OPERATION.ACTIVATION = SEMAPHORE   COROUTINE = SEMAPHORE.NEXT   COROUTINE.SAVER5 = OPERATION   CHAIN OUT (COROUTINE)   CHAIN IN (COROUTINE, READY LIST)   RETURN (OK)   S┆
0x4a900…4aa00 (74, 0, 9)  Sector 4a0a3500148241 ┆J 5   Atop                       FIGURE 4.2.5.4.2.5-6 e pointer value    If STATUS is DONE INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-5   f) INTERN SIGNAL    Narrative    The semaphore counter is increased by one. If the resulting┆
0x4aa00…4ab00 (74, 0, 10) Sector 4a0bff00148241 ┆J     A 1                                                                     4.2.5.4.3 Pause Module Specification    4.2.5.4.3.1 Functional Specification   The Pause Module contains the waiting point of Coroutine Monitor. It is called from Coroutine Monit┆
0x4ab00…4ac00 (74, 0, 11) Sector 4a0cff00148241 ┆J     Aor procedures with waiting points when they reach their waiting points.   The first coroutine in READY LIST is selected for running.   If the READY LIST is empty the System Call Monitor procedure Wait Next Operation is called.   If the new coroutine┆
0x4ac00…4ad00 (74, 0, 12) Sector 4a0dff00148241 ┆J     A has a SUBPROCESS ID different from CURRENT SUBPROCESS, the Utility Function CHANGE SUBPROCESS is called.    4.2.5.4.3.2 Pause Module Interface   Call Specification   a) PAUSE: OK   b) PAUSE (R5): OK   Register Conventions   Call Registers  1       ┆
0x4ad00…4ae00 (74, 0, 13) Sector 4a0eff00148241 ┆J     A                                                                R5 LINK  (destr)   Return Registers   R0-R6 Contain the values of the saved registers from Coroutine record.    4.2.5.4.3.3 Pause Module Components   Pause module contains one procedure┆
0x4ae00…4af00 (74, 0, 14) Sector 4a0f4000148241 ┆J @   A. This is the PAUSE procedure. Cf. figure 4.2.5.4.3.3-1.             Procedure SIGNAL SEM (SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (SIGNAL SEM, SHORT)   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0?   COROUTINE = SEMAPHORE.N┆
0x4af00…4b000 (74, 0, 15) Sector 4a009200148241 ┆J     A 1                                                                                                                     FIGURE 4.2.5.4.3.3-1 5.4.2.5-2                                                                                                    ┆
0x4b000…4b100 (75, 0, 0)  Sector 4b01ff00148241 ┆K     A 1                                                                   Procedure WAIT OPSEM(SEMAPHORE:COROUTINE SEMAPHORE)                                 (OPERATION:COROUTINE OPERATION): OK   STORE REGISTERS   TRACE (WAIT OPSEM, SHORT)   DECREMENT SE┆
0x4b100…4b200 (75, 0, 1)  Sector 4b02ff00148241 ┆K     AMAPHORE.COUNT   SEMAPHORE.COUNT GE 0 ?   CHAIN IN (COROUTINE,SEMAPHORE)   PAUSE  OPERATION = COROUTINE.SAVER5=SEMAPHORE.NEXT                                    CHAIN OUT(SEMAPHORE.NEXT)   OPERATION.STATUS = DONE   TRACE (EXIT, LONG)   RESTORE REGIST┆
0x4b200…4b300 (75, 0, 2)  Sector 4b034a00148241 ┆K J   AERS   RETURN (OK)   Stop                       FIGURE 4.2.5.4.2.5-3        CPS/SDS/024   OKH/820201   CAMPS SYSTEM FUNCTIONS DETAILED DESIGN SPECIFICATION  CAMPS       =MM, > I!e=6 !Z="(=e*$<kas#r  9x2"<! <6 M8)I:^=~ B#.!#<6 ! <6 M&&:!<~ J#.:!<2.=M2┆
0x4b300…4b400 (75, 0, 3)  Sector 4b04ff00148241 ┆K     A 1                                                                      Procedure SIGNAL OPSEM(SEMAPHORE:COROUTINE SEMAPHORE,                OPERATION:COROUTINE OPERATION): OK   STORE REGISTERS   TRACE (SIGNAL OPSEM,LONG)   INTERN SIGNAL(SEMAPHORE, ┆
0x4b400…4b500 (75, 0, 4)  Sector 4b057000148241 ┆K p   AOPERATION)   RESTORE REGISTERS   RETURN (OK)   STOP                                 FIGURE 4.2.5.4.2.5-4      Figure 4.2.5.4.2.5-1.   b) SIGNAL SEM    Narrative    The semaphore counter is increased by one. If the resulting value is zero or negative┆
0x4b500…4b600 (75, 0, 5)  Sector 4b06ff00148241 ┆K     A 1                                                                      Procedure ASSOCIATE(SEMAPHORE:COROUTINE SEMAPHORE,                OPERATION:COROUTINE OPERATION): OK   STORE REGISTERS   TRACE (ASSOCIATE OP,SHORT)   CASE OPERATION.STATUS     P┆
0x4b600…4b700 (75, 0, 6)  Sector 4b07e900148241 ┆K i   AENDING ? - OPERATION.ACTION = TO SEMAPHORE          OPERATION.ACTIVATION = SEMAPHORE     DONE    ? - INTERN SIGNAL (SEMAPHORE, OPERATION)   RESTORE REGISTERS   RETURN (OK)   STOP                            FIGURE 4.2.5.4.2.5-5  Flowgram    Figure 4.┆
0x4b700…4b800 (75, 0, 7)  Sector 4a08ff00148241 ┆J     A 1                                                                      Procedure INTERN SIGNAL(SEMAPHORE:COROUTINE SEMAPHORE,                                    OPERATION:COROUTINE OPERATION): OK   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0 ?┆
0x4b800…4b900 (75, 0, 8)  Sector 4b09ff00148241 ┆K     A 1                                                                   d) SIGNAL OPSEM    Narrative    INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-4   e) ASSOCIATE    Narrative    If STATUS is PENDING    - ACTION is set to TO ┆
0x4b900…4ba00 (75, 0, 9)  Sector 4b0aff00148241 ┆K     ASEMAPHORE   - ACTIVATION is set to the semaphore pointer value    If STATUS is DONE INTERN SIGNAL procedure is called.    Flowgram    Figure 4.2.5.4.2.5-5   f) INTERN SIGNAL    Narrative    The semaphore counter is increased by one. If the resulting┆
0x4ba00…4bb00 (75, 0, 10) Sector 4b0bff00148241 ┆K     A value is positive, the operation is chained into the semphore list according to its priority. Otherwise, the first coroutine is chained out from the semaphore list and made ready, and the operation address is placed in a saved register of the readi┆
0x4bb00…4bc00 (75, 0, 11) Sector 4b0c3a00148241 ┆K :   Aed coroutines.    Flowgram    Figure 4.2.5.4.2.5-6  nents   The six Semaphore Functions are each implemented as a procedure:   1                                                                   - WAIT SEM cf. 4.2.5.4.2.5 a  - SIGNAL SEM cf. 4.2.5.4┆
0x4bc00…4bd00 (75, 0, 12) Sector 4b0dff00148241 ┆K     A 1                                                                   Procedure WAIT SEM(SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (WAIT SEM, SHORT)   DECREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GE 0?   CHAIN IN (COROUTINE, SEMAPHO┆
0x4bd00…4be00 (75, 0, 13) Sector 4b0e7f00148241 ┆K     ARE)   PAUSE   TRACE (EXIT, SHORT)   RESTORE REGISTERS   RETURN (OK)   Stop                          FIGURE 4.2.5.4.2.5-1  OK:     EXIT NUMBER = OK          End Case WAIT SYSTEM CALL    End Case INIT SYSCALL    Stop     Fig. 4.2.5.4.1.5-1b zed as fol┆
0x4be00…4bf00 (75, 0, 14) Sector 4b0fff00148241 ┆K     A 1                                                                   Procedure SIGNAL SEM (SEMAPHORE:COROUTINE SEMAPHORE): OK   STORE REGISTERS   TRACE (SIGNAL SEM, SHORT)   INCREMENT SEMAPHORE.COUNT   SEMAPHORE.COUNT GT 0?   COROUTINE = SEMAPHORE.N┆
0x4bf00…4c000 (75, 0, 15) Sector 4b009d00148241 ┆K     AEXT   CHAIN OUT (COROUTINE)   CHAIN IN (COROUTINE, READY LIST)   RESTORE REGISTERS   RETURN (OK)   Stop                          FIGURE 4.2.5.4.2.5-2                                                                                                    ┆
0x4c000…4c100 (76, 0, 0)  WangDocumentHead {hdr=WangSectHead {next=(76,0, 1), len=0xff, h3=41148241}, f00=»1482A «, f01=»CPS/SDS/024               «, f02=»vhn/pn               «, f03=»OKH                  «, f04=»4.2.5.4.2.5          «, f05=01-12-81 12:50, f06=»   4 «, f07=»25 «, f08=» 18168 «, f09=05-02-82 14:41, f10=»     «, f11=»02 «, f12=»    14 «, f13=05-02-82 10:55, f14=05-02-82 15:28, f15=»0120A «, f16=» 77 «, f17=»   8 «, f18=»41 «, f19=»  616 «, f20=» 24179 «, f21=»  «, f22=»   «, f99=720010000110066610110480aaca1505000000000000003703e000df}
0x4c100…4c200 (76, 0, 1)  Sector 4c024d00148241 ┆L M   A     L   L K K K K K K K J J J J I I I I I H H H H H H G G G G G G F F F F F E E E E E E D D D D D C C C C B B B B B A A A A A A @ @ @ @ @ @ ? ? ? ? ? ? ?                                                                                               ┆
0x4c200…4c300 (76, 0, 2)  Sector 4c03ae00148241 ┆L .   A 1                                                                         CPS/SDS/024   OKH/820201   CAMPS SYSTEM FUNCTIONS DETAILED DESIGN SPECIFICATION  CAMPS       =MM, > I!e=6 !Z="(=e*$<kas#r  9x2"<! <6 M8)I:^=~ B#.!#<6 ! <6 M&&:!<~ J#.:!<2.=M2┆
0x4c300…4c400 (76, 0, 3)  Sector 4c04ff00148241 ┆L     A 1                                                                  4.2.5.4.2.5 Semaphore Functions Module Design   a) WAIT SEM    Narrative    The semaphore counter is decreased by one. If the resulting value is smaller than zero, the running corou┆
0x4c400…4c500 (76, 0, 4)  Sector 4c05ff00148241 ┆L     Atine is linked to the semaphore list and paused. Otherwise, the procedure returns immediately.    Flowgram    Figure 4.2.5.4.2.5-1.   b) SIGNAL SEM    Narrative    The semaphore counter is increased by one. If the resulting value is zero or negative┆
0x4c500…4c600 (76, 0, 5)  Sector 4c06ff00148241 ┆L     A, the first waiting coroutine is chained out from the semaphore list and made ready.    Flowgram    Figure 4.2.5.4.2.5-2   c) WAIT OPSEM    Narrative    The semaphore counter is decreased by one. If the resulting value is smaller than zero, the runn┆
0x4c600…4c700 (76, 0, 6)  Sector 4c07ff00148241 ┆L     Aing coroutine is linked to the semaphore list and paused. Otherwise, the first operation is chained out from the semaphore list and the operation address is returned in a register. Finally STATUS of OPERATION is set to DONE.    Flowgram    Figure 4.┆
0x4c700…4c800 (76, 0, 7)  Sector 4b081300148241 ┆K     A2.5.4.2.5-3   MM(!  "(=~~ J*2M2/C<2:^=~ B<2:b= R<2M/,:g=~ BG2M")M2&!  "(=~~ BW2I! <6 M /M?.I*:="8=IM2&MP'Mc2! m"2< [MI !?=6 :  #wI>K!8=>R 2!8=6 #4  E*8=k L<M% :8=F 28=I!#<:"<>R<2> I  E*#<&  "< DM L<M% :#<F 2#<> I:g= Ro2M/2 Rl2> IC13!?=4~~ B|2> I:A=!┆
0x4c800…4c900 (76, 0, 8)  WangDocumentHead {hdr=WangSectHead {next=(76,0, 9), len=0xff, h3=41147941}, f00=»1479A «, f01=»CPS SE TEAM MEETING   3   «, f02=»pn                   «, f03=»                     «, f04=»ikke slettes!!!!!!   «, f05=30-11-81 10:38, f06=»     «, f07=»35 «, f08=»  3460 «, f09=07-01-82 15:16, f10=»     «, f11=»01 «, f12=»     4 «, f13=23-12-81 13:01, f14=09-02-82 12:24, f15=»0120A «, f16=»  3 «, f17=»   3 «, f18=»47 «, f19=»   48 «, f20=» 13437 «, f21=»  «, f22=»   «, f99=020010000110066610110480aaca15050000000000000037030e00df}
0x4c900…4ca00 (76, 0, 9)  Sector 4c0a0300147941 ┆L    yA     L   L                                                                            DOKUMENTOVERSIGT  Dokument nr:   Dokumentnavn:   Operat]r:   Forfatter:    Kommentarer:       STATISTIK  AKTIVITET DATO TID  ANV.TID ANSLAG  Oprettet  / /   :     ┆
0x4ca00…4cb00 (76, 0, 10) Sector 4c0bff00147941 ┆L    yA 1                                                                                        811211  # CAMPS SYSTEM ENGINEERING    CAMPS   TEAM MEETING NO. 3 NO.  ACTIONEE DUE DATE                                                                        ┆
0x4cb00…4cc00 (76, 0, 11) Sector 4c0c0b00147941 ┆L    yA      .! <6 M1' R .M )> I> I:]=~ BC.MP- R5.> IM)-:^=~ BC.C~.M_* RM.> I:^=~ B[.Mr)Cp.:]=~ Bp.MP- Rm.> IM)-MI,:^=~ B~.> IMB'IM2&  9x2"<!Z="(=^#Vk"$<:]=2#<:^=~ J6.! <6 M8) R6.> I! <6 M8)I!h=6 ! =6 M")IM"):g=~ J /:h=2>=M?.Mj': < Zn.C /  E*:=k 0wM% !;=4C┆
0x4cc00…4cd00 (76, 0, 12) Sector 4c0dff00147941 ┆L    yA 1                                                                        Participants: FE, LN, FAH, UHR, TDJ, KR  Copies: KNB, KNN, FH, BBC, OKH, HKI,   SRA, JHO, GJ, BHB,     BASELINE   Received comments from SHAPE on  CPS/230/ICD/0002; answer tel┆
0x4cd00…4ce00 (76, 0, 13) Sector 4c0eff00147941 ┆L    yAex  1 HMH Closed   Answer SHAPE telex on ECP/016  2 TDJ 11.12   Submit ECP/016 issue 2.  3 TDJ 19.12   Submit ECP/019  3 TDJ 19.12   Await SHAPES approval of ECO/004 based  on ECP/015    Prepare ECP on 128 K memory 21 FE   New I/C and O/G tables out┆
0x4ce00…4cf00 (76, 0, 14) Sector 4c0fff00147941 ┆L    yAlined 23 FE Closed   Change of supervisor print function 24 TDJ 11.12   SYSTEM ANALYSIS   Performance Report (in for typing)   VCD analysis  7 KR   EMC-reports submitted. CPS/REP/002 and  CPS/QAP/002; await SHAPE's approval   Two missing pages in CP┆
0x4cf00…4d000 (76, 0, 15) Sector 0300d200147941 ┆  R  yAS/QAP/002  forwarded to SHAPE   Await response on PU performance   measurements (action GB, JH[)   Traffic scenario proposal 19 FAH  4.12   Procedural proposal to avoid overloading  by hardcopy printing  F 2#<> I:g= Ro2M/2 Rl2> IC13!?=4~~ B|2> I:A=!┆

Less…

Reduced view