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

⟦fd6667eb1⟧ Wang Wps File

    Length: 45410 (0xb162)
    Types: Wang Wps File
    Notes: CPS/SDS/032               
    Names: »1575A «

Derivation

└─⟦945185ab2⟧ Bits:30005808 8" Wang WCS floppy, CR 0113A
    └─ ⟦this⟧ »1575A « 

WangText

…09……00……00……00……00…C…02……00……00…C
B…08…B…0d…B…00…B…01…B B…05…A…09…A…0d…A…02…@…08…@…0d…@…01…@…06…?…09…?…0c…?…0e…?…00…?
?…05…?…07…>…0b…>…0d…>…00…>…02…>…05…>…07…=…09…=…86…1                                             …02…           …02…   …02…        

…02…CPS/SDS/032

…02… HUH/820503…02……02… 
LOGGING
DETAILED DESIGN SPECIFICATION…02……02… CAMPS















o̲g̲ ̲T̲r̲a̲c̲e̲ ̲S̲u̲b̲-̲P̲a̲c̲k̲a̲g̲e̲



4.2.2.1  F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         The main functions for the log trace sub-package are:

         1)  Receive trace keys.
         2)  Retrieve pertinent log CIFs.
         3)  Trace log records.
         4)  Return traced log records in a trace CIF.

         The functional breakdown is shown in fig. 4.2.2.1-1.



4.2.2.1.1    R̲e̲c̲e̲i̲v̲e̲ ̲T̲r̲a̲c̲e̲ ̲K̲e̲y̲s̲

         When a trace command is received the trace key buffer
         is read into the trace data area. The trace command
         type consists of a trace record type, an early log
         time, a late log time, and a channel or terminal designator.
         If any errors are found, the trace action is terminated
         and the trace command queue element is sent to the
         SSC garble queue.



4.2.2.1.1.1 T̲r̲a̲c̲e̲ ̲K̲e̲y̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲

         The stored log information may be traced by TEP with
         respect to:

         a)  a specific channel.
             The trace key is a log time interval and a parameter
             defining:
         
             1)  incoming messages
             2)  outgoing messages
             3)  channel discontinuity



         b)  a specific terminal.
             The trace key is a log time interval and a parameter
             defining:

             1)  terminal procedures
             2)  message distribution control
             3)  message service
             4)  supervisor transactions
             5)  security procedures

         c)  a specific device.
             The trace key is a log time interval and a parameter
             defining:

             1)  incoming messages
             2)  PTP

         d)  a log time interval only.


         L̲o̲g̲ ̲T̲r̲a̲c̲e̲ ̲C̲o̲m̲m̲a̲n̲d̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲


         TYPE    LOG ̲TRACE ̲COMMAND ̲TYPE = 
                     RECORD

                       TRACE ̲TYPE : LOG ̲TRACE ̲RECORD ̲TYPE;
                       EARLY ̲LOG ̲TIME : TIME ̲TYPE;
                       LATE ̲LOG ̲TIME : TIME TYPE;
                       CHAN ̲TERM ̲DESIGNATOR : DESIGNATOR ̲TYPE
                     END;

         TYPE    LOG ̲TRACE ̲RECORD ̲TYPE =

                         (LOG ̲TRACE ̲ALL, LOG ̲TRACE ̲INCOMING
                         ̲MSG, 
                         LOG ̲TRACE ̲OUTGOING ̲MSG,
                         LOG ̲TRACE ̲CH ̲DISCONTINUITY,
                         LOG ̲TRACE ̲TERMINAL ̲PROC,
                         LOG ̲TRACE ̲MESSAGE ̲DIST,
                         LOG ̲TRACE ̲MESSAGE ̲SERVICE,
                         LOG ̲TRACE ̲SUPV ̲TRANS,
                         LOG ̲TRACE ̲SECURITY ̲PROC,
                         LOG ̲TRACE ̲SPECIFIC ̲DEVICE)





4.2.2.1.2    R̲e̲t̲r̲i̲e̲v̲e̲ ̲P̲e̲r̲t̲i̲n̲e̲n̲t̲ ̲L̲o̲g̲ ̲C̲I̲F̲s̲

         The pertinent log CIF-refs are retrieved from SAR.
         Inputs are log time intervals and SAR log type indicator.
         The log records are read from the trace CIF and stored
         in the log trace data area.



4.2.2.1.3    T̲r̲a̲c̲e̲ ̲L̲o̲g̲ ̲R̲e̲c̲o̲r̲d̲s̲

         The log records in the log trace data area are traced
         one by one. The log record parameters are compared
         with the trace keys. The wanted log records are stored
         in the trace CIF for later print-out.



4.2.2.1.4    R̲e̲t̲u̲r̲n̲ ̲T̲r̲a̲c̲e̲d̲ ̲L̲o̲g̲ ̲R̲e̲c̲o̲r̲d̲s̲

         When log trace is completed, the log trace CIF-ref
         and a completion code are returned to the TEP reply
         queue.



















































                     Figure 4.2.2.1-2
                   FUNCTIONAL BREAKDOWN


4.2.2.2  S̲o̲f̲t̲w̲a̲r̲e̲ ̲S̲t̲r̲u̲c̲t̲u̲r̲e̲

         The trace sub-package consists of one coroutine performing
         the function listed in section 4.2.2.1.

         The coroutine in the Trace sub-package consist of one
         software module.



4.2.2.3  D̲a̲t̲a̲ ̲F̲l̲o̲w̲ ̲a̲n̲d̲ ̲C̲o̲n̲t̲r̲o̲l̲ ̲L̲o̲g̲i̲c̲

         Data flow and control logic are related to interaction
         between modules.

         Data flow and control logic within the Trace module
         and the Trace Log CIF module is described in figure
         4.2.2.3-1






       FIG. 4.2.2.3-1…01…Data Flow In Trace Subpackage


4.2.2.4  M̲o̲d̲u̲l̲e̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲



4.2.2.4.1    T̲r̲a̲c̲e̲ ̲M̲o̲d̲u̲l̲e̲



4.2.2.4.1.1  F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         The Trace Module is the main module in the Trace subpackage.
         The incoming trace commands are received and validated.
         If errors are found the queue element is sent to the
         SSC garble queue via CSF and a negative acknowledge
         returned to TEP.

         The required log CIFs are retrieved via SAR and each
         log CIF traced by a call to the Trace Log CIF Module.



4.2.2.4.1.2  M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The Trace module interface via queues to TEP and SAR
         and via system calls to CSF. Refer to section 4.1.7.1.

         The module/module interface to the Trace Log CIF Module
         is described in section 4.2.2.4.2.2.


4.2.2.4.1.3  M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

         HANDLE ̲RETRIEVAL(RETR ̲REC ̲SIZE, TRACE ̲CIF ̲Q ̲REF)

         This procedure handles the log CIF retrieval. The retrieval
         params are stored in a buffer and a queue element referencing
         the buffer is sent to SAR.

         WAIT ̲RETR ̲RESP(ANSW ̲TRC ̲Q)(TRC ̲N ̲QEL, TRC ̲N ̲ATTR)

         The retrieval response from SAR is received. The acknowledge
         response is dismantled.

         ANALYZE ̲RESP(TRC ̲N ̲ATTR)(RETR ̲RESP)

         The retrieval response from SAR is analyzed and the
         RETR ̲RESP flag is set to the proper value.

         GET ̲CAT ̲CIF(CAT ̲ENTRY ̲SIZE, CAT ̲ENTRY ̲FIELD ̲LIST, TRC
         ̲C ̲QEL, SYS ̲CAT ̲ENTRY ̲RECORD).

         This procedure retrieves log CIFs via SAR.The procedure
         is called when the wanted log records are in more than
         one log CIF. The log CIF references are then listed
         in a catalogue entry.



4.2.2.4.1.4  D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         No specific module data is identified for this module.
         Refer section 4.2.2.5.


4.2.2.4.1.5 M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

             Each of the flowgram figures are described shortly
             in this section:

         1)  L̲o̲g̲ ̲T̲r̲a̲c̲e̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-1

             This flow shows the main tasks of log trace:

             -   Get Trace Command, wait for next trace command.
             -   Process Trace, retrieve and trace proper log
                 record CIFs.
             -   Return CC, send the accepted log record for
                 print-out and send command acknowledge.

         2)  I̲n̲i̲t̲i̲a̲l̲i̲z̲e̲ ̲T̲r̲a̲c̲e̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-2

             During the initialize, later used work-variables
             are preset to their initial value.

         3)  G̲e̲t̲ ̲T̲r̲a̲c̲e̲ ̲C̲o̲m̲m̲a̲n̲d̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-3

             The next incoming trace command from the supervisor
             is received.

         4)  P̲r̲o̲c̲e̲s̲s̲ ̲T̲r̲a̲c̲e̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-4

             -   Read Trace Buffer, read the received trace
                 command.
             -   Time 1 is preset to early log time
             -   Time 2 is preset to late log time
                 Time 1 to time 2 is the actual trace time span.
             -   Time 3 is preset to late log time plus the
                 max time span between storage of log CIFs.

         5)  R̲e̲a̲d̲ ̲T̲r̲a̲c̲e̲ ̲B̲u̲f̲f̲e̲r̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-5

             The contents of the trace command buffer is read
             into the TRACE ̲CMD ̲BUF area.




         6)  T̲r̲a̲c̲e̲ ̲L̲o̲g̲ ̲C̲I̲F̲s̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-6

             -   Retrieve Log CIF, the next log CIF is retrieved.
             -   Read Adm. Field, the number of log records
                 contained in the traced CIF is read in the
                 CIF administration field.
             -   Trace Next Log CIF, the next log CIF is traced.

             If the retrieval response from SAR is negative
             or the trace is completed, the trace action is
             terminated.

         7)  R̲e̲t̲r̲i̲e̲v̲e̲ ̲L̲o̲g̲ ̲C̲I̲F̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-7

             The next log CIF to be traced is retrieved via
             SAR.

             -   Issue Retr Time 1 to Time 3, log CIFs in the
                 complete time interval is retrieved from SAR.
             -   Wait Ret. Resp, the two responses from SAR
                 is received.
             -   Analyse Resp, the response from SAR is analysed.
                 If the response is a system catalog (more than
                 one CIF in time span) the first catalog field
                 is read.
                 If a single CIF is received or the offline
                 disk is off, the log CIF retrieval is terminated.
                 If there was no CIF in the present volume the
                 time 1 value is changed and a new retrieval
                 requested is executed.
             -   Get Cat CIF, when a display catalog is received
                 from SAR this procedure is used to retrieve
                 the log CIFS in the catalog.

         8)  I̲s̲s̲u̲e̲ ̲R̲e̲t̲r̲.̲ ̲T̲i̲m̲e̲ ̲1̲ ̲t̲o̲ ̲T̲i̲m̲e̲ ̲3̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-8

             The retrieval command buffer is loaded.

             -   Handle Retrieval, the retrieval command is
                 sent to SAR.


         9)  H̲a̲n̲d̲l̲e̲ ̲R̲e̲t̲r̲i̲e̲v̲a̲l̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-9

             The retrieval command buffer is transferred to
             a reserved buffer.

             -   Send Buffer To SAR, the reserved buffer is
                 sent to SAR

         10) S̲e̲n̲d̲ ̲T̲o̲ ̲S̲A̲R̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer 4.2.2.4.1.5-10

             The retrieval command is sent to SAR and the reserved
             buffer dismantled.

         11) W̲a̲i̲t̲ ̲R̲e̲t̲r̲.̲ ̲R̲e̲s̲p̲.̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-11

             The retrieval notification is received and dismantled.
             The command response is received.

         12) A̲n̲a̲l̲y̲z̲e̲ ̲R̲e̲s̲p̲o̲n̲s̲e̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-12

             The command response is analysed.
             The RETR ̲RESP is set to the proper status value.

             -   Analyse Flags, when an acknowledge is received,
                 the queue element flag is analysed.

         13) A̲n̲a̲l̲y̲z̲e̲ ̲F̲l̲a̲g̲s̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-13

             The command response flag is analysed.
             The RETR ̲RESP is set to the proper status value.

         14) O̲p̲e̲n̲ ̲C̲a̲t̲a̲l̲o̲g̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-14

             The display catalog from SAR is opened and the
             catalog field is read.




         15) G̲e̲t̲ ̲C̲a̲t̲ ̲C̲I̲F̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-15

             -   Get Next Catalog, the catalog is read from
                 the catalog CIF.
             -   Issue Retr Cat Entry, the next CIF in the catalog
                 is retrieved via SAR.
             -   Wait Ret Resp, the retrieval response from
                 SAR is received.
             -   Analyse Resp, the response is analysed.

         16) G̲e̲t̲ ̲N̲e̲x̲t̲ ̲C̲a̲t̲a̲l̲o̲g̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.4-16

             The next catalog entry is read.

         17) I̲s̲s̲u̲e̲ ̲R̲e̲t̲r̲ ̲C̲a̲t̲ ̲E̲n̲t̲r̲y̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-17

             The retrieval command buffer is loaded with the
             parameters from the catalog entry.

             -   Handle Retrieval, the retrieval command is
                 sent to SAR.

         18) R̲e̲a̲d̲ ̲A̲d̲m̲ ̲F̲i̲e̲l̲d̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-18

             The present log CIF VIEW is opened and the administration
             field read.



         19) R̲e̲t̲u̲r̲n̲ ̲C̲C̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-19

             The trace command is terminated and a command acknowledge
             is returned.
             The used queue elements and VIEWs are dismantled.
             -   Terminate Trace CIF, terminate and send the
                 trace CIF
             -   Terminate Command, terminate the trace command
                 and send a command acknowledge.

         20) T̲e̲r̲m̲i̲n̲a̲t̲e̲ ̲T̲r̲a̲c̲e̲ ̲C̲I̲F̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-20

             The last accepted log record in the TRC ̲STORE ̲BUF
             is written in the trace CIF
             The trace CIF administration field is created and
             the proper TRC ̲FLAG selected.
             -   Send Trace CIF, the CIF is sent to TEP for
                 print-out.

         21) T̲e̲r̲m̲i̲n̲a̲t̲e̲ ̲C̲o̲m̲m̲a̲n̲d̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-21

             The trace command is terminated.
             The acknowledge queue element flag and information
             field is created.
             The trace command acknowledge is sent.

         22) S̲e̲n̲d̲ ̲G̲a̲r̲b̲l̲e̲
             D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.1.5-22

             Queue elements with errors are sent to the SSC
             garble queue.



                      F̲l̲o̲w̲g̲r̲a̲m̲ ̲L̲i̲s̲t̲

          1) Log Trace
          2) Initialize Trace
          3) Get Trace Command
          4) Process Trace
          5) Read Trace Buffer                                    
                                                                  6) Trace
                                                                     Log
                                                                     CIFs
          7) Retrieve Log CIF
          8) Issue Time-span Retrieval
          9) Handle Retrieval
         10) Send Buffer To SAR
         11) Wait Retrieval Response
         12) Analyse Response
         13) Analyse Flag
         14) Open Catalog
         15) Get Catalog CIF
         16) Get Next Catalog
         17) Issue Retrieval Catalog Entry
         18) Read Administration Field
         19) Return CC
         20) Terminate Trace CIF
         21) Terminate Command
         22) Send Garble




   LOG ̲TRACE

   I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲T̲R̲A̲C̲E̲ 2

   LOOP

         CLOSE ̲DOWN EQ TRUE?

         COMP = TRUE COMP is initialized; used for
                     later generation of CC

         TRACE ̲REC ̲NO = 1

           TRACE ̲REC ̲NO is a pointer to next log record
         in the TRC ̲TRACE ̲BUF

         TRACE ̲CIF ̲REC ̲NO = 0

           TRC ̲CIF ̲REC ̲NO is the number of accepted
         log records in the 
           TRACE CIF

         TRC ̲FLAG = ONLY ̲CIF

         G̲E̲T̲ ̲T̲R̲A̲C̲E̲ ̲C̲O̲M̲M̲A̲N̲D   3

         CASE  TRC ̲QEL ̲ATTR.HEADER.SUBTYPE OF

             LOG ̲TRACE ̲REQUEST ?      P̲R̲O̲C̲E̲S̲S̲ ̲T̲R̲A̲C̲E̲
               4

             OTHER ?                  S̲E̲N̲D̲ ̲G̲A̲R̲B̲L̲E̲ 
              22


         END CASE

         R̲E̲T̲U̲R̲N̲ ̲C̲C̲   19


   END LOOP



              Figure 4.2.2.4.1.5-1
                    LOG TRACE


       I̲N̲I̲T̲I̲A̲L̲I̲Z̲E̲ ̲T̲R̲A̲C̲E̲

       CATALOG ̲CIF ̲STATUS = FALSE

       STORE ̲REC ̲NO = 1

       RET ̲REC.CLAS ̲CAT = LOG ̲CLAS ̲CAT

       RET ̲REC.EX ̲IND = LOG ̲EXER ̲INDICATOR

       RET ̲REC.RETR ̲DTG = LOG ̲RETR ̲DTG

       RET ̲REC.PLA ̲REF = LOG ̲PLA ̲REF

       RET ̲REC.REQ ̲SCD = LOG ̲REQ ̲SCD

       RET ̲REC.SIC ̲S = LOG ̲SIC ̲S





























                Figure 4.2.2.4.1.5-2
                  INITIALIZE TRACE


   G̲E̲T̲ ̲T̲R̲A̲C̲E̲ ̲C̲O̲M̲M̲A̲N̲D̲

   CASE  RECEIVE ̲FIRST ̲QEL (TRUE, TRC ̲Q)
                            (TRC ̲QEL ̲ATTR, TRC ̲QEL,
                     TRC ̲SUBQ, CC):

         ERROR ?     ANALYSE ̲ERROR (CC, O)

         OK ?


   END CASE



































              Figure 4.2.2.4.1.5-3
                GET TRACE COMMAND


   P̲R̲O̲C̲E̲S̲S̲ ̲T̲R̲A̲C̲E̲

   R̲E̲A̲D̲ ̲T̲R̲A̲C̲E̲ ̲B̲U̲F̲F̲E̲R̲ 5

   TIME ̲1 = TRACE ̲CMD ̲BUF.EARLY ̲LOG ̲TIME

     TIME ̲1 to TIM ̲2 is the log trace interval

   TIME ̲2 = TRACE ̲CMD ̲BUF.LATE ̲LOG ̲TIME

   TIME ̲3 = TIME ̲2 + TIME ̲SP

     TIME ̲3 is late log time added 10 min to be shared
     to get the requested log records

   TIME ̲1 GT TIME ̲2 ?    COMP = FALSE

   CREATE ̲TRACE ̲CIF  (TRACE ̲CIF ̲ATTRIBUTES, TRACE ̲CIF
   ̲Q ̲REF)
                      (TRACE ̲CIF ̲VIEW ̲REF, CC)

   T̲R̲A̲C̲E̲ ̲L̲O̲G̲ ̲C̲I̲F̲s̲ 6


     COMP is used as status for completion code generation

















              Figure 4.2.2.4.1.5-4
                  PROCESS TRACE


 R̲E̲A̲D̲ ̲T̲R̲A̲C̲E̲ ̲B̲U̲F̲F̲E̲R̲

   CASE  READ ̲BUFFER    (TRC ̲QEL, TRACE ̲CMD ̲BUF
                                                                 SIZE(TRACE
                                                                 ̲CMD
                                                                 ̲BUF),
                                                                 1)
                                                                 (CMD
                                                                 ̲BUF
                                                                 ̲SIZE,
                                                                 CC):

         ERROR ?     ANALYSE ̲ERROR (CC,0)

         OK?


   END CASE



































              Figure 4.2.2.4.1.5-5
                READ TRACE BUFFER


   T̲R̲A̲C̲E̲ ̲L̲O̲G̲ ̲C̲I̲F̲s̲

   TRACE ̲COMPLETE = FALSE

   LOOP

         R̲E̲T̲R̲I̲E̲V̲E̲ ̲L̲O̲G̲ ̲C̲I̲F̲  7

         SAR ̲RESP EQ FALSE ?  EXIT LOOP

         R̲E̲A̲D̲ ̲A̲D̲M̲ ̲F̲I̲E̲L̲D̲  18

         TRACE LOG CIF (TIME2,TRC ̲N ̲QEL, LOG ̲CIF ̲REC
         ̲NO,
                                                                 TRACE
                                                                 ̲CIF
                                                                 ̲REC
                                                                 ̲NO)
                                                                 (TRACE
                                                                 ̲CIF
                                                                 ̲REC
                                                                 ̲NO,
                                                                 TRACE
                                                                 ̲COMPLETE)

         TRACE ̲COMPLETE EQ TRUE ?  EXIT LOOP

   END LOOP



























              Figure 4.2.2.4.1.5-6
                 TRACE LOG CIFs


     R̲E̲T̲R̲I̲E̲V̲E̲ ̲L̲O̲G̲ ̲C̲I̲F̲

     SAR ̲RESP = FALSE

     CAT ̲TEST = FALSE

     TEST = FALSE

     W̲H̲I̲L̲E̲ ̲T̲E̲S̲T̲ ̲E̲Q̲U̲A̲L̲ ̲F̲A̲L̲S̲E̲ LOOP

         CATALOG ̲CIF ̲STATUS EQ TRUE?            CATTEST
         = TRUE

         TIME-1 GT TIME ̲3?

         I̲S̲S̲U̲E̲ ̲R̲E̲T̲R̲ ̲T̲I̲M̲E̲ ̲1̲ ̲T̲O̲ ̲T̲I̲M̲E̲ ̲3̲   8

         WAIT ̲RET ̲RESP(ANSW ̲TRC ̲Q)(TRC ̲N ̲QEL,TRC ̲N
         ̲QEL,TRC ̲N ̲ATTR) 11

         ANALYZE ̲RESP(TRC ̲N ̲ATTR)(RETR ̲RESP)  12

         SET TIME-1 TO RETR ̲MAX ̲SEARCH ̲TIME 

         CASE RETR ̲RESP OF

                  ONE?                                               SAR
                                                                     ̲RESP
                                                                     =
                                                                     TRUE

                  OFFL ̲OFF?

                  CATALOG? - O̲P̲E̲N̲ ̲C̲A̲T̲A̲L̲O̲G̲  14   -CATTEST
                 = TRUE

                  NONE?

         END ̲CASE

                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     TEST
                                                                     =
                                                                     TRUE

         TEST EQ TRUE?      EXIT LOOP

     END LOOP

     CAT ̲TEST EQ TRUE?   GET ̲CAT ̲CIF(CAT ̲ENTRY ̲SIZE,
                                       CAT ̲ENTRY ̲FIELD
                     ̲LIST,
                                       TRC ̲C ̲QEL)
                                      (SYS ̲CAT ̲ENTRY
                     ̲RECORD)  15


       FIG. 4.2.2.4.1.5-7…01…RETRIEVE LOG CIF


   I̲S̲S̲U̲E̲ ̲R̲E̲T̲R̲ ̲T̲I̲M̲E̲ ̲1̲ ̲T̲O̲ ̲T̲I̲M̲E̲ ̲2̲

   RET ̲REC.TOC ̲1 = TIME ̲1

   RET ̲REC.TOC ̲2 = TIME ̲3

     TIME-1 to TIM-3 is the trace time span

   RET ̲REC.RETRID = RETR ̲LOG ̲CIF ̲ON ̲LOG ̲KEYS

   RET ̲REC.ITEM ̲R = DUMMY

     The rest of the parameter are preset during the
     trace initialize.

   HANDLE ̲RETRIEVAL  (RETR ̲REC ̲SIZE, TRACE ̲CIF ̲Q ̲REF)
    9






























              Figure 4.2.2.4.1.5-8
            ISSUE TIME-SPAN RETRIEVAL


   HANDLE ̲RETRIEVAL  (RETR ̲REC ̲SIZE: INTEGER,
                     TRACE ̲CIF ̲Q ̲REF: QUEUE ̲REFERENCE)(
                      )

   CASE   RESERVE ̲BUFFER (RETR ̲REC ̲SIZE, TRACE ̲CIF
         ̲Q ̲REF)
                             (RETR ̲BUF, CC):

          ERROR ?    ANALYSE ̲ERROR (CC, 0)

          OK ?

   END CASE

   CASE   WRITE ̲BUFFER    (RETR ̲BUF, RET ̲REC, RETR
                          ̲REC ̲SIZE, 1)
                                                                 RETR
                                                                 ̲REC
                                                                 ̲SIZE,
                                                                 CC):

          ERROR ?    ANALYSE ̲ERROR (CC, 0)

          OK ?


   END CASE

   S̲E̲N̲D̲ ̲B̲U̲F̲F̲E̲R̲ ̲T̲O̲ ̲S̲A̲R̲  10

   RETURN






















              Figure 4.2.2.4.1.5-9
                HANDLE RETRIEVAL


   S̲E̲N̲D̲ ̲B̲U̲F̲F̲E̲R̲ ̲T̲O̲ ̲S̲A̲R̲

   CASE   SEND ̲REQUEST    (SAR ̲PARAMS, RETR ̲BUF,
                          SAR ̲Q ̲REF, ANSW ̲TRC ̲Q):
                          (CC):

          ERROR ?                                                ANALYSE
                                                                 ̲ERROR
                                                                 (CC,
                                                                 0)

          OK ?


   END CASE

   DISMANTLE ̲REQUEST      (RETR ̲BUF, BUFFER)
































              Figure 4.2.2.4.1.5-10
               SEND BUFFER TO SAR


   WAIT ̲RETR ̲RESP(ANSW ̲TRC ̲Q: QUEUE ̲REFERENCE)
                  (TRC ̲N ̲QEL : QEL ̲REFERENCE,
                   TRC ̲N ̲ATTR; QEL ̲ATTRIBUTES)

   LOOP

     CASE RECEIVE ̲FIRST ̲QEL (TRUE, ANSW ̲TRC ̲Q)
                               (TRC ̲N ̲ATTR, TRC ̲N ̲QEL,
                                TRC ̲SUB, CC)

             ERROR? -     ANALYZE ̲ERROR(CC, O)

             OK?

     END CASE

     TRC ̲N ̲ATTR.HEADER NE ACKNOWLEDGE? - EXIT LOOP

     DISMANTLE ̲REQUEST (TRC ̲N ̲ATTR, SINGLE ̲QEL)

   END LOOP

   RETURN






















   FIG. 4.2.2.4.1.5-11…01…WAIT RETRIEVAL RESPONSE


  ANALYSE ̲RESP   (TRC ̲N ̲ATTR: QEL ̲ATTRIBUTES)(RETR
                 ̲RESP: INTEGER)

  CASE   TRC ̲N ̲ATTR.HEADER.MAINTYPE   OF

         SYSTEM ̲CATALOG ̲DISPLAY?  RETR ̲RESP = CATALOG

         LOG ̲CIF ?                RETR ̲RESP = ONE

         ACKNOWLEDGE ?            A̲N̲A̲L̲Y̲S̲E̲ ̲F̲L̲A̲G̲S̲  13

         OTHER ?  RETR ̲RESP=ERROR--SEND ̲GARBLE  22


  END CASE

  RETURN





























              Figure 4.2.2.4.1.5-12
                ANALYZE RESPONSE


   A̲N̲A̲L̲Y̲S̲E̲ ̲F̲L̲A̲G̲S̲

   CASE      TRC ̲N ̲ATTR.HEADER.FLAGS   OF

         NOT ̲FOUND ?      RETR ̲RESP = NONE

         OFFLINE ̲RETR ̲OFF ?  RETR ̲RESP = OFFL ̲OFF

         OTHER ?   RETR ̲RESP = ERROR   SEND ̲GARBLE
          22


   END CASE


































              Figure 4.2.2.4.1.5-13
                  ANALYSE FLAGS


   O̲P̲E̲N̲ ̲C̲A̲T̲A̲L̲O̲G̲

   TRC ̲C ̲ATTR = TRC ̲N ̲ATTR

   TRC ̲C ̲QEL = TRC ̲N ̲QEL

   CASE  OPEN ̲VIEW (TRC ̲C ̲QEL)
                   (CC):

         ERROR ? -   ANALYSE ̲ERROR (CC, O)

          OK ?


   END CASE

   CATALOG ̲CIF ̲STATUS = TRUE

   INITIALIZE  CAT ̲ENTRY ̲FIELD ̲LIST

   CASE   READ ̲VIEW  (1, CAT ̲ENTRY ̲FIELD ̲LIST,
                     TRC ̲C ̲QEL, NO ̲OF ̲SYS ̲CAT)
                                                                 (CC):

          ERROR ? -  ANALYSE ̲ERROR  (CC, O)

          OK ?


   END CASE


     NO ̲OF ̲SYS ̲CAT is the number of system catalogues.














              Figure 4.2.2.4.1.5-14
                  OPEN CATALOG


     GET ̲CAT ̲CIF (CAT ̲ENTRY ̲SIZE: INTEGER,
                      CAT ̲ENTRY ̲FIELD ̲LIST: FIELD ̲LIST,
                      TRC ̲C ̲QEL: QEL ̲REFERENCE,
                      SYS ̲CAT ̲ENTRY ̲RECORD: BUFFER)
                     (  )

     G̲E̲T̲ ̲N̲E̲X̲T̲ ̲C̲A̲T̲A̲L̲O̲G̲  17

     I̲S̲S̲U̲E̲ ̲R̲E̲T̲R̲ ̲C̲A̲T̲ ̲E̲N̲T̲R̲Y̲  18

     WAIT RET RESP  12

     ANALYSE ̲RESP  13

     CASE     RETR ̲RESP OF

              OFFL ̲OFF ?

              ERROR ?

              ONE ?   SAR ̲RESP = TRUE

              NONE, CATALOG ?  COMP = FALSE


     END CASE

     NO ̲OF ̲SYS ̲CAT = NO ̲OF ̲SYS ̲CAT - 1

     NO ̲OF ̲SYS ̲CAT GT 0

     CATALOG ̲CIF ̲STATUS = FALSE

     DISMANTLE ̲REQUEST (TRC ̲C ̲QEL, VIEW)

     RETURN










              Figure 4.2.2.4.1.5-15
                 GET CATALOG CIF


   G̲E̲T̲ ̲N̲E̲X̲T̲ ̲C̲A̲T̲A̲L̲O̲G̲

   CASE   READ VIEW  (CAT ̲ENTRY ̲SIZE, CAT ̲ENTRY ̲FIELD
                     ̲LIST,
                     TRC ̲C ̲QEL, SYS ̲CAT ̲ENTRY ̲RECORD)
                     (CC):

          ERROR ?    ANALYSE ̲ERROR (CC,O)

          OK ?


   END CASE



































              Figure 4.2.2.4.1.5-16
                GET NEXT CATALOG


   I̲S̲S̲U̲E̲ ̲R̲E̲T̲R̲ ̲C̲A̲T̲ ̲E̲N̲T̲R̲Y̲

   RET ̲REC.TOC ̲1     = SYS ̲CAT ̲ENTRY ̲RECORD.TIME ̲STAMP
                     -1

   RET ̲REC.TOC ̲2     = SYS ̲CAT ̲ENTRY ̲RECORD.TIME ̲STAMP
                     +1

   RET ̲REC.ITEM ̲R         = SYS ̲CAT ̲ENTRY ̲RECORD.ITEM
                          ̲REF ̲ID

   RET ̲REC.RETR ̲ID        = RETR ̲LOG ̲CIF ̲ON ̲LOG ̲KEYS

     The rest of the parameters are preset during trace
     initialize.

   HANDLE ̲RETRIEVAL  (RETR ̲REC ̲SIZE, TRACE ̲CIF ̲Q ̲REF)
    9
































              Figure 4.2.2.4.1.5-17
          ISSUE RETRIEVAL CATALOG ENTRY



   R̲E̲A̲D̲ ̲A̲D̲M̲ ̲F̲I̲E̲L̲D̲

   CASE   OPEN VIEW  (TRC ̲N ̲QEL)
                     (CC):

          ERROR ?         ANALYSE ̲ERROR (CC, O)

          OK ?


   END CASE

   CASE   READ VIEW  (HEADER ̲WRITE ̲SIZE,
                     LOG ̲CIF ̲HEADER ̲FIELD,
                     TRC ̲N ̲QEL,
                     TRC ̲HEADER ̲BUF)
                     (CC):

          ERROR ?    ANALYSE ̲ERROR (CC, O)

          OK ?


   END CASE

   LOG ̲CIF ̲REC ̲NO = TRC ̲HEADER ̲BUF.NO ̲OF ̲LOG ̲RECORDS

     LOG ̲CIF ̲REC ̲NO is the number of log records in
   the LOG CIF  
     left to trace.

















              Figure 4.2.2.4.1.5-18
            READ ADMINISTRATIONFIELD


   R̲E̲T̲U̲R̲N̲ ̲C̲C̲

   CATALOG ̲CIF ̲STATUS EQ FALSE ?

   DISMANTLE ̲REQUEST   (TRC ̲C ̲QEL, VIEW)


   SAR ̲RESP EQ FALSE ?

   DISMANTLE ̲REQUEST   (TRC ̲N ̲QEL, VIEW)


   TRACE ̲REC ̲NO  EQ 1 AND TRACE ̲CIF ̲REC ̲NO  EQ  0 ?

   T̲E̲R̲M̲I̲N̲A̲T̲E̲ ̲T̲R̲A̲C̲E̲ ̲C̲I̲F̲   20


   T̲E̲R̲M̲I̲N̲A̲T̲E̲ ̲C̲O̲M̲M̲A̲N̲D̲   21





























              Figure 4.2.2.4.1.5-19
                    RETURN CC


         T̲E̲R̲M̲I̲N̲A̲T̲E̲ ̲T̲R̲A̲C̲E̲ ̲C̲I̲F̲

         TRACE ̲REC ̲NO EQ 1 ?

         CASE  WRITE ̲VIEW      (NO ̲OF ̲1SEC ̲REC, TRACE
                               ̲CIF ̲LIST,
                     TRACE ̲CIF ̲VIEW ̲REF,
                     TRC ̲STORE ̲BUF)
                     (CC):

               ERROR ?                                           ANALYSE
                                                                 ̲ERROR
                                                                 (CC,O)

               OK ?


         END CASE

         TRACE ̲CIF ̲REC ̲NO = TRACE ̲CIF ̲REC ̲NO+TRACE
         ̲REC ̲NO -1


         TERMINATE ̲CIF  (TRACE ̲CIF ̲REC ̲NO, TRACE ̲CIF
         ̲VIEW ̲REF)

         TRC ̲FLAG  EQ  ONLY ̲CIF ?

         TRC ̲FLAG = LAST ̲CIF


         SEND ̲TRACE ̲CIF  (TRC ̲FLAG, TRACE ̲CIF ̲VIEW
         ̲REF)

         DISMANTLE ̲REQUEST (TRAC ̲CIF ̲VIEW ̲REF, VIEW)

         LOOP

           QUEUE ̲COUNT EQ 0? - EXIT LOOP

           CASE  RECEIVE ̲FIRST ̲QEL(TRUE, REPLY ̲Q)

                                  (REPLY ̲QEL ̲ATTR,
                               REPLY ̲QEL,
                                                                 
                                                                 
                                                                 
                                                                 
                                                                 REPLY
                                                                 ̲SUBQ,
                                                                 CC)

             ERROR? - ANALYZE ̲ERROR (CC, 0)

             OK?

           END CASE

           DISMANTLE ̲REQUEST(REPLY ̲QEL, QEL)

         END LOOP
     FIG. 4.2.2.4.1.5-20…01…TERMINATE TRACE CIF


         T̲E̲R̲M̲I̲N̲A̲T̲E̲ ̲C̲O̲M̲M̲A̲N̲D̲

         CASE  READ ̲TIME       (F ̲TIME ̲TYPE)
                     (QEL ̲INFO.ACK ̲TIME, CC):

               ERROR ?                                           ANALYSE
                                                                 ̲ERROR
                                                                 (CC,
                                                                 0)

               OK ?


         END CASE

         QEL ̲INFO.SUPV ̲COMM = TRC ̲QEL ̲ATTR.HEADER.SUBTYPE

         SV ̲ANSW ̲PARAMS.INFORMATION = QEL ̲INFO

         SV ̲ANSW ̲PARAMS.HEADER.FLAGS = OK

         RETR ̲RESP  NE  ERROR  AND  COMP  NE  FALSE
         ?

         SV ̲ANSW ̲PARAMS.HEADER.FLAGS = NOT ̲OK


         CASE  SEND ̲REPLY      (SV ̲ANSW ̲PARAMS, NIL,
                               TRC ̲QEL)
                     (CC):

               ERROR ?                                           ANALYSE
                                                                 ̲ERROR
                                                                 (CC,
                                                                 0)

               OK ?


         END CASE

         DISMANTLE ̲REQUEST     (TRC ̲QEL, SINGLE ̲QEL)













              Figure 4.2.2.4.1.5-21
                TERMINAL COMMAND


         S̲E̲N̲D̲ ̲G̲A̲R̲B̲L̲E̲

         SEND ̲GARBLE  (CONTINUE, QERROR, TRC ̲QEL, TRC
         ̲ERR ̲INFO)











































              Figure 4.2.2.4.1.5-22
                   SEND GARBLE



4.2.2.4.2    T̲r̲a̲c̲e̲ ̲L̲o̲g̲ ̲C̲I̲F̲ ̲M̲o̲d̲u̲l̲e̲



4.2.2.4.2.1  F̲u̲n̲c̲t̲i̲o̲n̲a̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

         The Trace Log CIF Module implement all the CIF trace
         functions:

         -   create trace CIF for storage of traced log records

         -   trace log records in the specified log CIF until
             the log time given in the trace command is met,
             or until all log records in the log CIF are traced.

         -   store the accepted log records in the trace CIF

         -   send a trace CIF reference to TEP for log record
             printout.



4.2.2.4.2.2  M̲o̲d̲u̲l̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲

         The Trace Log CIF Module interface to the Trace Module:

TRACE ̲LOG ̲CIF    (TIME2: TIME ̲TYPE,
             TRC ̲N ̲QEL: QEL ̲REFERENCE,
             LOG ̲CIF ̲REC ̲NO: INTEGER,
             TRACE ̲CIF ̲REC ̲NO: INTEGER)
             (TRACE ̲CIF ̲REC ̲NO: INTEGER,
             TRACE ̲COMPLETE: BOOLEAN)



4.2.2.4.2.3  M̲o̲d̲u̲l̲e̲ ̲C̲o̲m̲p̲o̲n̲e̲n̲t̲s̲

SAVE RECORD  (TRC ̲STORE ̲BUF, TRC ̲TRACE ̲BUF,
             TRACE ̲REC ̲NO, TRACE ̲CIF ̲VIEW ̲REF,
             TRACE ̲CIF ̲FIELD ̲LIST)
             (STORE ̲REC ̲NO)

         The selected log record is stored temporarily in the
         TRC ̲STORE ̲BUF. When the buffer runs fall, its contens
         is stored in the present trace CIF.


4.2.2.4.2.4  D̲a̲t̲a̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

         VAR QUEUE ̲COUNT: INTEGER

             gives the number of trace CIFs queued
             for printout


         VAR REPLY ̲Q:              QUEUE ̲REFERENCE
         INIT    REPLY ̲Q. MAINQUEUE = TRACE ̲Q
         INIT    REPLY ̲Q. SUBQUEUE = REPLY ̲Q

         VAR REPLY ̲QEL ̲ATTR: QEL ̲ATTRIBUTES

         VAR REPLY ̲QEL: QEL ̲REFERENCE

         VAR REPLY ̲SUBQ: SUBQUEUE ̲INDEX

             Common subpackage data are described in
             section 4.2.2.5.


4.2.2.4.2.5  M̲o̲d̲u̲l̲e̲ ̲D̲e̲s̲i̲g̲n̲

             Each flowgram is described shortly in
             this section:

             1)  T̲r̲a̲c̲e̲ ̲L̲o̲g̲ ̲C̲I̲F̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.2.5-1

             The present log CIF is traced.

             -   Read CIF, read a part of the log CIF
                 into the trace buffer.

             -   Trace Log CIF Part, the log records
                 in the trace buffer is traced.

             2)  R̲e̲a̲d̲ ̲C̲I̲F̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.2.5-2

                 The next part of the log CIF is read
                 into the
                 TRC ̲TRACE ̲BUF.

             3)  T̲r̲a̲c̲e̲ ̲L̲o̲g̲ ̲C̲I̲F̲ ̲P̲a̲r̲t̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.2.5-3

                 The log records in the TRC ̲TRACE ̲BUF
                 are traced. If the late log time from
                 the trace command is exceeded by the
                 actual log time the trace action is
                 terminated.

                 -   Trace Log Record, a single log
                     record is traced. If the trace
                     CIF reaches the max value, it
                     will be terminated and sent for
                     print-out. 
                     A new trace CIF is then created,
                     and the trace
                     continues.



             4)  T̲r̲a̲c̲e̲ ̲L̲o̲g̲ ̲R̲e̲c̲o̲r̲d̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.2.5-4

             The log record pointed out by the TRACE
             ̲REC ̲NO is traced.
             The trace command type defines the action
             to be taken:

             If the trace command specify "trace all",
             the log record is put into the TRC ̲STORE
             ̲BUF.
             If log record type matches to the trace
             command type the DESIG is set to the proper
             value and a designator test is made.
             -   Save Record, accepted log records
                 are put into the TRC ̲STORE ̲BUF.

             5)-13)D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.2.4-5....13

             The same tasks are implemented for these
             flowgrams.
             The log record type is tested against
             a selected number of log record types.
             If a match is found the DESIG variable
             is set to the proper value. 

             14) S̲a̲v̲e̲ ̲R̲e̲c̲o̲r̲d̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.4.2.5-14

             The selected log record is stored in the
             TRC ̲STORE ̲BUF.
             When the buffer runs full, it is stored
             on the present trace CIF.



                      F̲l̲o̲w̲g̲r̲a̲m̲ ̲L̲i̲s̲t̲

         1)  Trace Next Log CIF
         2)  Read CIF
         3)  Trace Log CIF Part
         4)  Trace Log Record
         5)  Incoming Message
         6)  Outgoing Message
         7)  Channel Discontinuity
         8)  Terminal Procedure
         9)  Message Distribution
         10) Message Service
         11) Supervisor Transaction
         12) Security Procedure
         13) Specific Device
         14) Save Record


   TRACE ̲LOG ̲CIF (TIME2: TIME ̲TYPE,
                     TRC ̲N ̲QEL: QEL ̲REFERENCE,
                     LOG ̲CIF ̲REC ̲NO: INTEGER,
                     TRACE ̲CIF ̲REC ̲NO: INTEGER)
                     (TRACE ̲CIF ̲REC ̲NO: INTEGER,
                     TRACE ̲COMPLETE: BOOLEAN)

   LOOP

         LOG ̲CIF ̲REC ̲NO LE 0 ?   EXIT LOOP

         R̲E̲A̲D̲ ̲C̲I̲F̲  2

         TRACE ̲REC ̲NO = 1

         T̲R̲A̲C̲E̲ ̲L̲O̲G̲ ̲C̲I̲F̲ ̲P̲A̲R̲T̲  3

         TRACE ̲COMPLETE EQ TRUE ?  EXIT LOOP

   END LOOP

   DISMANTLE ̲REQUEST (TRC ̲N ̲QEL, VIEW)

   RETURN






















               TRACE NEXT LOG CIF
               Fig. 4.2.2.4.2.5-1


   R̲E̲A̲D̲ ̲C̲I̲F̲

   CASE   READ ̲VIEW  (NO ̲OF ̲2SEC ̲REC, LOG ̲CIF ̲LIST,
                     TRC ̲N ̲QEL,
                     TRC ̲TRACE ̲BUF) 
                     (CC):

          ERROR ?         ANALYSE ̲ERROR (CC, 0)

          OK ?


   END CASE



































              Figure 4.2.2.4.2.5-2
                    READ CIF



   T̲R̲A̲C̲E̲ ̲L̲O̲G̲ ̲C̲I̲F̲ ̲P̲A̲R̲T̲

   LOOP

     TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲TIME GE TIME ̲2
     ?
                                                                 GE
                                                                 
                                                                 TIME
                                                                 ̲2
                                                                 ?
                                                                 
                                                                 TRACE
                                                                 ̲COMPLETE
                                                                 =
                                                                 TRUE

     LOG ̲CIF ̲REC ̲NO = LOG ̲CIF ̲REC ̲NO ̲1

     LOG ̲CIF ̲REC ̲NO  LE  0 ?

     T̲R̲A̲C̲E̲ ̲L̲O̲G̲ ̲R̲E̲C̲O̲R̲D̲  4

     TRACE ̲CIF ̲REC ̲NO  LT  MAX ̲TRACE ̲CIF ̲REC ̲NO ?

     TERMINATE ̲CIF  (TRACE ̲CIF ̲REC ̲NO 1)(TRACE ̲CIF
     ̲VIEW ̲REF)

       TRC ̲FLAG is a completion flag sent to TEP in
     the queue 
       element

     TRC ̲FLAG EQ ONLY ̲CIF ?                                      
                                                                 
                                                                 TRC
                                                                 ̲FLAG
                                                                 =
                                                                 FIRST
                                                                 ̲CIF

     TRC ̲FLAG = INTERJACENT ̲CIF


     SEND ̲TRACE ̲CIF  (TRC ̲FLAG, TRACE ̲CIF ̲VIEW ̲REF)
     (  )

     DISMANTLE ̲REQUEST (TRACE ̲CIF ̲VIEW ̲REF, VIEW) 
      (  )

     CREATE ̲TRACE ̲CIF  (TRACE ̲CIF ̲ATTRIBUTES, TRACE
     ̲CIF ̲Q ̲REF)
                          (TRACE ̲CIF ̲VIEW ̲REF, CC)


     TRACE ̲REC ̲NO    = TRACE ̲REC ̲NO +1

     TRACE ̲REC ̲NO   EQ  MAX ̲TRACE ̲REC ̲NO ?

   END LOOP








              Figure 4.2.2.4.2.5-3
               TRACE LOG CIF PART


   T̲R̲A̲C̲E̲ ̲L̲O̲G̲ ̲R̲E̲C̲O̲R̲D̲

   DESIG = NONE

     DESIG is the terminal or devise designator

   CASE  TRACE ̲CMD ̲BUF.TRACE ̲TYPE

             TRACE ̲ALL ?                                             S̲A̲V̲E̲
                                                                     ̲R̲E̲C̲O̲R̲D̲
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     
                                                                     14

             TRACE ̲INCOMING ̲MSG ?     I̲N̲C̲O̲M̲I̲N̲G̲ ̲M̲S̲G̲
                                               5 

             TRACE ̲OUTGOING ̲MSG ?     O̲U̲T̲G̲O̲I̲N̲G̲ ̲M̲S̲G̲
                                      ̲         6

             TRACE ̲CH ̲DISCONTINUITY ? C̲H̲ ̲D̲I̲S̲C̲O̲N̲   
                                               7

             TRACE ̲TERMINAL ̲PROC ?    T̲E̲R̲M̲ ̲P̲R̲O̲C̲   
                                               8

             TRACE ̲MESSAGE ̲DIST ?     M̲E̲S̲S̲A̲G̲E̲ ̲D̲I̲S̲T̲
                                               9

             TRACE ̲MESSAGE ̲SERVICE ?  M̲E̲S̲S̲A̲G̲E̲ ̲S̲E̲R̲V̲I̲C̲E̲
                                           10

             TRACE ̲SUPV ̲TRACN ?       S̲U̲P̲V̲ ̲T̲R̲A̲N̲S̲  
                                              11

             TRACE ̲SECURITY ̲PROC ?    S̲E̲C̲U̲R̲I̲T̲Y̲ ̲P̲R̲O̲C̲
                                             12

             TRACE ̲SPECIFIC ̲DEVICE ?  S̲P̲E̲C̲I̲F̲I̲C̲ ̲D̲E̲V̲I̲C̲E̲
                                           13

             OTHER ?


   END CASE


   DESIG  EQ  NONE ?

   TRACE ̲CMD ̲BUF.CHAN ̲TERM ̲DESIGNATOR NE
             TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.DESIG ?

   SAVE ̲RECORD (TRC ̲STORE ̲BUF, STORE ̲REC ̲NO, TRC ̲TRACE
   ̲BUF,TRC ̲REC ̲NO,
                 TRACE ̲CIF ̲VIEW ̲REF, TRACE ̲CIF ̲FIELD
                 ̲LIST)
                 (STORE ̲REC ̲NO)  14


              Figure 4.2.2.4.2.5-4
                TRACE LOG RECORD


   I̲N̲C̲O̲M̲I̲N̲G̲ ̲M̲S̲G̲

   CASE  TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD ̲TYPE
     OF

          IN ̲VALID ̲LOG ?              DESIG = DESIGNATOR

          IN ̲INVALID ̲LOG ?            DESIG = DESIGNATOR

          OTHER ?


   END CASE



































              Figure 4.2.2.4.2.5-5
                INCOMING MESSAGE


   O̲U̲T̲G̲O̲I̲N̲G̲ ̲M̲S̲G̲

   CASE  TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD ̲TYPE
     OF

          OUT ̲VALID ̲LOG               DESIG = DESIGNATOR

          OTHER ?


   END CASE





































              Figure 4.2.2.4.2.5-6
                OUTGOING MESSAGE


   C̲H̲ ̲D̲I̲S̲C̲O̲N̲

   CASE  TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD ̲TYPE
     OF

          IN ̲DISC ̲LOG ?      DESIG = DESIGNATOR

          OTHER ?


   END CASE





































              Figure 4.2.2.4.2.5-7
              CHANNEL DISCONTINUITY


      T̲E̲R̲M̲ ̲P̲R̲O̲C̲

      CASE  TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD ̲TYPE
         OF

         INIT ̲A ̲C1 ̲G1 ̲G3 ̲M ?   DESIG = TERMINAL ̲DESIGNATOR

         FINAL ̲A ̲C1 ̲G1 ̲G3 ?    DISIG = TERMINAL ̲DESIGNATOR

         FINAL ̲M ?                                               DESIG
                                                                 =
                                                                 TERMINAL
                                                                 ̲DESIGNATOR

         INIT ̲O ̲H ?                                              DESIG
                                                                 =
                                                                 TERMINAL
                                                                 ̲DESIGNATOR

         FINAL ̲O ̲H ?           DESIG = TERMINAL ̲DESIGNATOR

         FINAL ̲B ̲E1 ̲E2 ̲G2 ?    DESIG = TERMINAL ̲DESIGNATOR

         FINAL ̲D ̲F ?           DESIG = TERMINAL ̲DESIGNATOR

         FINAL ̲P1 ?                                              DESIG
                                                                 =
                                                                 TERMINAL
                                                                 ̲DESIGNATOR

         FINAL ̲P2 ?                                              DESIG
                                                                 =
                                                                 TERMINAL
                                                                 ̲DESIGNATOR

         FINAL ̲N ̲Q ̲R ?                                           DESIG
                                                                 =
                                                                 TERMINAL
                                                                 ̲DESIGNATOR

         INIT DUMMY ?                                            DESIG
                                                                 =
                                                                 TERMINAL
                                                                 ̲DESIGNATOR

         OTHER ?


      END CASE

















              Figure 4.2.2.4.2.5-8
               TERMINAL PROCEDURE


      M̲E̲S̲S̲A̲G̲E̲ ̲D̲I̲S̲T̲

      CASE   TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD
             ̲TYPE    OF

         FINAL ̲MDCO ?          DESIG = TERMINAL ̲DESIGNATOR

         OTHER ?


      END CASE





































              Figure 4.2.2.4.2.5-9
              MESSAGE DISTRIBUTION


      M̲E̲S̲S̲A̲G̲E̲ ̲S̲E̲R̲V̲I̲C̲E̲

      CASE   TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD
             ̲TYPE    OF

         FINAL ̲MSO ?           DESIG = TERMINAL ̲DESIGNATOR

         OTHER ?


      END CASE





































              Figure 4.2.2.4.2.5-10
                 MESSAGE SERVICE



      S̲U̲P̲V̲ ̲T̲R̲A̲N̲S̲

      CASE   TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD
             ̲TYPE   OF

         FINAL ̲SUPV ?          DESIG = TERMINAL ̲DESIGNATOR

         OTHER ?


      END CASE





































              Figure 4.2.2.4.2.5-11
             SUPERVISOR TRANSACTION


      S̲E̲C̲U̲R̲I̲T̲Y̲ ̲P̲R̲O̲C̲

      CASE   TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD
             ̲TYPE   OF

         FINAL ̲K1 ̲I1 ?         DESIG = TERMINAL ̲DESIGNATOR

         FINAL ̲K2 ?            DESIG = TERMINAL ̲DESIGNATOR

         FINAL ̲I2 ?            DESIG = TERMINAL ̲DESIGNATOR

         OTHER ?


      END CASE

































              Figure 4.2.2.4.2.5-12
               SECURITY PROCEDURE


      S̲P̲E̲C̲I̲F̲I̲C̲ ̲D̲E̲V̲I̲C̲E̲

      CASE   TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO.LOG ̲RECORD
             ̲TYPE   OF

         OCR ̲LOG ?             DESIG = DEVICE ̲DESIGNATOR

         OUT ̲VALID ̲PTP ̲LOG ?   DESIG = DEVICE ̲DESIGNATOR

         OTHER ?


      END CASE



































              Figure 4.2.2.4.2.5-13
                 SPECIFIC DEVICE


         S̲A̲V̲E̲ ̲R̲E̲C̲O̲R̲D̲ (TRC ̲STORE ̲BUF: BUFFER, STORE
                     ̲REC ̲NO: INTEGER,
                  TRC ̲TRACE ̲BUF: BUFFER, TRACE ̲REC
                 ̲NO: INTEGER,
                  TRACE ̲CIF ̲VIEW ̲REF: QEL ̲REFERENCE,
                  TRACE ̲CIF ̲FIELD ̲LIST: FIELD ̲LIST)
                               (STORE ̲REC ̲NO: INTEGER)

         TRC ̲STORE ̲BUF.STORE ̲REC ̲NO =
             TRC ̲TRACE ̲BUF.TRACE ̲REC ̲NO

         STORE ̲REC ̲NO = STORE ̲REC ̲NO +1
         STORE ̲REC ̲NO  LT  MAX ̲STORE ̲REC ̲NO ?

         CASE  WRITE ̲VIEW      (NO ̲OF ̲1SEC ̲REC, TRACE
                               ̲CIF ̲FIELD ̲LIST,
                     TRACE ̲CIF ̲VIEW ̲REF,
                     TRC ̲STORE ̲BUF)
                     (CC):

               ERROR ?                                           ANALYSE
                                                                 ̲ERROR
                                                                 (CC,O)

               OK ?


         END CASE

         STORE ̲REC ̲NO = 1


         TRACE ̲CIF ̲REC ̲NO = TRACE ̲CIF ̲REC ̲NO + 1


         RETURN
















              Figure 4.2.2.4.2.5-14
                   SAVE RECORD


4.2.2.5  C̲o̲m̲m̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲D̲a̲t̲a̲



         E̲x̲t̲e̲r̲n̲a̲l̲ ̲D̲a̲t̲a̲

         VAR     START ̲UP ̲TYPE   INTEGER
                 The start up type, given by SSC, indicates
                 the start up action.
         VAR     START ̲UP ̲CC     COMPLETION ̲CODE
         VAR     CLOSE ̲DOWN      BOOLEAN
                 indicating close down action

         L̲o̲c̲a̲l̲ ̲D̲a̲t̲a̲

         VAR     CATALOG ̲CIF ̲STATUS  : BOOLEAN
         VAR     CATALOG ̲CIF ̲ATTR  : QEL ̲ATTRIBUTES
         VAR     RETRIEVAL ̲MAX
                  ̲SEARCH ̲TIME      : TIME ̲TYPE
         VAR     CAT ̲VIEW ̲REF      : QEL ̲REF ̲TYPE
         VAR     NO ̲OF ̲SYS ̲CAT     : INTEGER
                 Is the number of catalogue entries (log CIFs)
                 in the given time span
         VAR     RETR ̲RESP         : (ERROR, OFFL ̲OFF,                
                                                                      
                                                                      ONE,NONE,
                                                                      CATALOG)
                 The retrieval response indicates if one/none
                 log CIF is available, if the off line disk
                 is off, if a catalogue entry is available (several
                 log CIFs)
         VAR     RETR ̲REC          : RETR ̲REC ̲TYPE
         VAR     RETR ̲REC ̲SIZE     : ARRAY (1..SAR ̲REC ̲SIZE)
                                                                     
                                                                     
                                                                     OF
                                                                     BYTES
         VAR     RETR ̲BUF          : BUFFER ̲REFERENCE
         VAR     TRC ̲SUB           : INTEGER
         VAR     TRC ̲N ̲ATTR        : QEL ̲ATTRIBUTES
         VAR     TRC ̲N ̲QEL         : QEL ̲REFERENCE
         VAR     TRC ̲C ̲QEL         : QEL ̲REFERENCE

         VAR     TRC ̲TRACE ̲BUF     : TRC ̲TRACE ̲BUF ̲TYPE
         VAR     TRC ̲STORE ̲BUF     : TRC ̲STORE ̲BUF ̲TYPE
         VAR     LOG ̲TRACE ̲COMMAND : LOG ̲TRACE ̲COMMAND ̲TYPE
         VAR     LOG ̲BUF ̲SIZE      : LOG ̲BUF ̲SIZE ̲TYPE
         VAR     TIME ̲1            : TIME ̲TYPE
                 TIME 1 is the early log time
         VAR     TIME ̲2            : TIME ̲TYPE
                 TIME 2 is the late log time
         VAR     TIME ̲3            : TIME ̲TYPE
                 TIME 3 is time 2 plus the max log CIF time
                 interval


         VAR     TRACE ̲CIF ̲RECORD ̲NO: INTEGER
         VAR     TRC ̲FLAG          : TRC ̲FLAG ̲TYPE
         VAR     TRC ̲Q             : QUEUE ̲REFERENCE
         VAR     TRC ̲QEL ̲ATTR      : QEL ̲ATTRIBUTES
         VAR     TRC ̲SUBQ          : SUBQUEUE ̲INDEX
         VAR     CC                : COMPLETION ̲CODE
         VAR     TRC ̲QEL           : QEL ̲REFERENCE
         VAR     TRACE ̲CIF ̲
                 ATTRIBUTES        : VIEW ̲ATTRIBUTES
                 Initialized with attributes of TRACE ̲CIF

         VAR     TRACE ̲CIF ̲Q ̲REF   : QUEUE ̲REFERENCE
         INIT    TRACE ̲CIF ̲Q ̲REF.MAINQUEUE:TRACE ̲COMM ̲Q
         INIT    TRACE ̲CIF ̲Q ̲REF.SUBQUEUE : 0

         VAR     TRACE ̲CIF ̲VIEW ̲REF: VIEW ̲REFERENCET
         VAR     TRACE ̲CIF ̲FIELD ̲LIST: FIELD ̲LIST
         VAR     TRACIF ̲WRITE ̲SIZE : INTEGER
                 Initialized to size of TRACE ̲DATA ̲BUF

         VAR     TRACE ̲CIF ̲HEADER  : TRACE ̲CIF ̲ADM ̲FIELD
                 Initialize classification, special 
                 handling and exercise to UNCLASSIFIED, 
                 NO SPECIAL HANDLING, EXERCISE = 0,

         VAR     TRACE ̲CIF ̲HEADER ̲FIELD ̲LIST: FIELD LIST
         VAR     HEADER ̲WRITE ̲SIZE :INTEGER
                 Initialized to TRACE ̲CIF ̲HEADER

         VAR     TIME ̲SP           : INTEGER
         VAR     REC ̲IN ̲CIF        : INTEGER
         VAR     SAR ̲PARAMS        : PARAMS
         INIT    SAR ̲PARAMS.INFORMATION ̲TYPE: FALSE
         INIT    SAR ̲PARAMS.CHECKP ̲STATUS   : FALSE
         INIT    SAR ̲PARAMS.HEADER.MAINTYPE : RETRIEVAL ̲REQUEST
         INIT    SAR ̲PARAMS.HEADER.SUBTYPE  :                       LOG
                                                                    ̲CIF
                                                                    ̲RETRIEVAL
                                                                    ̲REQUEST
                                                                    ̲FROM
                                                                    ̲LOG
         INIT    SAR ̲PARAMS.HEADER.FLAGS    : 0

         VAR     TRACE ̲CMD ̲BUF     : LOG ̲TRACE ̲COMMAND ̲TYPE
         VAR     SAR ̲RESP          : BOOLEAN
         VAR     RET ̲REC           : ORIGINATOR ̲RETRIEVAL ̲            
                                                                      
                                                                      RECORD


         VAR     SAR ̲Q ̲REF         : QUEUE ̲REFERENCE
         INIT    SAR ̲Q ̲REF.MAINQUEUE                : RRQ
         INIT    SAR ̲Q ̲REF.SUBQUEUE                 : SUB ̲Q
                                                    ̲0
         VAR     ANSW ̲TRC ̲Q        : QUEUE ̲REFERENCE
         INIT    ANSW ̲TRC ̲Q.MAINQUEUE: SAR ̲RESP ̲Q
         INIT    ANSW ̲TRC ̲Q.SUBQUEUE                : 0
         VAR     NO ̲OF ̲2SEC ̲REC    : NO ̲OF ̲2SEC ̲REC ̲TYPE
         VAR     NO ̲OF ̲4SEC ̲REC    : NO ̲OF ̲1SEC ̲REC ̲TYPE
         VAR     TRP ̲PRT ̲PARAMS    : SEND ̲PARAMS
         INIT    TEP ̲PRT ̲PARAMS.HEADER.MAINTYPE     : LOG ̲CIF
         INIT    TEP ̲PRT ̲PARAMS.HEADER.SUBTYPE      : ALL ̲LOG
                                                    ̲TRACE  
                                                      SUBTYPES
         INIT    TEP ̲PRT ̲PARAMS.CHECKP ̲STATUS       : FALSE
         INIT    TEP ̲PRT ̲PARAMS.INFORMATION ̲TYPE: FALSE

         VAR     TEP ̲SUPV ̲PRT ̲Q    : QUEUE ̲  
                                                      REFERENCE
         INIT    TEP ̲SUPV ̲PRT ̲Q.MAINQUEUE           : SPIP ̲SUPQ
         INIT    TEP ̲SUPV ̲PRT ̲Q.SUBQUEUE            : 6

         VAR     SU ̲ANSW ̲PARAMS    : SEND ̲PARAMS
         INIT    SU ̲ANSW ̲PARAMS.HEADER.MAINTYPE :   ACKNOWLEDGE
         INIT    SU ̲ANSW ̲PARAMS.HEADER.SUBTYPE      : LOG ̲TRACE
                                                    ̲ACK
         INIT    SU ̲ANSW ̲PARAMS.CHECKP ̲STATUS       : FALSE
         INIT    SU ̲ANSW ̲INFORMATION ̲TYPE           : TRUE

         VAR     QEL ̲INFO                           : QEL ̲INFO
                                                    ̲TYPE              VAR  COMP
                                                                             :
                                                                             BOOLEAN




         TYPE    QEL ̲INFO ̲TYPE =
             RECORD
                 SUPV ̲COMM : SUPERVISOR ̲LOG ̲COMMAND
                 ACK ̲TIME  : TIME ̲STAMP
             END;


         TYPE    LOG ̲TRACE ̲COMMAND ̲TYPE = 
             RECORD
                 TRACE ̲TYPE     : TRACE ̲RECORD ̲TYPE;
                 EARLY ̲LOG ̲TIME : TIME ̲TYPE;
                 LATE ̲LOG ̲TIME  : TIME ̲TYPE;
                 CHAN ̲TERM ̲DESIGNATOR:DESIGNATOR ̲TYPE
             END;


         TYPE    LOG ̲CIF ̲ADM ̲FIELD  ̲
             RECORD
                 NO ̲OF ̲LOG ̲RECORDS : COUNTER ̲TYPE;
                              ITEM ̲REF: ITEM ̲REF ̲ID
                            ̲TYPE;
                      CLASSIFIC ̲CAT: CLASSIFICATION
                 ̲TYPE;
                            SPEC ̲HAND : SPEC ̲HAND ̲TYPE;
                        EXERC ̲INDIC: EXERCISE ̲INDICATOR
                     ̲TYPE
             END;


         TYPE    TRC ̲TRACE ̲BUF ̲TYPE = ARRAY (1..NO
                 ̲OF ̲2SEC ̲REC) OF
                                                                 LOG
                                                                 ̲RECORD

         TYPE    TRC ̲STORE ̲BUF ̲TYPE = ARRAY (1..NO
                 ̲OF ̲1SEC ̲REC) OF
                                                                 LOG
                                                                 ̲RECORD

         TYPE    TRC ̲FLAG ̲TYPE = (FIRST ̲CIF, INTERJACENT
                 ̲CIF, LAST CIF,
                                                                 
                                                                 
                                                                 
                                                                 
                                                                 ONLY
                                                                 CIF)


         TYPE TRACE ̲RECORD ̲TYPE=                  (TRACE
                                                  ̲ALL,
                                                  TRACE
                                                  ̲INCOMING
                                                  ̲MSG,
                                                  TRACE
                                                  ̲OUTGOING
                                                  ̲MSG,
                                                  TRACE
                                                  ̲CH
                                                  ̲DISCONTINUITY,
                                                  TRACE
                                                  ̲TERMINAL
                                                  ̲PROC,
                                                  TRACE
                                                  ̲MESSAGE
                                                  ̲SERVICE,
                                                  TRACE
                                                  ̲SUPV
                                                  ̲TRANS,
                                                  TRACE
                                                  ̲SECURITY
                                                  ̲PROC,
                                                  TRACE
                                                  ̲SPECIFIC
                                                  ̲DEVICE)



         TYPE    OBJECT ̲TYPE = (VIEW, BUFFER, TIME
                 OUT, SINGLE ̲QEL)


         TYPE  SYS ̲CAT ̲ENTRY ̲RECORD =
             RECORD
                 ITEM ̲TYPE  : INTEGER;
                 TIME ̲STAMP : TIME ̲STAMP ̲TYPE;
                 ITEM ̲REF ̲ID: ITEM ̲REF ̲ID ̲TYPE;
                 ORIGINATOR : ORIGINATOR ̲TYPE;
                 DTG                                             
                                                                 
                                                                 
                                                                 :
                                                                 TIME
                                                                 ̲TYPE;
                 SIC ̲1                                           
                                                                 
                                                                 
                                                                 :
                                                                 SIC
                                                                 ̲TYPE;
                 SIC ̲2                                           
                                                                 
                                                                 
                                                                 :
                                                                 SIC
                                                                 ̲TYPE;
                 SIC ̲3                                           
                                                                 
                                                                 
                                                                 :
                                                                 SIC
                                                                 ̲TYPE
             END;


         TYPE  RETR ̲REC ̲TYPE =
             RECORD
                 RETR ̲ID : RETR ̲IDENT;
                 TOC ̲1   : TOC1;
                 TOC ̲2   : TOC2;
                 CLAS ̲CAT: CLASSIFIC ̲CAT;
                 EX ̲IND  : EXERC ̲INDIC;
                 RETR ̲DTG    : DTG;
                 PLA ̲REF     : PLA ̲REF ̲NO;
                 ITEM ̲R                                          
                                                                 
                                                                 
                                                                 
                                                                 :
                                                                 ITEM
                                                                 ̲REF;
                 REQ ̲SCD     : REQUESTOR ̲SCD;
                 SIC ̲S       : SICS
             END;


             C̲o̲n̲s̲t̲a̲n̲t̲ ̲D̲e̲f̲i̲n̲i̲t̲i̲o̲n̲

             TIM ̲SP = 600

             NO ̲OF ̲2SEC ̲REC          =                           1024
                                                                 BYTE
             NO ̲OF ̲1SEC ̲REC  =        512 BYTE
             LOG ̲RECORD              =                           
                                                                 
                                                                 52
                                                                 BYTE
             CMD ̲BUF ̲SIZE    =         24 BYTE


4.2.2.6  C̲o̲m̲m̲o̲n̲ ̲S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲s̲



4.2.2.6.1    C̲r̲e̲a̲t̲e̲ ̲T̲r̲a̲c̲e̲ ̲C̲I̲F̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

             C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

             CREATE ̲TRACE ̲CIF        (TRACE ̲CIF ̲ATTRIBUTES,
                                     TRACE ̲CIF ̲Q ̲REF)
                                     (TRACE ̲CIF ̲VIEW
                                     ̲REF, CC)

             1)  C̲r̲e̲a̲t̲e̲ ̲T̲r̲a̲c̲e̲ ̲C̲i̲f̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.6.1-1

                 The next trace CIF, used to store
                 traced and accepted log records for
                 print-out, is created and made ready
                 for use.



4.2.2.6.2    T̲e̲r̲m̲i̲n̲a̲t̲e̲ ̲C̲I̲F̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

             C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

             TERMINATE ̲CIF(TRACE ̲CIF ̲REC ̲NO,
                               TRACE ̲CIF ̲VIEW ̲REF)

             1)  T̲e̲r̲m̲i̲n̲a̲t̲e̲ ̲C̲I̲F̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ ̲-̲ ̲Refer fig. 4.2.2.6.2-1

                 The present trace CIF is terminated.
                 The trace CIF administration field
                 is filled out.



4.2.2.6.3    S̲e̲n̲d̲ ̲T̲r̲a̲c̲e̲ ̲C̲I̲F̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

             C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

             SEND ̲TRACE ̲CIF (TRC ̲FLAG, TRACE ̲CIF ̲VIEW
             ̲REF)(  )

             1)  S̲e̲n̲d̲ ̲T̲r̲a̲c̲e̲ ̲C̲I̲F
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer fig. 4.2.2.6.3-1
                 and 4.2.2.6.3-2

                 The present trace CIF is sent to the
                 supervisor print queue.


4.2.2.6.4    D̲i̲s̲m̲a̲n̲t̲l̲e̲ ̲R̲e̲q̲u̲e̲s̲t̲ ̲P̲r̲o̲c̲e̲d̲u̲r̲e̲

             This procedure dismantles the wanted object
             referenced by the QEL ̲REFERENCE.

             Input parameters are QEL ̲REFERENCE and
             OBJECT

             C̲a̲l̲l̲ ̲S̲p̲e̲c̲i̲f̲i̲c̲a̲t̲i̲o̲n̲

             DISMANTLE ̲REQUEST       (QEL ̲REF: QEL
                                     ̲REFERENCE)
                                     OBJECT: OBJECT
                                     ̲TYPE)

             F̲l̲o̲w̲c̲h̲a̲r̲t̲ ̲D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲

             1)  D̲i̲s̲m̲a̲n̲t̲l̲e̲ ̲R̲e̲q̲u̲e̲s̲t̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer Figure 4.2.2.6.4-1

                 This procedure dismantles the object
                 referenced by the QEL ̲REF. Input parameters
                 are QEL ̲REF and OBJECT.

             2)  D̲i̲s̲m̲a̲n̲t̲l̲e̲ ̲V̲i̲e̲w̲
                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer to fig. 4.2.2.6.4-2

                 The log CIF view is closed and dismantled.

             3)  D̲i̲s̲m̲a̲n̲t̲l̲e̲ ̲B̲u̲f̲f̲e̲r̲

                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer to fig. 4.2.2.6.4-3

                 The log record buffer is dismantled.

             4)  D̲i̲s̲m̲a̲n̲t̲l̲e̲ ̲Q̲E̲L̲

                 D̲e̲s̲c̲r̲i̲p̲t̲i̲o̲n̲ - Refer to fig. 4.2.2.6.4-4

                 The actual queue element is dismantled.…86…1
                         …02…   …02…   …02…   …02…                
                                                
         CREATE ̲TRACE ̲CIF (TRACE ̲CIF ̲ATTRIBUTES: TRACE
         ̲CIF ̲ATTRIBUTES,
                           TRACE ̲CIF ̲Q ̲REF: QUEUE ̲REFERENCE)
                          (TRACE ̲CIF ̲VIEW ̲REF: QEL
                     ̲REFERENCE,
                           CC : COMPLETION ̲CODE)

         CASE  CREATE ̲CIF (TRACE ̲CIF ̲ATTRIBUTES,
                          TRACE ̲CIF ̲Q ̲REF)
                          (TRACE ̲CIF ̲VIEW ̲REF, CC):

                  ERROR ?   ANALYSE ̲ERROR (CC, 0)

                  OK ?


         END CASE

         INITIALIZE TRACE ̲CIF ̲FIELD ̲LIST

         TRACE ̲CIF ̲REC ̲NO = 0

             initialize the number of log records

         CASE     OPEN ̲VIEW  (TRACE ̲CIF ̲VIEW ̲REF)
                              (CC):

                  ERROR ?      ANALYSE ̲ERROR (CC, O)

                  OK ?


         END CASE

         RETURN





               Figure 4.2.2.6.1.1
                CREATE TRACE CIF


         TERMINATE ̲CIF (TRACE ̲CIF ̲REC ̲NO:           INTEGER,
                   TRACE ̲CIF ̲VIEW ̲REF: QEL ̲REFERENCE)

         TRACE ̲CIF ̲HEADER.NO ̲OF ̲LOG ̲RECORDS = TRACE
         ̲CIF ̲REC ̲NO

         TRACE ̲CIF ̲HEADER.ITEM ̲REF = TRACE ̲CIF ̲ATTRIBUTES.NAME.
                                                    
                                                    
                                                    
                                                    
                                                    
                                                    CIF
                                                    ̲ID.LEAST

             other parameters always loaded

         LOAD TRACE ̲CIF ̲HEADER ̲FIELD ̲LIST

         CASE    WRITE ̲VIEW      (HEADER ̲WRITE ̲SIZE,
                                 TRACE ̲CIF ̲HEADER ̲FIELD
                                 ̲LIST,
                                 TRACE ̲CIF ̲VIEW ̲REF,
                                 TRACE ̲CIF ̲HEADER)
                                 (CC):

             ERROR?                                 ANALYZE
                                                    ̲ERROR
                                                    (CC,
                                                    O)

             OK ?

         END CASE

         RETURN



















FIG. 4.2.2.6.2-1…01…TERMINATE CIF…86…1…02…  …02… …02…   …02…   …02…   …02…   …02…           …02…                  …02…
            
         SEND ̲TRACE ̲CIF          (TRC ̲FLAG: INTEGER,
                                                    TRACE
                                                    ̲CIF
                                                    ̲VIEW
                                                    ̲REF:
                                                    QEL
                                                    ̲REFERENCE,
                                                    QUEUE
                                                    ̲COUNT):      INTEGER)
                                                    (QUEUE
                                                    ̲COUNT:       INTEGER)

         R̲E̲C̲E̲I̲V̲E̲ ̲F̲I̲R̲S̲T̲

         QUEUE ̲COUNT LT 2?

         CASE RECEIVE ̲FIRST ̲QEL (TRUE, REPLY ̲Q)
                                                    
                                                    
                                                                 
                                                                 
                                                                 (REPLY
                                                                 ̲QEL
                                                                 ̲ATTR,
                                                                 REPLY
                                                                 ̲QEL,
                                                    
                                                    
                                                    
                                                                 
                                                                 
                                                                 
                                                                 REPLY
                                                                 ̲SUBQ,
                                                                 CC)


                 ERROR? - ANALYZE ̲ERROR (CC, O)

                 OK?


         END CASE

         DISMANTLE ̲REQUEST (REPLY ̲QEL, QEL)(  )

         QUEUE ̲COUNT = QUEUE ̲COUNT-1


         CASE SEND QEL (TEP ̲PRT ̲PARAMS, TRACE ̲CIF ̲NEW
         ̲REF,
                                   TEP ̲SUPV ̲PRT ̲Q)
                                   (CC)

                 ERROR? - ANALYZE ̲ERROR (CC, O)

                 OK?


         END CASE

         QUEUE ̲COUNT = QUEUE ̲COUNT + 1

         RETURN

         FIG. 4.2.2.6.3-1…01…SEND TRACE CIF


   R̲E̲C̲E̲I̲V̲E̲ ̲F̲I̲R̲S̲T̲

   TEP ̲PRT ̲PARAMS.HEADER.FLAGS = TRC ̲FLAG

   LOOP

         QUEUE ̲COUNT EQ O? - EXIT LOOP

         QUEUE EMPTY?                               
                                                    
                                                    EXIT
                                                    LOOP

         CASE RECEIVE ̲FIRST ̲QEL (FALSE, REPLY ̲Q)

                                      (REPLY ̲QEL ̲ATTR,
                                 REPLY ̲QEL,
                                       REPLY ̲SUBQ,
                                 CC)

             ERROR? -            ANALYZE ̲ERROR (CC,
                                 O)

             OK?

         END CASE

         DISMANTLE ̲REQUEST (REPLY ̲QEL, QEL)(  )

         QUEUE ̲COUNT = QUEUE ̲COUNT - 1

   END LOOP




















         FIG. 4.2.2.6.3-2…01…RECEIVE FIRST


   DISMANTLE REQUEST (QEL ̲REF:   QEL ̲REFERENCE,
                                 OBJECT:            OBJECT
                                                    ̲TYPE)

   CASE OBJECT OF

           VIEW                                     D̲I̲S̲M̲A̲N̲T̲L̲E̲
                                                    ̲V̲I̲E̲W̲
                                                    2

           BUFFER?                                               D̲I̲S̲M̲A̲N̲T̲L̲E̲
                                                                 ̲B̲U̲F̲F̲E̲R̲
                                                                 3

           TIMEOUT, SINGLE?      D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲Q̲E̲L̲ 4


   END CASE

































       FIG. 4.2.2.6.4-1…01…DISMANTLE REQUEST


   D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲V̲I̲E̲W̲

   CASE CLOSE ̲VIEW (QEL ̲REF)
                     (CC):


           ERROR?                ANALYZE ̲ERROR (CC,
                                 O)

           OK?

   END CASE

   CASE DISMANTLE ̲VIEW (QEL ̲REF
                                 (CC):

           ERROR?                ANALYZE ̲ERROR (CC,
                                 O)

           OK?


   END CASE
























         FIG. 4.2.2.6.4-2…01…DISMANTLE VIEW


   D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲B̲U̲F̲F̲E̲R̲

   CASE DISMANTLE ̲BUFFER (COLL ̲QEL)
                                  (CC):

           ERROR?      ANALYZE ̲ERROR (CC, O)

           OK?



   END CASE


































        FIG. 4.2.2.6.4-3…01…DISMANTLE BUFFER


   D̲I̲S̲M̲A̲N̲T̲L̲E̲ ̲Q̲E̲L̲

   CASE DISMANTLE ̲QEL            (COLL ̲QEL)
                                 (CC) :

           ERROR?                ANALYZE ̲ERROR (CC,
                                 O)

           OK?



   END CASE

































         FIG. 4.2.2.6.4-4…01…DISMANTLE QEL


4.2.2.7  S̲u̲b̲p̲a̲c̲k̲a̲g̲e̲ ̲I̲n̲t̲e̲r̲f̲a̲c̲e̲



4.2.2.7.1    C̲l̲o̲s̲e̲ ̲D̲o̲w̲n̲ ̲F̲l̲a̲g̲

         When a close down command is received by the
         log collect subpackage the close down flag
         is set to true. The close down flag is reset
         during start up. The flag is used by both
         subpackages to identify a close down action
         in progress.


4.3      M̲e̲m̲o̲r̲y̲ ̲L̲a̲y̲ ̲O̲u̲t̲



         Program Area:

                                 Collect              500  Words


                                 Trace                800  Words




         Data Area:

                                 Collect              500  Words

                                 Trace                800  Words




         Control Area:

                                 Collect              100  Words
                                 Control


                                 Process             1000  Words
                                 Control




         The max. used online mirrored disk area are:

         -   128 K words for one busy hour

         -   640 K words for 24 hours.

         The max. used online disk area are:

         -   24 M words for 30 days.