Google
 

Trailing-Edge - PDP-10 Archives - -
There are no other files named in the archive.
mit            User
            --------  ----  -----  ------------------------
            * GRAPH     17    100  OPERATOR
                On Unit:0  /Seq#:3320
                Started at 10:47, plotted 25 of 100 units
              MF20      19    200  P.TAYLOR
                /Unit:0  /Seq#:3341
              MF21      27    590  P.TAYLOR
                /Unit:0  /Seq#:3349
              MF22      31    300  P.TAYLOR
                /Unit:0  /Seq#:3355

            There are 4 jobs in the Queue (1 in Progress)

            OPR>

        2.  Give the SHOW QUEUES PLOTTER-JOBS  command  with  the  /SHORT
            switch.

            OPR>SHOW QUEUES PLOTTER-JOBS /SHORT<RET>
            OPR>
            10:49:07            -- System Queues Listing --

            Plotter Queue:
            * GRAPH     17    100  OPERATOR
              MF20      19    200  P.TAYLOR
              MF21      27    590  P.TAYLOR
              MF22      31    300  P.TAYLOR

            OPR>


















                                    2-49
                            BATCH SOFTWARE TASKS


   2.11.2  Holding Output Device Jobs

   Whenever you need to prevent output jobs from  being  processed,  give
   the   HOLD  device-JOBS  command,  where  device  can  be  CARD-PUNCH,
   PAPER-TAPE-PUNCH, or PLOTTER.  When you  give  this  command,  current
   jobs  in  the  queue  are held.  Any output jobs queued after the HOLD
   command has been issued are not held and are processed when the device
   becomes  available.   You  must specify one of the following with this
   command:

        1.  The request-id number, which holds a single output job

        2.  The user name, which holds all output  jobs  queued  by  that
            user

        3.  An asterisk (*), which holds all output jobs  queued  by  all
            users



                             ----- Hints -----

   You cannot HOLD an output job that is currently active  on  an  output
   device.



                            ----- Example -----

   Give the HOLD CARD-PUNCH-JOBS command to hold all card punch  requests
   for user BROWN.

        OPR>HOLD CARD-PUNCH-JOBS BROWN<RET>
        OPR>
        9:01:54        --3 Jobs Held--
        OPR>



   2.11.3  Releasing Output Device Jobs

   You can give the RELEASE command to release an  output  job  that  has
   been  previously held with the HOLD command.  You can specify a single
   request-id number, the user name for all jobs  by  that  user,  or  an
   asterisk  (*)  for all output jobs in the system.  The RELEASE command
   reschedules the job(s) to be processed.


                              ----- Hint -----

   You must have one or more output devices started or in the idle  state
   to get an output job processed.


                            ----- Example -----

   Give the RELEASE command to  reschedule  all  output  jobs  that  were
   previously held.

        OPR>RELEASE CARD-PUNCH-JOBS *<RET>
        OPR>
        10:38:09        --3 Jobs Released--
        OPR>



                                    2-50
                            BATCH SOFTWARE TASKS


   2.11.4  Canceling Output Device Jobs

   At various times, you might have to cancel an output job while  it  is
   processing  on  a  device.   You  can  give the ABORT command with the
   output unit number and one or more of the following switches:

        1.  /REQUEST-ID:

        2.  /PURGE

        3.  /REASON:

   The /REQUEST-ID:  switch uniquely identifies the job to be canceled.

   The /PURGE switch flushes the entire job from the system  when  it  is
   canceled.   There are no header, banner, or trailer pages printed when
   the output request is purged.

   The /REASON:  switch allows you to enter one or more lines of text  to
   explain why the output job was canceled.

                            ----- Example -----

   Give the ABORT command to cancel an output  job  because  a  user  had
   requested that you do so.

        OPR>ABORT PLOTTER 0 /REASON:USER REQUEST<RET>
        OPR>
        11:40:09        PLOTTER 0  --ABORTING--
                        JOB TEST01 Req #35 for JONES
                        REASON:USER REQUEST
        OPR>
        11:40:21        Plotter 0  --End--
                        Job TEST01 Req #35 for JONES
        OPR>



   2.11.5  Requeuing Output Device Jobs

   At various times, you might want to cancel  an  output  job  currently
   being  processed  and  at the same time, reschedule the same job to be
   processed at a later time.  You can give the REQUEUE command  to  HOLD
   the output job in its entirety and ABORT its current output.

   For example, you might want to REQUEUE an  output  job  that  requires
   more  forms  (cards,  paper  tape,  or  plotter  paper)  then  what is
   currently available at your site.  Thus, you REQUEUE the  job  in  its
   entirety for output to be processed when the forms become available.

   You can specify the /REASON:  switch to explain why the job  is  being
   requeued.














                                    2-51
                            BATCH SOFTWARE TASKS


                            ----- Example -----

   Give the REQUEUE command  to  hold  and  cancel  an  output  job  that
   requires four hours to punch.

        OPR>REQUEUE CARD-PUNCH 0 /REASON:<RET>
        Enter text and terminate with ^Z
        JOB REQUIRES FOUR HOURS TO PUNCH.<RET>
        JOB WILL BE RELEASED FOR PUNCH ON 2ND SHIFT. ^Z
                                                      !
                                                   <CTRL/Z>
        OPR>
        13:21:03        CARD-PUNCH 0  --REQUEUED--
                        JOB ARFORM Req #47 for AR.OFFICE
                        Reason:JOB REQUIRES FOUR HOURS TO PUNCH.
                        JOB WILL BE RELEASED FOR PUNCH ON 2ND SHIFT.^Z
        OPR>
        13:21:25        Card-punch 0  --End--
                        Job ARFORM Req #47 for AR.OFFICE
        OPR>



   2.11.6  Modifying Output Device Requests

   Whenever you need to change the priority of an output job  request  in
   the queue, give the MODIFY device-REQUEST command, where device can be
   CARD-PUNCH, PAPER-TAPE-PUNCH, or PLOTTER.  You can  specify  a  single
   output request-id number, the user name for all requests by that user,
   or an asterisk (*) for all output requests in the queue.

   You must specify a new PRIORITY number from 1 to 63.  The  higher  the
   number, the greater the priority.



                            ----- Example -----

   Give the MODIFY command to change the priority of batch request 135 to
   have  a  priority  of  63.  This causes the request to be the next job
   processed.

        OPR>MODIFY PAPER-TAPE-PUNCH 135 PRIORITY 63<RET>
        OPR>
        8:51:21        --1 Job Modified--
        OPR>




















                                    2-52
                            BATCH SOFTWARE TASKS


   2.11.7  Deleting Output Device Requests

   Whenever you need to delete an output request from the  output  queue,
   give   the   CANCEL   device-REQUEST  command,  where  device  can  be
   CARD-PUNCH, PAPER-TAPE-PUNCH, or PLOTTER.  You can  specify  a  single
   request-id  number,  the  user  name  for all jobs by that user, or an
   asterisk (*) for all output requests in the system.

   If you CANCEL an output request that is active on an output unit,  the
   output job is immediately deleted from the output unit.



                            ----- Example -----

   Give the CANCEL command to cancel output request  186  from  the  card
   punch output queue.

        OPR>CANCEL CARD-PUNCH 186<RET>
        OPR>
        10:25:11        --1 Job Canceled--
        OPR>



   2.11.8  Scheduling the Next Output Device Request

   You can force an output queue to schedule a particular request  to  be
   processed  immediately  by  using  the NEXT command with BATCH-STREAM,
   CARD-PUNCH, PAPER-TAPE-PUNCH, PLOTTER or PRINTER as the keyword.  This
   command  starts  the  job  immediately  after  the  current request is
   finished.  The NEXT command does  not  alter  the  sequence  of  other
   requests in the queue.



                            ----- Example -----

   Give the NEXT command to make request 230 the next job to  be  printed
   on printer 0.

   OPR>NEXT PRINTER 0 REQUEST-ID 230
   OPR>
    8:53:37                 Printer 0  -- NEXT request #230 scheduled --
   OPR>





















                                    2-53




































































                                    3-1











                                 CHAPTER 3

                         UNSCHEDULED SOFTWARE TASKS



   This chapter  describes  various  tasks  that  you  can  perform  when
   requested  or  needed.   Therefore,  these  tasks  are  considered  as
   unscheduled software tasks.  If any of these tasks are performed on  a
   regular  basis  at  your installation, decide upon a schedule for them
   with your System Manager.



   3.1  CONTROLLING THE SCHEDULER

   As the operator of the TOPS-20 operating system, you may be instructed
   by  your  System  Manager  to  change  the scheduling scheme that your
   system is currently using.  The following  sub-sections  describe  the
   ways of temporarily changing the various scheduling schemes.



   3.1.1  Changing Class Scheduling

   If your system is using class scheduling, you  may  override  whatever
   has  been  set in the n-CONFIG.CMD file for a specific class by giving
   the following OPR command:

        OPR>SET SCHEDULER CLASS n nn<RET>

   The first argument specifies the class number and the second  argument
   specifies  the  percentage  of  CPU  time  given  to  that class.  The
   percentage  of  CPU  time  allocated  cannot  exceed  100%.   Whatever
   percentage  of  CPU  time  is not allocated becomes part of the system
   windfall.  (Refer to the  TOPS-20  System  Manager's  Guide  for  more
   information on class scheduling.)



   3.1.1.1  Changing a Job's Scheduling Class - If your system has  class
   scheduling  controlled  by  a  policy  program, you may change a job's
   scheduling class by giving the following OPR command:

        OPR>SET JOB n SCHEDULER-CLASS y<RET>

   The first argument specifies the job number and  the  second  argument
   specifies  the  class you want the job to run in.  When you issue this
   command, it temporarily places the job in the specified class.

                            ----- Example -----

   Change job 24 to run in scheduler class 3.

        OPR>SET JOB 24 SCHEDULER-CLASS 3<RET>


                                    3-1
                         UNSCHEDULED SOFTWARE TASKS


   3.1.2  Changing Batch-Class Scheduling

   If your System Manager has specified a special  class  for  all  batch
   jobs,  you  may  change the class number or the percentage of CPU time
   allocated in  the  n-CONFIG.CMD  file  by  giving  the  following  OPR
   command:

        OPR>SET SCHEDULER BATCH-CLASS n<RET>

   The argument can be either a class number, the word BACKGROUND, or the
   word  NONE.   If  you enter a class number, the percentage of CPU time
   specified in the n-CONFIG.CMD file for that class  will  be  given  to
   batch  jobs.   For  example,  if you change the batch class to a class
   that has been set up with 50% of the CPU time,  then  batch  jobs  for
   that  class  receive 50% of the CPU time.  If this is the case and you
   do not want batch jobs to have that percentage of CPU time, you should
   first give the SET SCHEDULER CLASS command to change the percentage of
   CPU time for that class, and then give the SET  SCHEDULER  BATCH-CLASS
   command.

   You can  change  the  percentage  of  CPU  time  for  the  batch-class
   specified  in  the  n-CONFIG.CMD file by giving the BACKGROUND or NONE
   argument.  When you give the BACKGROUND argument, batch jobs for  that
   class  receive  the percentage of CPU time that has not been allocated
   to the other classes.  When you give the NONE argument, batch jobs for
   that  class  receive  no  CPU  time.   (Refer  to  the  TOPS-20 System
   Manager's Guide for more information on batch class scheduling.)



   3.1.3  Changing Bias-Control Scheduling

   If your system is using  bias-control  scheduling,  you  may  override
   whatever has been set in the n-CONFIG.CMD file by giving the following
   OPR command:

        OPR>SET SCHEDULER BIAS-CONTROL n<RET>

   The argument is a integer from 1 to 20.  To allocate  higher  priority
   to  interactive jobs, you would set n in a range between 1 to 10, with
   1  being  the  highest  priority.   To  allocate  higher  priority  to
   compute-bound jobs, you would set n to be in a range between 11 to 20,
   with 20 being the highest priority.

                                    NOTE

           Remember these commands only  temporarily  change  the
           scheduling  scheme.  If the system has to be restarted
           for any reason, the scheduling scheme reverts to  what
           has been set up in the n-CONFIG.CMD file.




































                                    3-2
                         UNSCHEDULED SOFTWARE TASKS


   3.1.4  Displaying Scheduler Status

   At any time, you can display the status of the scheduler by giving the
   following OPR command:

        OPR>SHOW SCHEDULER<RET>

   When  you  issue  this  command  the  system  prints   the   following
   information:


         o  The class scheduling status


         o  The bias-control setting


         o  The batch class


         o  The class number


         o  The percentage of CPU time allocated to each class


         o  The percentage of CPU time being used by each class


         o  The load averages for each class


         o  The windfall allocation status


         o  The accounting  mechanism  (by  accounts  or  by  the  policy
            program)

   Refer to the TOPS-20 System Manager's Guide for  more  information  on
   scheduling.


                            ----- Example -----

   OPR>SHOW SCHEDULER<RET>
   OPR>
   11:29:00               -- System Scheduler Information --

                  Class Scheduler: On              Bias Control: 11
                                                   Batch Class: 1

                                               ------Load Averages------

                  CLASS     SHARE(%)   USE(%)  1-MIN     5-MIN     15-MIN
                    0         80        73      5.19      4.31      4.07
                    1         15        27      9.80      5.23      3.29
                    2          5         0      0.00      0.00      0.00

                  Windfall: Allocated            Classes by Account

   OPR>



   3.2  SETTING DEVICES ON-LINE

   If you have a DX20 channel controller installed and  on-line  at  your
   installation,  you  can  bring one of the devices listed below on-line
   with OPR after the device has been newly installed at your site.  This
   function  allows the system to accept the hardware address of a device
   that is not known to the monitor but is available for use.  You do not
   need to reload the TOPS-20 monitor.














                                    3-3
                         UNSCHEDULED SOFTWARE TASKS


   The devices that are interfaced through the DX20 are:

        1.  TX01 - tape controller

        2.  TX03 - channel selector

        3.  TX05 - tape drive selector

        4.  TU70 - tape drive

        5.  TU71 - tape drive

        6.  TU72 - tape drive

        7.  RP20 - disk drive

   In addition, when your DIGITAL Field Service Representative takes  one
   of  these  devices  off-line for repair of a hardware problem and then
   returns the device back to you for your control, you can give the  OPR
   command:

        SET ONLINE channel,unit,controller number<RET>

   to cause the system to recognize the device as on-line and  ready  for
   use  by  the system.  The address (ch,unit,cntrlr) separated by commas
   is:

        1.  Channel number (ch)

        2.  Device unit number (unit)

        3.  Controller number (cntrlr)

   The controller number can be  omitted  if  the  device  is  interfaced
   directly to the channel bus.



                              ----- Hint -----

   If the TOPS-20 monitor is reloaded, such as after a system crash,  you
   do  not  need  to  set  the  device  on-line  again.   The  device  is
   automatically recognized by the monitor as being on-line.



                            ----- Examples -----

        1.  Set the TX05  hardware  device  on-line  after  it  has  been
            installed   during  timesharing.   Specify  the  argument  of
            channel 1, unit 1, controller 1.

            OPR>SET ONLINE 1,1,1<RET>
            OPR>
            8:32:13        --Set Online Accepted--
            OPR>

        2.  Set the hardware device  on-line  after  your  DIGITAL  Field
            Service Representative has repaired the tape unit.

            OPR>SET ONLINE 1,2,1<RET>
            OPR>
            14:43:09        --Set Online Accepted--
            OPR>


                                    3-4
                         UNSCHEDULED SOFTWARE TASKS


   3.3  CONTROLLING THE ORION LOG BUFFER FILE

   ORION maintains  a  log  of  all  messages  sent  through  it.   ORION
   timestamps  and  identifies  the  type  of  message  and  provides any
   additional information available.  This function of ORION is  referred
   to as a Centralized Logging Facility.

   The ORION log buffer  file  contains  all  OPR-to-ORION  commands  and
   transactions  performed  at  the operator's console.  The OPR commands
   that control this logging facility are:

        1.  ENABLE LOGGING

        2.  DISABLE LOGGING

        3.  CLOSE LOG

   If your installation has TOPS-20 DECnet  software,  only  the  central
   site operator can issue any of the above OPR commands.

   The Centralized Logging Facility is on by default at  system  startup,
   but  can  be  disabled  by  placing the DISABLE LOGGING command in the
   SYSTEM.CMD file or by giving this command at OPR command level.

   To enable the Centralized Logging  Facility  again,  give  the  ENABLE
   LOGGING  command  at  OPR  command  level or place this command in the
   SYSTEM.CMD file.

   The  CLOSE  LOG  command  closes  the  current  log  buffer  file  and
   automatically  creates  a  new  log  buffer  file.  When the CLOSE LOG
   command is issued, the commands and transactions recorded in  the  log
   buffer  file  are  copied  to the ORION-SYSTEM.LOG file and the buffer
   file is cleared.  You can then print the ORION-SYSTEM.LOG file on  the
   line  printer to obtain a hard copy of all the operating processes for
   a given time period.

   The name of the log file is  determined  by  your  System  Manager  at
   GALGEN  time.   (Refer  to the TOPS-20 Software Installation Guide for
   the GALGEN procedures.) The default name is ORION-SYSTEM-LOG.nnn.



                            ----- Examples -----

        1.  Disable the logging facility for a period of  time  when  the
            system is operating stand-alone.

            OPR>DISABLE LOGGING<RET>
            OPR>
            8:52:12        --ORION Logging Disabled by JOB 6 OPERATOR
                              at terminal 14--
            OPR>

        2.  Close the current log buffer file and automatically create  a
            new log buffer file.

            OPR>CLOSE LOG<RET>

            OPR>







                                    3-5
                         UNSCHEDULED SOFTWARE TASKS


   3.4  INITIALIZING TAPES

   At various times, you are asked to initialize and/or  re-initialize  a
   magnetic tape.  When you initialize a tape, the system writes specific
   information on the tape pertaining to the identification of the  tape.
   When  you  initialize  a  tape  specifying  a TOPS-20, ANSI, or EBCDIC
   standard label, the system writes the  following  information  on  the
   tape:

        1.  A  standard   volume   label   that   contains   the   volume
            identification (volid) of the tape.

        2.  Standard header and trailer labels.  Later, when  a  file  is
            written   on   the   tape,   these  labels  contain  specific
            information pertaining to the file.

   When you initialize a tape as unlabeled, the system writes a record of
   80  null  characters  followed  by  two  tapemarks  on the tape.  This
   prevents the tape from running off the end of  the  reel  when  MOUNTR
   inspects it for a volume label.

   To initialize one or more tapes, give the following OPR command:

        OPR>SET TAPE-DRIVE MTAn:  INITIALIZE /switch:,/switch:,...<RET>

        where "n" is the unit number of the tape drive.

   The  following  table  describes  the  valid  switches  for  the   SET
   INITIALIZE command:


   Table 3-1:  SET INITIALIZE Switches


         Switch                                Meaning


     /COUNT:nn                      specifies the number (nn) of  tapes
                                    to  be  initialized.   This  switch
                                    allows you to  initialize  multiple
                                    tapes  with  the  same  attributes.
                                    Every time you initialize  a  tape,
                                    the  system  asks  you  to  type  a
                                    volume   identifier.    When    the
                                    initialization process is complete,
                                    the system unloads  the  tape  from
                                    the   drive.   When  the  specified
                                    number   of   tapes    have    been
                                    initialized,  you  can use the tape
                                    drive   to   satisfy   user   mount
                                    requests.

     /DENSITY:nnnn                  specifies  the   density   of   the
                                    tape(s)   being  initialized.   The
                                    "nnnn" can be 200, 556, 800,  1600,
                                    or  6250.   If you do not give this
                                    switch,  the   system   uses   1600
                                    bits/in as the default.








                                    3-6
                         UNSCHEDULED SOFTWARE TASKS


   Table 3-1:  SET INITIALIZE Switches (Cont.)


         Switch                                Meaning


     /INCREMENT:nn                  specifies the  numeric  value  (nn)
                                    that   is  used  to  increment  the
                                    volume identifiers.  This switch is
                                    valid  only when specified with the
                                    /VOLUME-ID switch.  If you  do  not
                                    give this switch, the system uses 1
                                    as the default.

     /LABEL-TYPE:type               specifies  the  type  of   standard
                                    volume  label  to be written on the
                                    tape.  The "type" can  be  TOPS-20,
                                    ANSI, EBCDIC, or UNLABELED.  If you
                                    do not specify a  label  type,  the
                                    system uses TOPS-20 as the default.

   /OVERRIDE-EXPIRATION:(YES or NO) specifies  whether  to  ignore  the
                                    expiration  date of the data on the
                                    tape.   If  you  specify  NO,   the
                                    system   does   not  allow  you  to
                                    initialize a tape whose  expiration
                                    date  has  not  yet  expired.  (The
                                    expiration  date  of  the  tape  is
                                    defined  as  the expiration date of
                                    the first file on the tape.) If you
                                    specify YES, the system initializes
                                    the tape  even  if  the  expiration
                                    date  has  not  been reached.  When
                                    you are initializing new tapes, you
                                    should   always   specify   YES  to
                                    prevent the tape from running away.
                                    If you do not give this switch, the
                                    system uses NO as the default.

     /OWNER:name                    specifies the name of the owner  of
                                    the   tape(s)   being  initialized.
                                    This switch is valid  only  if  the
                                    label  type  is TOPS-20.  If you do
                                    not give this switch, the  tape  is
                                    initialized as a scratch tape.

     /PROTECTION:nnnnnn             specifies a six-digit octal  number
                                    as the protection code of the tape.
                                    The number  (nnnnnn)  can  be  from
                                    000000 (no one except the owner can
                                    use  the   tape)   through   777777
                                    (anyone  can  use  the tape).  This
                                    switch is valid only if  the  label
                                    type  is  TOPS-20.   If  you do not
                                    give this switch, the  system  uses
                                    the  protection  code  of 777777 as
                                    the default.









                                    3-7
                         UNSCHEDULED SOFTWARE TASKS


   Table 3-1:  SET INITIALIZE Switches (Cont.)


         Switch                                Meaning


     /TAPE-DISPOSITION:condition    specifies what is to be  done  with
                                    the   tape   after   it   has  been
                                    initialized.  The  "condition"  can
                                    be  either  HOLD or UNLOAD.  If you
                                    specify  HOLD,  the  tape   remains
                                    mounted  on  the  drive  after   it
                                    has  been  initialized.    If   you
                                    specify   UNLOAD,   the   tape   is
                                    unloaded from the  drive  after  it
                                    has  been initialized.  If you give
                                    the /COUNT:  switch  with  a  value
                                    greater       than      1,      the
                                    /TAPE-DISPOSITION  is  ignored  and
                                    UNLOAD  is assumed.  If this switch
                                    is  not  given,  the  system   uses
                                    UNLOAD as the default.

     /VOLUME-ID:volid               specifies the volume identifier for
                                    the  tape.  The  volid  can be from
                                    1 to 6  characters.   If  the volid
                                    contains  non-alphanumeric  charac-
                                    ters, you  must enclose  the  volid
                                    in double quotes (").


   When you use a tape drive for initializing tapes, the  tape  drive  is
   not  available  for  user  mount  requests.   When  the initialization
   process is completed, the tape drive automatically  becomes  available
   for user mount requests.  To force a tape drive out of initialize mode
   prematurely, refer to Part VI Section 3.5.7.

                            ----- Examples -----

        1.  A user (J.JONES) has requested a tape mount of an  ANSI  tape
            with  a volid of FOOBAR and has requested that you initialize
            the tape first.  The volume is initialized with  ANSI  labels
            and  a volid of FOOBAR.  The system default for density (1600
            BPI) is used.  When the tape is mounted  on  the  drive,  the
            tape  is  initialized  and the drive becomes available to the
|           user (/TAPE-DISPOSITION:HOLD).  Automatic Volume  Recognition
|           (AVR  - See Section 3.5.2) takes over and satisfies the mount
            request for FOOBAR.


















                                    3-8
                         UNSCHEDULED SOFTWARE TASKS


            OPR>
            12:11:34                       --Tape Mount Request # 31--
                            Mount ANSI volume FOOBAR, 9-track, 1600 BPI, WRITE-ENABLED
                            User J.JONES, Job 39, Terminal 13
                            User remarks: PLEASE INITIALIZE TAPE FIRST
            OPR>SET TAPE-DRIVE MTA3: INITIALIZE /LABEL-TYPE:ANSI-<RET>
            /TAPE-DISPOSITION:HOLD/VOLUME-ID:FOOBAR<RET>
            OPR>
            12:12:01          --Mount Tape To Be Initialized--
                             Mount tape volume FOOBAR for initialization on MTA3:
            OPR>

            When the initializing is completed,  the  system  issues  the
            following message:

            12:13:14        --MTA3: Volume FOOBAR Initialized--
                            Label Type: ANSI        Density:       1600
            OPR>
            12:13:19          --INITIALIZE Completed--
                            MTA3: available for user tape requests
            OPR>
            12:13:30          --MTA3: Volume FOOBAR, ANSI labeled tape mounted--
            OPR>
            12:13:33          --Tape Drive Given To Request 31--
                            MTA3: Volume FOOBAR now in use by
                            User J.JONES, Job 39, Terminal 13
            OPR>

        2.  You initialize multiple tapes on the same drive with  numeric
            volume  identifications.   This  sets  up the drive MTA0:  to
            initialize all tapes mounted on it with  volume-ids  starting
            at  100000  and incremented by one for each tape mounted.  As
            each  tape  is  mounted,  you  are  informed  of  the  volume
            information.

            OPR>SET TAPE-DRIVE MTA0: INITIALIZE /COUNT:10/OWNER:OPERATOR-<RET>
            /VOLUME-ID:100000<RET>
            OPR>
            13:20:05          --Mount Tape To Be Initialized--
                            Mount tape volume 100000 for initialization on MTA0:
            OPR>
            13:21:10          --MTA0: Volume 100000 Initialized--
                            Label type: TOPS-20      Density:        1600
                            Owner:  OPERATOR        Protection:     777777
            OPR>
            13:21:35          --Mount Tape To Be Initialized--
                            Mount tape volume 100001 for initialization on MTA0:
            OPR>
            13:23:01          --MTA0: Volume 100001 Initialized--
                            Label type: TOPS-20      Density:        1600
                            Owner:  OPERATOR        Protection:     777777
            OPR>
                       .
                       .
                       .
            13:40:23          --MTA0: Volume 100009 Initialized--
                            Label Type: TOPS-20      Density:        1600
                            Owner:  OPERATOR        Protection:     777777
            OPR>







                                    3-9
                         UNSCHEDULED SOFTWARE TASKS


            After you initialized the number of tapes, release  the  tape
            drive so that it can be used for user MOUNT requests.

            OPR>SET TAPE-DRIVE MTA0 AVAILABLE<RET>
            OPR>
            13:47:37          --INITIALIZE Complete--
                            MTA0: available for user tape requests
            OPR>

        3.  You initialize two tapes with non-numeric labels.

            OPR>SET TAPE-DRIVE MTA1: INITIALIZE /COUNT:2/DENSITY:800-<RET>
            /LABEL-TYPE:ANSI/PROTECTION:770077/VOLUME-ID:PAYMAS<RET>
            OPR>
            15:07:47          --Mount Tape To Be Initialized--
                            Mount tape volume PAYMAS for initialization on MTA1:
            OPR>
            15:09:43          --MTA1: Volume PAYMAS Initialized--
                            Label type:ANSI         Density: 800
            OPR>
            15:10:12  <18>    --Key In Volume Identifier--
                            What is the volume-id of the next tape to be
                            initialized on drive MTA1:
                              RESPOND n volid
            OPR>RESPOND 18 PAYMA1<RET>
            OPR>
            15:10:56          --Mount Tape To Be Initialized--
                            Mount Tape volume PAYMA1 for initialization on MTA1:
            OPR>
            15:13:34          --MTA1: Volume PAYMA1 Initialized--
                            Label type: ANSI        Density: 800
            OPR>
            15:14:27          --INITIALIZE Complete--
                            MTA1: available for user tape requests
            OPR>




   3.5  HANDLING USER MOUNT REQUESTS

   There are two types of tapes you may be requested to  mount:   labeled
   tapes  and unlabeled tapes.  The differences in handling the two types
   of tape requests are explained in the  following  sections.   If  your
   system  has tape drive allocation enabled, the user must issue a MOUNT
   command to request that a tape be mounted.  When the  system  receives
   this request, OPR prints the following message:

        hh:mm:ss       -- TAPE MOUNT REQUEST#nn--
                     MOUNTlabel-typeVOLUMEvolid,n-track,nnnnBPI,mode
                     USER:username,JOBnn,TERMINALnn
                     VOLUMES IN SET setname:volid1,volid2,...
                     USER REMARK: text













                                    3-10
                         UNSCHEDULED SOFTWARE TASKS


   where:

        hh:mm:ss       specifies  the  time  the  operator  received  the
                       message.

        REQUEST#nn     specifies the request number assigned to the mount
                       request.

        label-type     specifies    the    type    of    label,    either
                       TOPS-20,ANSI,EBCDIC, or UNLABELED.

        VOLUME volid   specifies the internal and/or external name of the
                       tape.

        n-track        specifies the channel structure of the tape, i.e.,
                       9-track.

        nnnnBPI        specifies  the  density  at  which  the  data  was
                       recorded  on  the  tape.   The valid densities are
                       200,556,800,1600, and 6250.  If the user does  not
                       specify  a  density,  the  system uses 1600 as the
                       default.

        mode           specifies whether the  tape  is  write-enabled  or
                       read-only.

        username       specifies the name of  the  user  who  issued  the
                       MOUNT command.

        JOBnn          specifies the job number  the  user  was  assigned
                       when he logged onto the system.

        TERMINALnn     specifies the line number  of  the  terminal  from
                       which the user issued the MOUNT request.

    setname:volid1,    specifies  the  name  the  user  assigned   to   a
                       multi-volume  tape  set and the volume identifiers
                       for  each  tape  in  the  set.   This  information
                       appears  only  if  the  user  has requested that a
                       multi-volume tape set be mounted.

    USER'S REMARK:text specifies any remarks the user gave with the MOUNT
                       command.   This  information  appears  only if the
                       user gave a remark with the MOUNT command.

   If tape drive allocation is not enabled, the  user  issues  an  ASSIGN
   command  to  assign a tape drive to his job.  In this case, you do not
   receive a mount request message on the terminal running OPR.


















                                    3-11
                         UNSCHEDULED SOFTWARE TASKS


   3.5.1  Displaying Tape Drive Status

   If you need to find out the status of one or all of the tape drives on
   your system, give the following OPR command:

        OPR>SHOW STATUS TAPE-DRIVE MTAn:  or /switch<RET>

   The switches for this command are:

    Switch                                       Meaning

     /ALL                    displays the status of all the  tape  drives
                             on  the  system.   This  switch  causes  the
                             system to print the following information:

                              o  The  unit  number  of  the  tape   drive
                                 (MTAn:)

                              o  The current state of the tape drive  (In
                                 Use, Loaded, or Unloaded)

                              o  The volid of the tape on the drive

                              o  The  request  number  assigned  to   the
                                 request

                              o  The job number assigned to the user

                              o  The name of the user who  has  the  tape
                                 mounted

                              o  The  status  of   AVR   on   the   drive
                                 (Yes=enabled or No=disabled)

                              o  The mode of the tape  (WRITE-ENABLED  or
                                 read-only)

                              o  The label-type  of  the  tape  (TOPS-20,
                                 ANSI, EBCDIC, or Unlabeled)

                              o  The  density  at  which  the  data   was
                                 written on the tape

                             /FREE displays  the  tape  drives  that  are
                             available  to  you for mounting tapes.  This
                             switch displays, for all  available  drives,
                             the same information as the /ALL switch.  In
                             addition, you are told  if  the  tape  is  a
                             scratch tape.

   /CHARACTERISTICS          displays the following information:

                              o  The physical unit number  of  the  tape,
                                 for example, MTA0:

                              o  The type of drive (9-track or 7-track)

                              o  The densities the drive supports








                                    3-12
                         UNSCHEDULED SOFTWARE TASKS


   If you do not give a physical device or one the  above  switches,  the
   display you see is similar to the following

                 OPR>
                 10:19:51     --Tape Drive Status--
                 DRIVE   STATE        VOLID     REQ#   JOB#   USER
                 -----   -----        -----     ----   ----   ----
                 MTA0:   In Use       DIST      145    8      LATTA
                 MTA1:   In Use       DBL01     148    8      LATTA
                 MTA3:   In Use       KEVINM    164    56     MCELMOYLE
                 MTA4:   Unloaded
                 MTA5:   Unloaded



                            ----- Examples -----

        1.  Give the SHOW STATUS TAPE-DRIVE command for tape drive MTA0:.

                 OPR>SHOW STATUS TAPE-DRIVE MTA0:<RET>
                 OPR>
                 12:26:45    --Tape Drive Status--
                 DRIVE   STATE        VOLID     REQ#   JOB#   USER
                 -----   -----        -----     ----   ----   ----
                 MTA0:   In Use       RICK2     212     56    R.ACE

            This example illustrates that drive MTA0:  is being  used  by
            user  R.ACE.  If the STATE of the drive had been "Loaded", it
            would mean that there is a tape on the drive,  but  that  the
            tape  was not being used at the time.  If this were the case,
            there would not be a number under the heading REQ#.   If  the
            STATE  of  the drive had been "Unloaded", it would mean there
            is no tape on the drive and the drive could be used to  mount
            a tape.

        2.  Give the SHOW STATUS TAPE DRIVE command with the /ALL switch.

                 OPR>SHOW STATUS TAPE-DRIVE/ALL<RET>
                 OPR>
                 11:20:02    --Tape Drive Status--
                 DRIVE   STATE        VOLID     REQ#   JOB#   USER
                 -----   -----        -----     ----   ----   ----
                 MTA0:   Unloaded
                         AVR: Yes
                 MTA1:   In Use       A         100    10     R.ACE
                         AVR: YES, WRITE:  YES, TOPS-20 labels, 1600 BPI
                 MTA2:   Unloaded
                         AVR: Yes
                 MTA3:   Unloaded
                         AVR: Yes
                 MTA4:   Unloaded
                         AVR: No
                 MTA5:   Loaded
                         AVR: Yes, Write:  Yes, Unlabeled
                 OPR>











                                    3-13
                         UNSCHEDULED SOFTWARE TASKS


        3.  Give the SHOW  STATUS  TAPE  DRIVE  command  with  the  /FREE
            switch.

                 OPR>SHOW STATUS TAPE-DRIVE /FREE<RET>
                 OPR>
                 11:18:56    --Tape Drive Status--
                 DRIVE   STATE    AVR  WRITE  VOLID   SCR  LBL TYPE  DENSITY
                 -----   -----    ---  -----  -----   ---  --------  -------
                 MTA0:   Unloaded Yes
                 MTA2:   Unloaded Yes
                 MTA3:   Unloaded Yes
                 MTA4:   Unloaded No
                 MTA5:   Loaded   Yes  Yes            No   Unlabeled
                 OPR>

        4.  Give  the  SHOW  STATUS   TAPE   DRIVE   command   with   the
            /CHARACTERISTICS switch.

                 OPR>SHOW STATUS TAPE-DRIVE /CHARACTERISTICS<RET>
                 OPR>
                 11:20:39    --Tape Drive Status--
                 DRIVE  TYPE     SUPPORTED DENSITIES
                 -----  ----     -------------------
                 MTA0:  9-TRACK  800, 1600
                 MTA1:  9-TRACK  800, 1600
                 MTA2:  9-TRACK  1600, 6250
                 MTA3:  9-TRACK  1600, 6250
                 MTA4:  7-TRACK  200, 556, 800
                 MTA5:  9-TRACK  800, 1600
                 OPR>




   3.5.2  Controlling Automatic Volume Recognition (AVR)

   Automatic Volume Recognition (referred to as AVR) allows you to  mount
   a labeled tape without telling the system the volume identification of
   the tape.  When you mount a labeled tape  on  a  drive  that  has  AVR
   enabled, the system automatically reads the volume identifier from the
   volume label when the tape drive is brought on-line.

   If tape drive allocation is being used on  your  system,  then  it  is
   likely  that  AVR  has been enabled in the n-CONFIG.CMD file.  If, for
   some reason, you need to disable AVR for one or all tape drives,  give
   the following OPR command:

        OPR>DISABLE AUTOMATIC-VOLUME-RECOGNITION argument<RET>

        where the argument can be:

             MTAn:  (for a specific tape drive)
              or
             TAPE-DRIVES (for all tape drives)

   One reason for disabling AVR on a tape drive is to avoid runaway tapes
   when  you  are initializing tapes.  When you disable AVR, OPR does not
   print any message confirming that AVR has been disabled.  To check the
   status  of the tape drive, give the OPR command SHOW STATUS TAPE-DRIVE
   /ALL.






                                    3-14
                         UNSCHEDULED SOFTWARE TASKS


   You can enable AVR for one or more of the tape drives on  your  system
   by giving the following OPR command:

        OPR>ENABLE AUTOMATIC-VOLUME-RECOGNITION argument<RET>



                          ----- Restriction -----

                  You cannot ENABLE  or  DISABLE  AVR  for
                  7-track  tape drives.  If you attempt to
                  do  so,  the  system  will  ignore   the
                  command.   All  tapes mounted on 7-track
                  tape drives are  regarded  as  unlabeled
                  tapes.



                            ----- Example -----

            Disable AVR for tape drive 0.

                OPR>DISABLE AUTOMATIC-VOLUME-RECOGNITION MTA0:<RET>



   3.5.3  Mounting Labeled Tapes with AVR Enabled

   When a user issues a MOUNT command for a labeled tape, you  receive  a
   message similar to the following:

        OPR>
        10:15:43        --Tape Mount Request # 12--
                      Mount Volume 001234, Read-Only
                      User HOVSEPIAN, Job 25,Terminal 2

   If the user has not already given you the tape, the  first  thing  you
   must  do  is physically locate the tape he requested.  When you locate
   the tape, mount the tape on a drive that supports the density the user
   requested in the MOUNT command.  When the tape is brought on-line, the
   system automatically reads the label and prints a message  similar  to
   the following on your terminal:

        OPR>
        10:15:43        --MTA0: Volume 001234 TOPS-20 labeled tape mounted--
        OPR>
        10:15:45        --MTA0: Given To Request 12--
                        Volume 001234 now in use by
                        User HOVSEPIAN, Job 25, Terminal 2

   When the user finishes using the tape drive, he issues a DISMOUNT TAPE
   command  to  release  the tape drive.  When he gives this command, the
   system prints a message similar to the following on your terminal.

        OPR>
        11:20:33      --Tape Drive Released by USER--
                     MTA0:  Volume 001234 being Unloaded
        OPR>








                                    3-15
                         UNSCHEDULED SOFTWARE TASKS


   If a tape has been mounted for a long period  of  time  without  being
   used,  it  is  possible that the user forgot to give the DISMOUNT TAPE
   command to release the tape drive.  If this is the  case,  check  with
   the  user to see if he is finished using the tape.  If he is, give the
   OPR command DISMOUNT TAPE.  When you give  this  command,  the  system
   prints a message similar to the following on your terminal:

        OPR>
        11:45:20      --MTA0:  Unloaded--

                                    NOTE

           Tape handling error messages are explained in Part  VI
           Section 1.4.7.




   3.5.4  Mounting Labeled Tapes With AVR Disabled

   When a user issues a MOUNT command, you see the same mount request  as
   explained  in the previous section.  However, because AVR is disabled,
   the system does not automatically read the label.  Therefore, you must
   give  the  OPR  command  IDENTIFY  to  inform  the system of the label
   information.

   For example, a user requests a labeled tape whose volid is  112233  to
   be  mounted  on a tape drive.  You mount the tape on a tape drive that
   has AVR disabled, for  example,  MTA0:.   After  you  bring  the  tape
   on-line, give the following command:

        OPR>IDENTIFY MTA0:  VOLUME-ID 112233<RET>

   The above command tells the system that a labeled tape with the  volid
   of 112233 is mounted on tape drive MTA0:.

   If the user requests that a labeled tape be mounted as a scratch tape,
   give the following command:

        OPR>IDENTIFY MTA0:  SCRATCH<RET>

                                    NOTE

           When a user requests that a labeled tape be mounted as
           a  scratch  tape,  the  volid  in the mount request is
           replaced by the word SCRATCH.




   3.5.5  Mounting Unlabeled Tapes

   When a user requests that an unlabeled  tape  be  mounted  on  a  tape
   drive,  the  mount  request  you  see  is  the same as the ones in the
   previous sections with the exception that the "label-type" is shown as
   unlabeled.   To  inform  the system that you are mounting an unlabeled
   tape, use the OPR command IDENTIFY.









                                    3-16
                         UNSCHEDULED SOFTWARE TASKS


   After you have physically located the tape and mounted it  on  a  free
   tape drive, give the IDENTIFY command to have the system associate the
   tape with the mount request.

   For example, a user requests that an unlabeled tape be mounted with  a
   volid  of  TEST01.   When  the  mount request is processed, the system
   prints the following message on your terminal:

        OPR>
        10:20:10      --Tape Mount Request #12--
                     Mount Unlabeled Volume TEST01
                     User Hovsepian, Job 21, Terminal 7
        OPR>

   When you receive this  request,  locate  and  mount  the  tape  on  an
   available tape drive and then give the following command.

        OPR>IDENTIFY MTAn:  VOLUME-ID TEST01<RET>

   where "n" is the unit number of the tape drive.

   You can also satisfy the mount request by giving the IDENTIFY  command
   with  the request number in place of the volid.  Using the above mount
   request, give the following command:

        OPR>IDENTIFY MTAn:  REQUEST-ID 12<RET>

   If the user requests that an unlabeled scratch tape be  mounted,  give
   the following command:

        OPR>IDENTIFY MTAn:  SCRATCH<RET>

                            ----- Example -----

            A user requests that you mount an unlabeled scratch tape  and
            you comply, as there is a tape drive available.

            OPR>
            12:25:09         --Tape Mount Request #57--
                            Mount Unlabeled scratch tape, WRITE-ENABLED
                            User SMITH, Job 43, Terminal 18
                            User's remark:  PLEASE SEND VOLID TO JOB 43
            OPR>

            You now mount and ready an unlabeled  scratch  tape  on  tape
            drive MTA2:.

            12:27:32        --MTA2:  Unlabeled tape mounted--
            OPR>

            Then reply to OPR with:

            OPR>IDENTIFY MTA2:  SCRATCH<RET>
            OPR>
            12:27:33         --MTA2:  Given To Request 57--
                            Volume SCRATCH tape now in use by
                            User SMITH, Job 43, Terminal 18
            OPR>

            You can now SEND the physical volume identification to job 43
            as the user requested.

            OPR>SEND JOB 43 VOLID IS SCR123<RET>
            OPR>


                                    3-17
                         UNSCHEDULED SOFTWARE TASKS


   3.5.6  Canceling Mount Requests

   If you are unable to satisfy a user's mount request,  you  can  cancel
   the  mount  request by giving the OPR command CANCEL MOUNT-REQUEST nn.
   You should also notify the user why you could not satisfy the  request
   by giving the /REASON:  switch with the command.

   For example, you cancel a mount request because you could not find the
   requested tape.  To do this, give the following command:

        OPR>CANCEL MOUNT-REQUEST nn /REASON:I COULD NOT FIND THE TAPE

   where "nn" is the request number assigned to the mount request.



                            ----- Examples -----

            Cancel mount request 204.

            OPR>CANCEL MOUNT-REQUEST 204/REASON:I COULD NOT FIND THE
            TAPE<RET>
            OPR>
            11:49:19        --Mount Request 204 Canceled--



   3.5.7  Setting Tape Drives Available or Unavailable

   If tape drive allocation is enabled every time you start  the  system,
   all  tape  drives  are  under control of the MOUNTR program.  However,
   there may be times you want to release MOUNTR's control  of  the  tape
   drive.  To do this, you would give the following command:

        OPR>SET TAPE-DRIVE MTAn:  UNAVAILABLE<RET>

   where "n" is the unit number of the tape drive.

   The system prints:

        ENTER TEXT AND TERMINATE WITH ^Z

   This allows you to enter a comment giving a reason why you are setting
   the tape drive unavailable.

   When you give this command, MOUNTR releases control of the tape  drive
   and  users  can  assign  the  drive  to their jobs by using the ASSIGN
   command.  To return control of the tape  drive  to  MOUNTR,  give  the
   following command:

        OPR>SET TAPE DRIVE MTAn:  AVAILABLE<RET>



                            ----- Example -----

            Set MTA0:  unavailable because of a hardware problem.

            OPR>SET TAPE-DRIVE MTA0: UNAVAILABLE<RET>
            ENTER TEXT AND TERMINATE WITH ^Z
            TAPE DRIVE MTA0: IS LOSING VACUUM <CTRL/Z>

            OPR>








                                    3-18
                         UNSCHEDULED SOFTWARE TASKS


   3.6  ARCHIVING FILES WITH DUMPER

   If your installation is using  the  archive/virtual  disk  system  for
   off-line  storage of files, you could be requested at various times to
   run the DUMPER program to copy files marked  for  archiving  onto  two
   tapes.   These  requests do not appear at OPR command level.  However,
   you can give the TOPS-20 command INFORMATION  ARCHIVE-STATUS  <*>*.*.*
   to display the files that users have requested to be archived.

        $INFORMATION ARCHIVE-STATUS <*>*.*.*<RET>
         <ACE>TEST01.TST Archive requested
         <BROWN>FOO.BAR Archive requested
         <HOVSEPIAN>OPR.TXT Archive requested
         <LATTA>COBOL.EXE Archive requested
         <SARTINI>CONTNT.EXE Archive requested
         <WOLFE>ABCD.LST Archive requested
               .
               .
               .
        $

                                    NOTE

           This command shows files for your connected  structure
           only.   To show those files for another structure, you
           must  include  the  structure  name  in  the   command
           (str:<*>*.*.*).

   You can archive each file separately using the DUMPER program with the
   following command format:

|       DUMPER>ARCHIVE str:<directory>filespec<RET>

   However, it is recommended that you wait until you have more than just
   one archive request to run DUMPER and archive files.

   If no filespec is given in the DUMPER command, all  files  marked  for
   archiving  on  the  connected  structure are copied to tape.  Thus the
   DUMPER command defaults to the following:

|       DUMPER>ARCHIVE str:<*>*.*.*<RET>

   You must use two tapes when you are archiving files.  With two  tapes,
   the  archive  provides a backup system in case one of the tapes is bad
   or if one of the tapes gets misplaced.  Your System Manager should set
   up  the  procedures  and  the  tapes that are to be used for archiving
   files.

|  Archiving  requires  that  DUMPER  make  two  runs  on  the  connected
|  structure.  When the files have been successfully copied to two tapes,
   DUMPER then deletes the contents of the  files  from  the  disk.   The
   following are the steps you must take to archive one or more files:

        1.  Physically mount and ready a tape that has been assigned  for
            archiving.











                                    3-19
                         UNSCHEDULED SOFTWARE TASKS


        2.  Type PUSH to OPR.

        3.  Type ENABLE.

        4.  Type MOUNT TAPE setname:  (setname is the name  you  assigned
            to   your   tape)   with   the   /WRITE-ENABLED  switch,  the
            /LABEL-TYPE:   switch,  the  /VOLIDS:   switch,  the  /NOWAIT
            switch,  and  any  additional  switches  desired to the MOUNT
            command.

        5.  When MOUNTR replies with  the  Tape  Mount  Request  and  the
            acknowledgment  of the unlabeled tape being mounted, type POP
            to return to OPR.

        6.  If you are using an unlabeled tape, give the IDENTIFY command
            to OPR to identify the tape drive to the mount request.

        7.  When MOUNTR replies with Tape Drive Given To Request  number,
            type PUSH to OPR.

        8.  After the system has assigned a tape drive, type DUMPER.

        9.  Type to DUMPER:

            TAPE MTn:
|           ARCHIVE str:<dir>filespec

       10.  DUMPER asks you two questions.  If the tape  has  never  been
            used  before  for  archiving,  you  should answer YES to both
            questions.  If the tape has been used before  for  archiving,
            you  should  answer  NO  to the first question and the second
            question does not appear (see the example below).

       11.  When DUMPER replies with the two Total lines,  type  EXIT  to
            DUMPER.

       12.  Type DISMOUNT MTn:.

       13.  Physically remove the tape from the tape drive.
|  
|      14.  Mount and ready the second tape for the  archive  and  repeat
|           Steps 4 through 13.

       15.  Type POP to return to OPR.

                            ----- Example -----

   The following is an example of the DUMPER program when used to archive
   files.   It is assumed that you have already mounted an unlabeled tape
   on MTA1:  and the tape has never been used before for archiving.

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $MOUNT TAPE ARCHVE: /WRITE-ENABLED/LABEL-TYPE:UNLABELED-      
        /VOLIDS:500100/NOWAIT<RET>
        [Waiting for Tape/Structure Mount]








                                    3-20
                         UNSCHEDULED SOFTWARE TASKS


   OPR prints on the CTY:

        14:43:18          --Tape Mount Request # 57--
                        Mount Unlabeled volume 500100, WRITE-ENABLED
                        User OPERATOR, Job 6, Terminal 1

        14:43:46          --MTA1: Unlabeled tape mounted--
        $POP      
        OPR>IDENTIFY MTA1: REQUEST-ID 57<RET>
        OPR>
        14:43:50          --MTA1: Given To Request 57--
                        Volume 500100 now in use by
                        User OPERATOR, Job 6, Terminal 1
        OPR>PUSH<RET>
        [Tape set ARCHVE, volume 500100 mounted]
        [ARCHVE: defined as MT0:]
        $DUMPER<RET>
        DUMPER>TAPE MT0:<RET>
|       DUMPER>FILES<RET>
|       DUMPER>ARCHIVE PS:<TODAY>*.*.*<RET>
        $Is this a new tape? YES<RET>
        $Are you sure? YES<RET>

|        DUMPER tape # 1, Fri 27-July-84 1354. ARCHIVE, volid T2
|  
|       PS:<TODAY>
|         PS:<TODAY>QE5.LIB.1
|         PS:<TODAY>QE5.TEC.1
|  
|       Pass 2 started.
|       Pass 2 completed.
|  
|  
|       Total files dumped:     2
|       Total pages dumped:     4
|       CPU time, seconds:      0
        DUMPER>EXIT<RET>
        $DISMOUNT MT0:<RET>
        [Tape dismounted]
        $
        15:21:09          --Tape Drive Released By User--
                        MTA1: Volume 500100 Being unloaded


                                    NOTE

           If you are using the terminal that OPR is running  on,
           it  is  possible to receive OPR messages while you are
           running the DUMPER program.

















                                    3-21
                         UNSCHEDULED SOFTWARE TASKS


   You can now mount and ready another tape for the  archive.   When  you
   PUSH  from  OPR  after  IDENTIFYing  the  mount  request, you can type
   CONTINUE to return to DUMPER.































































                                    3-22
                         UNSCHEDULED SOFTWARE TASKS


                                    NOTE

           When a file has been archived, the user who  requested
           the  archive  receives  a message in his MAIL.TXT file
           specifying that the file is archived.




   3.7  RUNNING THE REAPER PROGRAM

   The REAPER program is used to increase free disk space on the  system.
   REAPER frees this disk space by performing the following functions:

        1.  By marking files that  have  not  been  referenced  within  a
            specified period of time for involuntary migration

        2.  By deleting disk contents pertaining to archived or  migrated
            files that have not been referenced within a specified period
            of time

        3.  By trimming directories that are over  their  permanent  disk
            allocations

   In most cases to use the REAPER program, you would give  a  number  of
   commands,  one  for  each operation to be performed.  When all desired
   operations have been specified, you can give  the  BEGIN  command  and
   specify the path of files to be considered.

   Table 3-2 below and on the following pages describe the  commands  you
   can  give  to the REAPER program and what the REAPER program does when
   it is run.


   Table 3-2:  REAPER Commands


     BEGIN (Processing Files)

     specifies which files to process in the  file  system.   Normally,
     you can specify PS:<*>*.*.*, but you can also specify other paths,
     such as PS:<*>*.REL.* or  FOO:<TST*>*.*.*.   This  command  should
     only  be  given  after  all  desired  options have been specified.
     After the specified files have been processed, REAPER  prints  the
     total number of pages reclaimed and then exits.


     DELETE-CONTENTS (of old offline files)

     specifies that files, existing on both  disk  and  on  an  archive
     tape, that have not been referenced within a specified time period
     are to have their contents deleted from disk.  The time period  is
     specified  by  the PERIOD command (described below in this table).
     If the DELETE command is not  given,  the  disk  contents  of  the
     file(s) remain on the disk(s).











                                    3-23
                         UNSCHEDULED SOFTWARE TASKS


   Table 3-2:  REAPER Commands (Cont.)


     EXIT (to monitor)

     specifies to exit from the REAPER program, without processing  any
     files.


     LIST (output to file)

     specifies an output filespec for the listing produced  by  REAPER.
     This  listing  consists of the names of the files that were marked
     for migration and a list of tapes that have archived  or  migrated
     files.   If  a  tape  that was listed on a previous listing is not
     listed on the current listing, it means that the contents  of  the
     tape have expired and can be released for other purposes.  If this
     command is not given, the listing produced by REAPER is written to
     the file DSK:REAPER.LIST.


     MIGRATE (old files to offline storage)

     specifies that files not  referenced  within  the  specified  time
     period  are  to  be  marked  for  involuntary migration.  The time
     period is specified by the PERIOD command.  If the MIGRATE command
     is  not  given,  files  are not marked for migration and remain on
     disk.

     Files that are marked for migration have the disk contents deleted
     from  disk  when  you  run  the  DUMPER  program with the /MIGRATE
     switch.  (Refer to next section in this chapter.)


     ORDER (For trimming)

     specifies the order in which files that are marked  for  migration
     are  to  be  taken  when  trimming  a  directory  that is over its
     permanent  allocation.   This  order  list  is  made  up  of  file
     specifications,  such  as:  *.TMP.*, *.LST.*, and *.REL.*.  REAPER
     only uses the ORDER list if the TRIM command is given.

     Most users have their  own  MIGRATION  ORDER  file  in  their  own
     directory.   However,  you should always include this command when
     performing trimming operations.


     PERIOD (For migration)

     specifies a time limit in days within which files  should  not  be
     migrated or have their disk contents deleted.  Your System Manager
     should inform you of the number of days  to  be  entered  in  this
     command.   For  example,  if  PERIOD is 60 days, it means that all
     files older than 60 days are involuntarily migrated if the MIGRATE
     command  was  given  or  files  older than 60 days have their disk
     contents deleted if you gave the the DELETE command.

     If you do not give a PERIOD command, a default period of  60  days
     is assumed.







                                    3-24
                         UNSCHEDULED SOFTWARE TASKS


   Table 3-2:  REAPER Commands (Cont.)


     PURGE (Expired FDB's from disk)

|    specifies to delete and expunge the File Descriptor Block (FDB) of
     a  file  which  is  off-line  and  the  file's expiration date has
     arrived (or passed).  Sometime before the off-line expiration date
     is  reached,  a  message  is  sent  to  the user who owns the file
     indicating that the expiration of the file is  approaching.   This
     message is sent only once.


     SCAN (Only)            

     specifies that no files are actually DELETEd,MIGRATEd, or TRIMmed.
     Only a listing of the files and directories that would be deleted,
     migrated, and trimmed is produced if you were  to  run  REAPER  at
     this time.


     SKIP (Directories)

     specifies the directories that  are  not  to  be  considered  when
     performing  deletion,  migration,  or  trimming  operations.  Your
     System Manager should inform you of the directories that should be
     skipped.  If the SKIP command is not given, all directories on the
     structure are processed.


     TAKE (Commands from file)

     specifies a command file of REAPER commands that  REAPER  executes
     automatically.   This  file should be created when the software is
     installed.  The command file should  contain  your  installation's
     policies  toward  involuntary  migration.  If you do not specify a
     filespec   with   the   TAKE   command,   REAPER    defaults    to
     SYSTEM:REAPER.CMD  as  a filespec.  (See below for an example of a
     REAPER.CMD file.)


     TAPE (Check of tapes in use)

     specifies that the output listing containing a summary of the tape
     information  for  the files considered in the REAPER process.  The
     listing shows  all  tapes  referenced  and  the  number  of  valid
     (unexpired)  files  each  tape  has.  There is no distinction made
     between archive and migration tapes.


     TRIM (Directories over allocation)

     specifies that directories over their permanent allocation will be
     trimmed  down  to the size specified in their directory.  The user
     can specify the order in which the  files  should  be  trimmed  by
     entering  an  order  list  in  a file named MIGRATION.ORDER in the
     user's directory.  If the MIGRATION.ORDER file does not  exist  in
     the  user's  directory,  then  the  order of files for trimming is
     taken from the ORDER command you specify.







                                    3-25
                         UNSCHEDULED SOFTWARE TASKS


   The following is an example of a REAPER.CMD file with  comments  added
   to clarify the commands:

        ! Sample REAPER policy file - Created 17 Sept 79,
        ! Directories not to consider:
        SKIP PS:<*SUBSYS>,PS:<*SYSTEM>,PS:<UNSUPPORTED>
        PERIOD 60        !Specify date limit on files
        MIGRATE          !Files older than PERIOD days
        DELETE           !Delete unreferenced file contents older
                          !than PERIOD with tape backup
        TRIM             !Directories over permanent allocation
        ORDER *.TMP.*,*.LST.* !IN WHICH TO TAKE FILES WITH TRIM

   When REAPER completes its processing, four lines of text  are  printed
   on your terminal.  These lines specify the number of:

        1.  files and pages marked for migration

        2.  archived files and pages deleted from disk

        3.  temporary files and pages deleted

        4.  expired files and pages purged

   If REAPER does not  mark  any  files  for  migration,  it  prints  the
   following information:

        0 files marked for migration, 0 pages
        0 archive files deleted from disk, 0 pages
        0 temporary files deleted, 0 pages
        0 expired files purged, 0 pages

                            ----- Examples -----

        1.  The following is an  example  of  the  REAPER  program.   You
            specify  the SCAN and BEGIN commands.  REAPER defaults to the
            SYSTEM:REAPER.CMD file automatically for your  installation's
            migration  policies.  Within the BEGIN command, you can press
            CTRL/A and REAPER prints the current directory it is  working
            on.

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(6037)
            @ENABLE<RET>
            $REAPER<RET>
            REAPER>SCAN<RET>
            REAPER>BEGIN<RET>
                  
             Working on PS:<WORK.DIRECTORY>
                  
             Working on PS:<LATTA.SNARK>
                  
             Working on PS:<XYZ.INP>

            169 files marked for migration, 3040 pages
            0 archive files deleted from disk, 0 pages
            0 temporary files deleted, 0 pages
            0 expired files purged, 0 pages
            $POP<RET>
            OPR>

            At this time, you can PRINT the file  REAPER.LIST  which  was
            written in your directory while REAPER was running.







                                    3-26
                         UNSCHEDULED SOFTWARE TASKS


        2.  The following is an example using the REAPER.CMD  file  shown
            above to migrate and trim files on the connected structure:

            OPR>PUSH<RET>

|            TOPS-20 Command processor 6(772)
            @ENABLE<RET>
            $REAPER<RET>
            REAPER>TAKE REAPER.CMD<RET>

   While REAPER is running, you cannot type POP to return to OPR.  If you
|  are  running  REAPER  as  a subjob of PTYCON, you can type <CTRL/X> to
   return to PTYCON and CONNECT back to OPR.  It is recommended that  you
   run  REAPER  either as a subjob of PTYCON or as a batch job because of
   the length of time it takes to process.

   When REAPER has completed its processing, REAPER lists the  number  of
   files and pages marked for migration, the number of files deleted, and
   the number of files purged.  You can then EXIT  from  REAPER  and  run
   DUMPER (explained in the next section).  For example:

            169 files marked for migration, 3040 pages
            12 archive files deleted from disk, 102 pages
            13 temporary files deleted, 236 pages
            2 expired files purged, 27 pages

            $POP      
            OPR>
|  
|  
|  
|  3.8  MIGRATING FILES WITH DUMPER
|  
|  Once a file has been marked for migration you  should  run  DUMPER  to
|  dump  the marked files to tape and delete (using the DELETE command in
|  REAPER) the files from disk.  The contents of the  files  are  deleted
|  after the second tape has been used for migration.
|  
|  Like archiving files, migration requires two  tapes.   Two  tapes  are
|  used  to  provide  a back-up system in case one of the tapes is bad or
|  gets misplaced.  Your System Manager should set up the  procedure  and
|  assign the tapes to be used for migrating files.

   You must do the following to migrate files with DUMPER:

        1.  Physically mount and ready a tape that has been assigned  for
            migrating files.

        2.  Type PUSH to OPR.

        3.  Type ENABLE.
|  
|       4.  Type MOUNT TAPE setname:  with the /WRITE-ENABLED switch, the
|           /LABEL-TYPE:    switch,   the   /VOLIDS:    switch,  and  any
|           additional switches desired to the MOUNT command.

        5.  When MOUNTR replies with  the  Tape  Mount  Request  and  the
            acknowledgement  of  the  unlabeled tape being mounted, press
            <RET> and type POP to return to OPR.







                                    3-27
                         UNSCHEDULED SOFTWARE TASKS


        6.  If you are using an unlabeled tape, give the IDENTIFY command
            to OPR to identify the tape drive for the mount request.

        7.  When MOUNTR replies with Tape Drive Given To Request  number,
            type PUSH to OPR.

        8.  After the system has displayed the defined tape drive for the
            setname:, type DUMPER.

        9.  Type to DUMPER:

            TAPE MTn:

|                LIST/MAIL filespec
|                MIGRATE str:<directory>filespec (for Migration)
|                MAIL filespec

       10.  DUMPER asks you two questions.  If the tape  has  never  been
            used  before  for  migration,  you  should answer YES to both
            questions.  If the tape has been used before  for  migration,
            you  should  answer  NO  to the first question and the second
            question does not appear (see the example below).

       11.  When DUMPER replies with the following messages:

                 TOTAL FILES dumped = nn
                 TOTAL Pages dumped = nn

            Type EXIT to DUMPER.

       12.  Type DISMOUNT MTn:

       13.  Physically remove the tape from the tape drive.

       14.  Mount and ready the second tape for the migration and  repeat
            Steps  4 through 12.  The migration of files is now complete,
            and those users who had files migrated receive a  message  in
            their MAIL.TXT files indicating the files that were migrated.
            If files in your directory were  migrated,  you  receive  the
            same message.

       15.  Type POP to return to OPR.



                            ----- Example -----

   The following is an example of the DUMPER program  that  was  used  to
   migrate  files.   It  is  assumed  that  you  have  already  mounted a
   unlabeled tape on MTA1:  and the tape(s) have never been  used  before
   for migration.















                                    3-28
                         UNSCHEDULED SOFTWARE TASKS


        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
|       $MOUNT TAPE T1: /WRITE-ENABLED/LABEL-TYPE:UNLABELED-<RET>
|  
|       13:43:18          --Tape Mount Request # 57--
|                       Mount Unlabled volume 500100, WRITE-ENABLED
                        User OPERATOR, Job 6, Terminal 1

|       13:43:46          --MTA1: Unlabeled tape mounted--

        $POP<RET>
        OPR>IDENTIFY MTA1: REQUEST-ID 57<RET>
        OPR>
|       13:43:50          --MTA1: Given To Request 57--
                        Volume 500100 now in use by
                        User OPERATOR, Job 6, Terminial 1
        OPR>PUSH<RET>
|       [Tape set T1:, volume 500100 mounted]
|       [T1: defined as MT3:]
        $DUMPER<RET>
|       DUMPER>TAPE T1:<RET>
|       DUMPER>REWIND<RET>
|       DUMPER>FILES<RET>
|       DUMPER>LIST/MAIL TODAY.LST<RET>
|       DUMPER>MIGRATE (DISK FILES) PS:<TODAY>*.*.*<RET>
|        Is this a new tape? YES<RET>
|        Are you sure? YES<RET>
|  
|         DUMPER tape #1, Fri 27-Jul-84 1413. MIGRATION , volid T1
|  
|        PS:<TODAY>
|          PS:<TODAY>FTS.INIT.1
|          PS:<TODAY>INIT.CMD.1
|          PS:<TODAY>INT.MAC.1
|          PS:<TODAY>MS.INIT.1
|          PS:<TODAY>NFT.INIT.1
|          PS:<TODAY>SED.INIT.1
|          PS:<TODAY>TV.EXE.1
|          PS:<TODAY>TV.INI.1
|          PS:<TODAY>TV2.INI.1
|          PS:<TODAY>TVSM.INI.1
|  
|        Pass 2 started.
|        Pass 2 completed.
|  
|  
|        Total files dumped:     10
|        Total pages dumped:     38
|        CPU time, seconds:      1
|       DUMPER>MAIL TODAY.LST <RET>
|       DUMPER>EXIT
|  
|       $DISMOUNT T1:
|       [Tape dismounted, logical name T1: deleted]










                                    3-29
                         UNSCHEDULED SOFTWARE TASKS


   You can now mount and ready another tape for the migration.  When  you
   PUSH  from  OPR  after  identifying  the  mount  request, you can type
   CONTINUE to return to DUMPER.

|       $MOUNT TAPE T2: /WRITE-ENABLED/LABEL-TYPE:UNLABELED-<RET>
        /VOLIDS:500200/NOWAIT<RET>
|       [Mount request T2 queued, request #154]
|  
|       15:25:09          --Tape Mount Request # 154--
                        Mount Unlabled volume 500200, WRITE-ENABLED
                        User OPERATOR, Job 6, Terminal 1

        15:25:13          --MTA1: Unlabeled tape mounted--

        $POP<RET>
|       OPR>IDENTIFY MTA1: REQUEST-ID 154<RET>
        OPR>
|       15:27:12          --MTA1: Given To Request 154--
                        Volume 500200 now in use by
                        User OPERATOR, Job 6, Terminal 1
        OPR>PUSH<RET>
|       [Tape set T2:, volume 500200 mounted]
|       [T2: defined as MT3:]
        $CONTINUE<RET>
|       DUMPER>TAPE T2:<RET>
|       DUMPER>MIGRATE PS:<TODAY>*.*.*<RET>
        Is this a new tape? YES<RET>
        Are you sure? YES<RET>

|        DUMPER tape #1, Fri 27-Jul-84 1417. MIGRATION , volid T2
|  
|       PS:<TODAY>
|         PS:<TODAY>FTS.INIT.1
|         PS:<TODAY>INIT.CMD.1
|         PS:<TODAY>INT.MAC.1
|         PS:<TODAY>MS.INIT.1
|         PS:<TODAY>NFT.INIT.1
|         PS:<TODAY>SED.INIT.1
|         PS:<TODAY>TV.EXE.1
|         PS:<TODAY>TV.INI.1
|         PS:<TODAY>TV2.INI.1
|         PS:<TODAY>TVSM.INI.1
|  
|       Pass 2 started.
|       Pass 2 completed.
|  
|  
|       Total files dumped:     10
|       Total pages dumped:     38
|       CPU time, seconds:      2





















                                    3-30
                         UNSCHEDULED SOFTWARE TASKS


   3.9  RETRIEVING FILES WITH DUMPER

|  Once a file is migrated or archived, the user cannot modify that  file
   unless  he  retrieves  the file with the TOPS-20 RETRIEVE command.  If
   the user wants to modify an archived file, he must first retrieve  the
   file  and then discard the tape archive status from the FDB.  When the
   user gives the RETRIEVE  command,  OPR  responds  with  the  following
   message:

        hh:mm:ss        File Retrieval n  --Retrieval Request--
                        str:<directory>filespec

   where n is the processor number processing the  request,  str: is  the
   requested   structure   name,  <directory>  is  the  requested  user's
   directory name, and filespec is the file specification.

   When a retrieval request is initially queued by a user, the request is
   stored  in  a  request  queue maintained by the system.  All retrieval
   requests are kept in the queue in order by the  archived  or  migrated
   tape   information.    This   information   consists   of  the  volume
   identification, the tape saveset number, and  the  tape  file  number.
   When each additional request is received by the system, the request is
   inserted in the proper sorted position within the queue.  Ordering the
   retrieval requests in this way reduces the amount of tape mounting and
   dismounting that must be performed by  you  when  you  run  DUMPER  to
   retrieve the requested files.

   To retrieve requested files with DUMPER, you must do the following:

        1.  Type PUSH to OPR.

        2.  Type ENABLE.

        3.  Run DUMPER and type:

            RETRIEVE str:<directory>filespec

        4.  When MOUNTR replies with  a  Tape  Mount  Request,  you  must
            physically   locate,  mount,  and  ready  the  tape  for  the
            retrieval.  MOUNTR obtains  the  tape  volid  from  the  file
            descriptor block (FDB) of each file requested for retrieval.

        5.  When MOUNTR replies that the tape is  mounted,  press  CTRL/C
            twice and then type POP to return to OPR.

        6.  If the label type is UNLABELED, give the IDENTIFY command  to
            OPR to identify the tape to MOUNTR.

        7.  After MOUNTR has displayed that the tape has  been  given  to
            the request number, type PUSH to OPR.

        8.  Type CONTINUE to return to the DUMPER program.

        9.  DUMPER then retrieves the files automatically and lists  them
            on your console.

       10.  When  the  retrievals  are  completed,  DUMPER  automatically
            unloads  the  tape.   If the retrievals require more than one
            tape,  DUMPER  unloads  and  requests  the  additional  tapes
            automatically.   Each  tape mount request has to be given the
            IDENTIFY  command  at  OPR  command  level.   You   have   to
            physically remove and mount each tape.









                                    3-31
                         UNSCHEDULED SOFTWARE TASKS


       11.  Type EXIT to DUMPER.

       12.  Type POP to return to OPR.

   The filespec (str:<directory>filespec)  in  the  RETRIEVE  command  is
   referred  to as the "file group descriptor".  This is because the file
   group descriptor can be one file specification  or  a  group  of  file
   specifications with or without the use of wildcard characters.

   When DUMPER retrieves file(s), retrieval requests in the request queue
   can be requeued for one of two reasons:

        1.  The   request    does    not    fall    within    the    path
            (str:<directory>filespec)  specified  by  you  in  the DUMPER
            RETRIEVE command.

        2.  The request called for a tape that had data errors on  it  or
            could not be mounted.

   Requests that are requeued have their time stamp zeroed out,  so  that
   DUMPER  reconsiders  the  request during the same retrieval operation.
   When all requests have been retrieved and there are no new requests to
   be  considered,  the  system informs DUMPER that the request queue has
   been exhausted.

                                  WARNING

|          If there are no files in the retrieval queue  and  you
|          give  the RETRIEVE command to DUMPER, DUMPER waits for
|          approximately  5  minutes.   DUMPER  then  aborts  the
|          RETRIEVAL request and sends the message:
|  
|               ?Assuming no requests in the retrieval queue.
|  
|          Before running DUMPER to retrieve  files,  you  should
|          give the SHOW QUEUES RETRIEVAL-REQUESTS command to OPR
|          to see if any retrievals have been requested.
|  
   If you are unable to locate the requested  tape  volume  or  the  tape
   volume is bad, perform the following steps:

        1.  Type CTRL/C twice and type POP to return to OPR.

        2.  Type CANCEL MOUNT-REQUEST nn (where nn is the  mount  request
            number).

        3.  Type PUSH and then type CONTINUE to return to DUMPER.

        4.  DUMPER displays the following message:

            ?Cannot mount tape, Mount refused by operator
            Try again?

        5.  Type NO, and DUMPER replies with:

|           Should I ask about this tape anymore during this run?
|  
|           If you answer no, other requests for the  tape  are  ignored.
|           If  you  answer  yes,  additional  requests  for the tape are
|           processed.

        6.  DUMPER then requests the next retrieval tape to be mounted.

        7.  You can then follow Steps 5 through 12 on the previous pages.


                                    3-32
                         UNSCHEDULED SOFTWARE TASKS


                            ----- Examples -----

        1.  Run DUMPER to retrieve only one file  as  requested  by  your
            System Manager.

            OPR>SHOW QUEUES RETRIEVAL-REQUESTS<RET>
            OPR>
            13:20:30            -- System Queues Listing --

            Retrieval Queue:
             Name   Req#    Tape 1  Tape 2  User
            -----   ----    ------  ------  ---------------------
            SCHEDU   27     400030  400040  MANAGER
            There is 1 job in the Queue (None in Progress)

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @ENABLE<RET>
            $DUMPER<RET>
            DUMPER>RETRIEVE PS:<MANAGER>SCHEDULE.TXT<RET>
            [Mounting tape volume 400040]

            13:22:00          --Tape Mount Request # 79--
                            Mount volume 400040, 9-TRACK, 1600 BPI, READ-ONLY
                            User OPERATOR, Job 6, Terminal 1
                            User's remark: RETRIEVAL TAPE


            Now physically locate tape volume 400040, mount the tape, and
            ready it on an available tape drive.

            13:25:00      --MTA1: Unlabeled tape mounted--
            ^C
             
             !
            <CTRL/C><CTRL/C>
            $POP<RET>
            OPR>IDENTIFY MTA1: REQUEST-ID 79<RET>
            OPR>
            13:26:34      --MTA1: Given to Request 79--
                        Volume 400040 now in use by
                        User OPERATOR, Job 6, Terminal 1
            OPR>PUSH<RET>
            $CONTINUE<RET>
            [Volume 400040 mounted]


            PS:<MANAGER>SCHEDULE.TXT.34;P777700;A341 (TO) PS:<MANAGER>SCHEDULE.TXT.34  [OK]


            12:40:54      --Tape Drive Released By User--
                        MTA1: Volume 400040 Being unloaded
            DUMPER>EXIT<RET>
            $POP<RET>
            OPR>






























                                    3-33
                         UNSCHEDULED SOFTWARE TASKS


        2.  Run DUMPER to retrieve all requests in the  retrieval  queue.
            In   addition,   two  tape  volumes  are  requested  for  the
            retrievals.

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @ENABLE<RET>
            $DUMPER<RET>
            DUMPER>RETRIEVE PS:<*>*.*.*<RET>
            [Mounting tape volume 23401]


            16:30:04          --Tape Mount Request # 97--
                            Mount volume 23401, 9-TRACK, 1600 BPI, READ-ONLY
                            User OPERATOR, Job 6, Terminal 1


            16:31:12          --MTA0: Unlabeled tape mounted--
              ^C
               !
            <CTRL/C><CTRL/C>
            $POP<RET>
            OPR>IDENTIFY MTA0: REQUEST-ID 97<RET>
            OPR>
            16:33:30          --MTA0: Given To Request 97--
                            Volume 23401 now in use by
                            User OPERATOR, Job 6, Terminal 1
            OPR>PUSH<RET>
            $CONTINUE<RET>
            [Volume 23401 mounted]




            PS:<SARTINI>CHAP01.RNO.1;P777700;A341 (TO) PS:<SARTINI>CHAP01.RNO.1    [OK]
            PS:<BROWN>YEARLY.CBL.3;P777700;A341 (TO) PS:<BROWN>YEARLY.CBL.3    [OK]
            PS:<HOVSEPIAN>OPR.TXT.5;P777700;A341 (TO) PS:<HOVSEPIAN>OPR.TXT.5    [OK]
            PS:<HURLEY>DECSPC.MEM.4;P777700;A341 (TO) PS:<HURLEY>DECSPC.MEM.4    [OK]
                        .
                        .
                        .
            PS:<TEEGARDEN>FORTRA.EXE.1;P777700;A341 (TO) PS:<TEEGARDEN>FORTRA.EXE.1    [OK]


            16:45:00      --Tape Drive Released By User--
                        MTA0: Volume 23401 Being unloaded

            16:45:03      -- Tape Mount Request # 98--
                        Mount volume 23402, 9-TRACK, 1600 BPI, READ-ONLY
                        User OPERATOR, Job 6, Terminal 1
                        User's remark: RETRIEVAL TAPE

            16:47:32      --MTA0: Unlabeled tape mounted--
              ^C
               !
            <CTRL/C><CTRL/C>
            $POP<RET>
            OPR>IDENTIFY MTA0: REQUEST-ID 98<RET>
            OPR>
            16:49:09      --MTA0: Given To Request 98--
                        Volume 23402 now in use by
                        User OPERATOR, Job 6, Terminal 1
            OPR>PUSH<RET>
            $CONTINUE<RET>
            [Volume 23402 mounted]




















                                    3-34
                         UNSCHEDULED SOFTWARE TASKS


            PS:<J.JONES>SAMPLE.MEM.2;P777700;A341 (TO)
            PS:<J.JONES>SAMPLE.MEM.2    [OK]
                      .
                      .
            PS:<ANDERSON>EXAM01.TST.5;P777700;A341 (TO)
            PS:<ANDERSON>EXAM01.TST.5    [OK]

            16:57:45          --Tape Drive Released By User--
                            MTA0: Volume 23402 Being unloaded
            DUMPER>EXIT<RET>
            $POP<RET>
            OPR>




   3.10  RESTORING DISK FILES WITH DUMPER

   If a user requests that you restore some files for him from a magnetic
   tape, be sure to find out:

        1.  What magnetic tape(s) to use.  You might have to use  a  tape
            containing a complete SAVE and some tapes from an INCREMENTAL
            SAVE.  You or the  user  should  look  through  the  terminal
            output kept for each DUMPER SAVE and determine which tapes to
            use.

        2.  What files to restore and what directory they are in.

        3.  What directory to put them into.

        4.  What special DUMPER status commands to use, if any.  (See the
            TOPS-20  User  Utilities  Guide  for details on DUMPER status
            commands.)
|  
|       5.  What version of DUMPER is being used.  Dumper may not restore
|           passwords correctly if you use an incorrect version of DUMPER
|           (see the TOPS-20  User  Utilities  for  details  on  password
|           encryption.)


                                    NOTE

           DUMPER does not work on a 7-track magnetic tape  drive
           (TU71).

   Then do the following:

        1.  Type PUSH to OPR.

        2.  Type ENABLE.

        3.  Type MOUNT TAPE setname:  with the /LABEL TYPE:  switch,  the
            /VOLIDS:   switch,  and the /NOWAIT switch.  The default mode
            is READ-ONLY.

        4.  If you are connected to another  structure,  CONNECT  to  the
            structure for the restore.

        5.  When MOUNTR replies with  the  Tape  Mount  Request  and  the
            acknowledgement  of  the  unlabeled tape being mounted, press
            <RET> and type POP to return to OPR.

        6.  If the label type is unlabeled, give the IDENTIFY command  to
            OPR to identify the tape drive to the mount request.

        7.  If the desired structure is not mounted for the restore, type
            PUSH to OPR, then give the command MOUNT STRUCTURE str:.


















                                    3-35
                         UNSCHEDULED SOFTWARE TASKS


        8.  When the system replies with  Tape  Drive  Given  To  Request
            number  (and  the structure is mounted), and after the system
            has displayed the message that defines the tape drive for the
            setname:, type DUMPER.

        9.  Type the following DUMPER commands.

            TAPE MTn:<RET>
            RESTORE str:<directory>filespec<RET>

            (See argument types for  filespecs  below  or  refer  to  the
            RESTORE command in the TOPS-20 User Utilities Guide.)

       10.  When DUMPER prompts again, type EXIT.

       11.  Type DISMOUNT TAPE MTn:.

       12.  Type DISABLE.

       13.  Type POP to return to OPR.

       14.  Remove the magnetic tape from the drive.

   Argument types for RESTORE:

        1.  To restore an entire user area, for example, to copy all  the
            files  of directory PS:<DIR> on tape to directory PS:<DIR> on
            disk:

            RESTORE PS:<DIR><RET>

        2.  To restore certain files on directory  PS:<DIR>  on  tape  to
            directory PS:<DIR> on disk:

            RESTORE PS:<DIR>file1,PS:<DIR>file2,...<RET>

        3.  To restore PS:<A>A.MAC to PS:<SOURCE>A.MAS and PS:<B>X.MAC to
            PS:<SOURCE>X.MAS:<RET>

            RESTORE <A>A.MAC <SOURCE>A.MAS,<B>X.MAC <SOURCE>X.MAS<RET>

        4.  To copy all files from PS:<SOURCES> on tape to  OLD:<SOURCES>
            on disk:

            (Be sure to MOUNT STRUCTURE OLD:  before you run DUMPER,  and
            DISMOUNT STRUCTURE OLD:  after you run DUMPER.)

            RESTORE PS:<SOURCES> OLD:<SOURCES><RET>

   In addition, you can specify either of two  optional  switches  before
   the file group descriptor.  These switches are as follows:

        1.  /NOTAPE-INFORMATION - specifies that no archive or  migration
            tape  information  is restored with the file(s).  This switch
            can be used when a  user  wishes  to  transfer  a  file  from
            another  system  to  his  disk  area  on  your  system.   The
            /NOTAPE-INFORMATION switch avoids bringing  tape  information
            from another system.

        2.  /TAPE-INFORMATION  -  specifies  that  tape  information   is
            restored  with  the  file(s).  This switch can be used when a
            user wishes to restore a file that was migrated  or  archived
            and  then  inadvertently  deleted  and expunged from his disk
            area.


                                    3-36
                         UNSCHEDULED SOFTWARE TASKS


   If you do not specify either switch, /TAPE-INFORMATION is the default.
   (For  more  information on DUMPER, refer to the TOPS-20 User Utilities
   Guide.)

                              ----- Hint -----

   If the user's files on the DUMPER tape(s) have  accounts  not  in  the
   installed ACCOUNTS-TABLE.BIN file, do the following:

        1.  Log in under the user who requested the file restoration  and
            specify a valid account for that user.

        2.  Follow Steps 3 through 9 in the procedure above, and type the
            DUMPER command:

                 ACCOUNT SYSTEM-DEFAULT<RET>

            before the RESTORE command to DUMPER.

        3.  Type LOGOUT.

                            ----- Example -----

   A user has requested a restore of all his files on structure MISC:.

        OPR>PUSH<RET>
         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $MOUNT STRUCTURE MISC:<RET>

        18:13:12          --STRUCTURE MOUNTED--
                        Structure MISC mounted            

        $MOUNT TAPE DUMP09: /LABEL-TYPE:UNLABELED/VOLIDS:DUMP09/NOWAIT<RET>

        18:15:01          --Tape Mount Request # 115--
                        Mount Unlabeled volume DUMP09, READ-ONLY
                        User OPERATOR, Job 6, Terminal 1

        18:16:56          --MTA3: Unlabeled tape mounted--
        <RET>
        $POP<RET>
        OPR>IDENTIFY MTA3: REQUEST-ID 115<RET>
        OPR>
        18:19:20          --MTA3: Given To Request 115--
                        Volume DUMP09 now in use by
                        User OPERATOR, Job 6, Terminal 1
        OPR>PUSH<RET>
        [Tape set DUMP09, volume DUMP09 mounted]
        [DUMP09: defined as MT1:]
        $DUMPER<RET>
        DUMPER>TAPE MT1:<RET>
        DUMPER>RESTORE MISC:<SARTINI>*.*.*<RET>

        DUMPER tape # 1  Volid DUMP09, , Saturday, 14-Apr-79 1206
        MISC:<SARTINI>

        End of saveset
        DUMPER>EXIT<RET>
        $DISMOUNT TAPE MT1:<RET>
        [Tape dismounted]

        18:27:34          --Tape Drive Released By User--
                        MTA3: Volume DUMP09 Being unloaded
        $POP<RET>
        OPR>




















                                    3-37
                         UNSCHEDULED SOFTWARE TASKS


   3.11  ANSWERING STRUCTURE MOUNT REQUESTS WITH OPR

   When a user issues a request to mount or dismount a structure with the
   TOPS-20  MOUNT  or  DISMOUNT command, ORION passes a message to OPR to
   inform you of  the  request.   You  can  then  respond  by  physically
   mounting  or dismounting the structure.  When the system receives this
   request, it has OPR  print  the  following  message  on  the  terminal
   running OPR:

        OPR>
        hh:mm:ss          --Structure Mount Request #nn--
                        Mount str: (alias ptr:)
                        User username, job nn, Terminal nn

                                   FREE DRIVES

|       DISK DRIVE INFORMATION                    DISK PACK INFORMATION
|             Chan-Cont   Disk     Mount                        Usage
|        Type   Drive    Status    Status   Count Name         Options
|        ---- --------- --------   ------   ----- ------------ -------------------------
|  
|       (List of available drives)

   where:

        hh:mm:ss         specifies the time  the  operator  received  the
                         message.

        Request#nn       specifies the request  number  assigned  to  the
                         mount request.

        Mount str:       specifies the physical name of the structure.

        User username    specifies the name of the user  who  issued  the
                         MOUNT request.

        Job nn,          specifies the job number the user  was  assigned
                         when he logged onto the system.

        Terminal nn      specifies the line number of the  terminal  from
                         which the user issued the MOUNT request.

        FREE DRIVES      specifies the disk drives that are available.

   The list of available disk drives contains those drives that meet  one
   of the following conditions:

        1.  The drive is off-line.

        2.  The drive has a nonrecognizable structure on it.

        3.  The drive is on-line, it has a recognizable structure on  it,
            no  user  has MOUNTed it, no user has CONNECTed to it, and no
            user has a file open on it.

   The list also provides the following information:

|       1.  The type of drive (RP04, RP06, RP07, RP20, RA60, or RA81).

        2.  The channel number of the drive.

        3.  The controller number of the drive.

        4.  The physical unit number of the drive.






















                                    3-38
                         UNSCHEDULED SOFTWARE TASKS


|       5.  The state of the drive (available/unavailable).
|  
|       6.  The mount status of the drive.
|  
|       7.  The mount count.
|  
|       8.  The structure name on the drive.
|  
|       9.  The attributes of the structure.
|  
|  You reply to a MOUNT request by doing the following:
|  
|       1.  Mount all the packs of the structure requested on any of  the
|           available   drives  in  the  list.   MOUNTR  then  makes  the
|           structure known to the system  and  cancels  the  outstanding
|           message.
|  
|           Once the structure is known  by  the  system,  OPR  prints  a
|           message similar to:
|  
|           OPR>
|           hh:mm:ss          --STRUCTURE MOUNTED--
|                           Structure str: (Alias:name) mounted
|           OPR>
|  
|           OPR  prints  the  preceding  message  only  after  you   have
|           physically mounted all the packs in the structure.
|  
|  
|                            ----- Hints -----
|  
|  OPR continues to handle other requests from other users, if you do not
|  respond  to  a  MOUNT  request with some action.  For example, if five
|  separate users request five different structure  MOUNTs  at  the  same
|  time, you can respond individually to each request in any order.































                                    3-39
                         UNSCHEDULED SOFTWARE TASKS


|  Sometimes you see a message similar to:
|  
|       OPR>
|       13:02:15          --STRUCTURE MOUNTED--
|                       Structure PS: (Alias:DIAG) mounted
|       OPR>
|  
|  without seeing a MOUNT request.  This happens when a user does a MOUNT
|  for  a  structure  that  the  system  found  on-line.  This is just an
|  informational message for you; it requires no action.
|  
|                           ----- Examples -----
|  
|       1.  In this example, a user wanted to MOUNT a structure  that  is
|           unavailable.   When  this  message  appears  on your console,
            CANCEL the MOUNT-REQUEST and give a reason.

            13:35:55          --MOUNT PROBLEM--
|                           Problem with structure ASDF: structure is set unavailable
                            User Konen, Job 32, Terminal 11

            13:36:01          --Structure Mount Request # 12--
                            Mount ASDF: (alias ASDF:)
                            User Konen, Job 32, Terminal 11

|                                           FREE DRIVES
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount    Mount               Usage
|           Type    Drive    Status   Status   Count Name         Options
|           ----  --------- --------  ------   ----- ------------ -------------------------
|           *RP06 0,  ,1    Avail     Offline
|           *RP07 1,  ,0    Avail     Free           FIAT   (1/1)
|            RP06 7,01,1    Avail     Free           CHIP   (1/1)
|            RA60 7,07,254  Avail     Free
|            RA81 7,08,18   Avail     Free           DRV18  (1/1)
|  
|           OPR>CANCEL MOUNT-REQUEST 12/REASON:ASDF IS UNAVAIABLE<RET>
            OPR>
            13:40:00          --Mount Request 12 Canceled--
            OPR>


        2.  In this example, a user has requested  that  structure  JACK:
            be MOUNTed.

            OPR>
|           12:40:15          --Structure Mount Request # 4--
|           Mount JACK: (alias JACK:)
|           User KOVALCIN, Job 2, Terminal 1
|  
|                                           FREE DRIVES
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount    Mount               Usage
|           Type    Drive    Status   Status   Count Name         Options
|           ----  --------- --------  ------   ----- ------------ -------------------------
|           *RP06 0,  ,1    Avail     Offline
|           *RP07 1,  ,0    Avail     Free                     FIAT   (1/1)
|            RP06 7,01,1    Avail     Free                     CHIP   (1/1)
|            RA60 7,07,254  Avail     Free
|            RA81 7,08,18   Avail     Free                     DRV18  (1/1)
|  
            OPR>


                                    3-40
                         UNSCHEDULED SOFTWARE TASKS


|           You can now physically  mount  JACK:   and  make  the  system
|           recognize  the  structure  as  being  on-line.   Request 4 is
|           canceled automatically and the user will be notified.

            OPR>
            12:43:33          --STRUCTURE MOUNTED--
|                           Structure JACK: (Alias:JACK) mounted
            OPR>


























































                                    3-41
                         UNSCHEDULED SOFTWARE TASKS


   3.11.1  Mounting a Structure with MOUNT

   If you need to mount a structure, other than the structures  that  are
   normally  mounted  at  system  start-up,  you  should  give  the MOUNT
   command.  For example, to mount a structure called  SNARK,  you  would
   give the following command:

        @MOUNT STRUCTURE SNARK:<RET>

   If the structure you want to mount has the same  physical  name  as  a
   structure  that  is already mounted, you must assign an alias name for
   the structure you want to mount.  The alias name is placed  after  the
   word STRUCTURE followed by the /STRUCTURE-ID switch and actual name of
   the structure.  You must have WHEEL or OPERATOR privileges enabled  to
   perform  this  task.   For  example,  to specify an alias name for the
   structure SNARK:  you would give the following command:

        $MOUNT STRUCTURE CHECK:  /STRUCTURE-ID SNARK:<RET>

   In the above command you have mounted a structure  with  the  physical
   name  SNARK:  and the alias name CHECK:.  Any user wishing to use this
   structure has to refer to it by the structure name CHECK:.

   If a disk drive (RP04 or RP06) containing a structure, other than PS:,
   starts  to  have  hardware problems, you can remove the structure from
   the disk drive you must move the structure to an  available  drive  of
   the  same  type  but  you  do not have to give a DISMOUNT command.  If
   there are no available disk drives, and the structure you  are  moving
   is  necessary  for  normal system operation, you must first DISMOUNT a
   structure on another disk drive of the same type and  then  MOUNT  the
   necessary structure on that drive.

                                    NOTE

           When you assign an alias  name  to  a  structure,  the
           physical  name  of  the structure (which is written in
           the home blocks of the  structure)  does  not  change.
           Refer  to  the TOPS-20 System Manager's Guide for more
           information on alias names.

                            ----- Example -----

   A user from another installation wants to mount his  public  structure
   on  your  system.  Because you already have a public structure on your
   system, you must assign his structure an alias.

        OPR>PUSH<RET>
         TOPS-20 Command Processor 6(772)
        @ENABLE<RET>
        $MOUNT STRUCTURE CHECK: /STRUCTURE-ID PS:<RET>
        [Mount Request CHECK: QUEUED, Request-id 57]















                                    3-42
                         UNSCHEDULED SOFTWARE TASKS


   The terminal running OPR displays the following message:

        10:11:40       --Structure Mount Request # 57--
                        Mount PS: (alias CHECK:)
                        User OPERATOR, Job 6, Terminal 1

|                               FREE DRIVES
|  
|       DISK DRIVE INFORMATION                    DISK PACK INFORMATION
|             Chan-Cont    Disk    Mount    Mount               Usage
|        Type   Drive    Status    Status   Count Name         Options
|        ---- --------- --------   -------  ----- ------------ -------------------------
|        *RP06 0,  ,1   Avail      Offline
|        *RP07 1,  ,1   Avail      Free           FIAT   (1/1)
|         RP06 7,01,1   Avail      Free           CHIP   (1/1)
|         RA60 7,07,254 Avail      Offline
|         RA81 7,08,18  Avail      Free           DRV18  (1/1)

   Whether you mount the structure before or  after  the  MOUNT  command,
   when  the  system recognizes the structure as mounted and on-line, the
   following message appears on your terminal:

        Structure CHECK: mounted

   On the terminal running OPR, the following message is displayed.

        10:12:35          --STRUCTURE MOUNTED--
                        Structure PS: (Alias:CHECK) mounted


                                  WARNING

           If the system goes down  while  a  structure  with  an
           alias  name  is mounted, you should put the disk drive
           that the structure with  the  alias  name  is  mounted
           off-line  prior  to restarting the system.  The reason
           for this is that when the  system  is  restarted,  the
           monitor  looks  at  the physical name of the structure
           rather than the  alias  name  and  reports  errors  of
           duplicate  structures  mounted.   After the system has
           restarted, bring the disk drive back on-line and mount
           the structure again with an alias name.

                         ----- Error Message -----

        OPR>
        10:30:11          --MOUNT PROBLEM--
                        Problem with structure : Invalid structure name
                        User OPERATOR, Job 6, Terminal 1
        OPR>

   You have specified a structure name that is invalid and/or the  system
   cannot recognize the name specified.  You might have typed one or more
   non-alphanumeric  characters  in  the  name,  the  name  exceeds   six
   alphanumeric  characters,  or  the  structure  name  has the name of a
   system logical name.  Issue the  MOUNT  command  again,  specifying  a
   structure name that is valid and/or can be recognized by the system.









                                    3-43
                         UNSCHEDULED SOFTWARE TASKS


   3.11.2  Answering Structure DISMOUNT Requests with OPR

|  When a user gives  a  valid  DISMOUNT  STRUCTURE  str:   command,  OPR
|  prints:

   OPR>
   hh:mm:ss      --STRUCTURE DISMOUNTED--
|               Structure PH4 dismounted

                 --DISMOUNT STRUCTURE--
|               Remove PH4:
                User HOVSEPIAN, Job 21, Terminal 25

|                               MOUNTED DRIVES
|  
|               DISK DRIVE INFORMATION            DISK PACK INFORMATION
|                     Chan-Cont   Disk    Mount    Mount              Usage
|                Type   Drive    Status   Status   Count Name         Options
|                ---- ---------  -------- ------   ----- ------------ -------------------
|                RP06 0,  ,3     Avail    Free     1     PH4    (1/1)

   The status display prints the following:
|  
|       1.  The type of disk.  An asterisk (*) to the left  of  the  disk
|           drive type indicates a disk drive has an external port.
|  
|       2.  The channel, controller, and drive number.
|  
|       3.  The state of the disk drive (available/unavailable).
|  
|       4.  The mount status of the disk drive.
|  
|       5.  The count of the number of users who requested a mount of the
|           structure.
|  
|       6.  The name of the structure.
|  
|       7.  The attributes of the structure.
|  
   You must answer a DISMOUNT request by doing one of the following:

        1.  If the following DISMOUNT message appears at your console,  a
            user  has issued a DISMOUNT STRUCTURE str: command.  However,
            other users are still using the structure.

            OPR>
            16:52:13 <19>    --DISMOUNT QUERY--
                            Removal of structure AHPA: (Alias AHPA:)
                            requested.
                            Other jobs are currently using it. Should
                            removal request be processed (YES or NO)?
                            User KONEN, Job 39, Terminal 11

            OPR>


            If you are to honor the DISMOUNT in  this  case,  you  should
            SEND a message to all other users that the structure is being
            dismounted.  Otherwise, answer the DISMOUNT  QUERY  with  NO.
            If you say "NO", the DISMOUNT request is deleted.

            Once all users have DISMOUNTed the structure,  you  can  then
            complete  the DISMOUNT by removing all packs of the structure
            from their drives after seeing the following message:


                                    3-44
                         UNSCHEDULED SOFTWARE TASKS


|           OPR>
|           14:36:06          -- STRUCTURE DISMOUNTED --
|                           Structure AP20 dismounted
|           OPR>
|           14:36:07          -- DISMOUNTED STRUCTURE --
|           Remove AP20: (alias AP20:)
|           User OPERATOR, Job 2, Terminal 233
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount    Mount               Usage
|            Type   Drive    Status   Status   Count Name         Options
|           ----  --------- --------  ------   ----- ------------ --------------------------
|           *RP06 0,  ,1    Avail     Mounted





















































                                    3-45
                         UNSCHEDULED SOFTWARE TASKS


        2.  If there is a list of free drives and  the  structure  to  be
            removed  appears  in  the  list,  remove  all  packs  in  the
            structure from their drives.

        3.  Do not do anything if you see the message:

            OPR>
            hh:mm:ss        --Message n ABORTED--
            OPR>
            hh:mm:ss          --STRUCTURE DISMOUNT ABORTED--
                              User name, Job number, Terminal number
            OPR>

            In this case, the user has canceled his own request.
|  
|       4.  If you need to MOUNT a structure that has been DISMOUNTed but
|           not  removed  from  the drive, use the MOUNT command in OPR>.
|           Type:
|  
|                OPR>MOUNT STRUCTURE alias /Structure-Id:xx<RET>
|  
|           OPR>MOUNT STRUCTURE AP20:/Structure-Id:AP20:<RET>
|  
|           OPR>
|  
|           11:50:16            -- Mount request by operator completed --
|                             Structure AP20: mounted as alias AP20




   3.11.3  Removing a Structure with DISMOUNT

   If you need to remove a structure from the  system  (perhaps  to  have
   maintenance done on a drive, to run CHECKD on a structure, or to mount
   another structure), perform the  following  procedures  in  the  order
   given below:

        1.  Whenever OPR outputs a list of packs for  removal,  check  if
            the  structure  you want to remove is in the list.  If it is,
            you can remove all the packs  in  the  structure  before  you
            respond  to  the  current  OPR  request.  If it is not in the
            list, go to Step 2.

        2.  If the structure does not appear in the  available  list,  do
            the following with OPR commands:

            a.  Type a SET STRUCTURE str: UNAVAILABLE, so  that  no  user
                can MOUNT the structure and no batch or print request can
                be scheduled for that structure.

            b.  If you intend to run CHECKD on the structure,  also  type
                SET STRUCTURE str: IGNORED.

            c.  Type a SEND ALL message to notify all users  to  DISMOUNT
                the structure by a certain time.
|  
|           d.  If you want to remove the  structure  from  the  drive(s)
|               after the time is up, type DISMOUNT STRUCTURE str: (with)
|               REMOVAL.  However, to run CHECKD on the structure, follow
                Step 3, a.  through d.  and then type CHECKD.





                                    3-46
                         UNSCHEDULED SOFTWARE TASKS


            e.  If OPR outputs the structure name in the  list  of  packs
                available  for  removal,  immediately set one pack of the
                structure off-line.  Otherwise, go to Step 3.

            f.  Remove the packs of the structure  from  the  drives  you
                need.


        3.  If the structure  does  not  appear  in  the  list  (item  1.
            above), you can forcibly dismount the structure by taking the
            following steps.
|  
|           a.  Type SHOW STATUS STRUCTURE str name:.

            b.  Type SEND ALL to give those users of the structure a last
                warning to DISMOUNT the structure.

            c.  Type SET STRUCTURE str: UNAVAILABLE.
|  
|           d.  Type DISMOUNT STRUCTURE str: (with) REMOVAL.

            e.  Because the structure now appears in the  OPR  output  of
                packs  available  for  removal,  remove  the packs of the
                structure from the drives you need.


   When you want OPR to mount a structure that has been set IGNORED,  set
   the structure to be ACKNOWLEDGED.






































                                    3-47
                         UNSCHEDULED SOFTWARE TASKS


                            ----- Example -----

   For example, if you want to remove a structure XYZ from the system  by
   4  P.M.,  and  there are currently users of the structure, declare the
   structure UNAVAILABLE about ten minutes before 4 P.M.  Then warn users
   to DISMOUNT XYZ.

        OPR>SET STRUCTURE XYZ: UNAVAILABLE<RET>
        OPR>
        15:48:03          --STRUCTURE STATUS SET--
                        XYZ: set UNAVAILABLE for use by system

        OPR>SEND ALL FINISH USING XYZ AND DISMOUNT IT IN 10 MIN.<RET>
        OPR>
        15:48:15
        From Operator Terminal 1: FINISH USING XYZ AND DISMOUNT IT IN 10 MIN.
        OPR>


   At 4 P.M.,  type the DISMOUNT command.

|       OPR>DISMOUNT STRUCTURE XYZ: (with) REMOVAL<RET>
        16:00:34          --STRUCTURE DISMOUNTED--
                          Structure XYZ: dismounted

        OPR>
|  
|  In a CFS-20 configuration, structures can be set EXCLUSIVE for use  by
|  one  system  or SHARED for use by both systems.  You do this by typing
|  the following OPR> commands:
|  
|       SET STRUCTURE str name:EXCLUSIVE<RET>
|  
|            or
|  
|       SET STRUCTURE str name:SHARED<RET>
|  
|  If you then need to dismount and remove  a  structure  from  a  CFS-20
|  configuration, perform the following steps in the order given below:
|  
|       1.  If the structure is set  EXCLUSIVE,  perform  steps  1  to  3
|           listed  above  and add REMOVAL to the DISMOUNT STRUCTURE str:
|           command.
|  
|       2.  If the structure is set SHARED, perform the following steps:
|  
|           a.  Type a SEND ALL message  to  notify  all  users  on  your
|               system to DISMOUNT the structure by a certain time.
|  
|           b.  Type a SEND ALL message to notify all users on the  other
|               systems to DISMOUNT the structure by a certain time.
|  
|           c.  Type DISMOUNT STRUCTURE str:  (with) NO-REMOVAL  for  the
|               other systems.
|  
|           d.  Type DISMOUNT STRUCTURE  str:   (with)  REMOVAL  on  your
|               system.
|  
|           e.  Remove the structure from the system.
|  
|  
|  
|                                   NOTE
|  
|          If the optional argument,  REMOVAL  or  NOREMOVAL,  is
|          omitted,  the  structure  will default to removal on a
|          non-CFS-20 system and non-removal on a CFS-20 system.
|  
|  
|  
|  
|                           ----- Examples -----
|  
|       1.  Give the DISMOUNT STRUCTURE AP20:  (with) NO-REMOVAL command.
|  
|           OPR>DISMOUNT STR AP20: (with) NO-REMOVAL<RET>
|           OPR>
|  
|           11:49:35  <2>     -- DISMOUNT QUERY --
|                           Dismount of structure AP20: (Alias AP20:) requested.
|                           Other jobs are currently using it. Should
|                           dismount request be processed (Yes or No)?
|                           User WONG, Job 37, Terminal 10
|           OPR>RES 2 YES<RET>
|  
|           OPR>[Structure AP20 has been dismounted]
|  
|           11:49:41          -- STRUCTURE DISMOUNTED --
|                           Structure AP20 dismounted
|  
|           11:49:41          -- DISMOUNT STRUCTURE --
|           Do not remove AP20: (alias AP20:0
|           Structure is set unavailable for mounting
|           User WONG, Job 37, Terminal 10
|           DISK DRIVE INFORMATION                  DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount   Mount              Usage
|            Type   Drive    Status  Status   Count Name         Options
|            ---- --------- -------- ------   ----- ------------ -------------------------
|           *RP06 0,  ,4    Avail    Free           AP20   (1/1)
                                    3-48
                         UNSCHEDULED SOFTWARE TASKS


|       2.  Give the DISMOUNT STRUCTURE AP20:  (with) REMOVAL command.
|  
|           OPR>DISMOUNT STRUCTURE AP20: (with) REMOVAL<RET>
|           OPR>
|           11:48:30  <1>     -- DISMOUNT QUERY --
|                           Dismount of structure AP20: (Alias AP20:) requested.
|                           Other jobs are currently using it. Should
|                           dismount request be processed (Yes or No)?
|                           User WONG, Job 37, Terminal 10
|           OPR>RES 1 YES<RET>
|           OPR>[Structure AP20 has been dismounted]
|  
|           11:48:36          -- STRUCTURE DISMOUNTED --
|                           Structure AP20 dismounted
|  
|           11:48:36          -- DISMOUNT STRUCTURE --
|           Remove AP20: (alias AP20:)
|           Structure is set unavailable for mounting until it has been removed
|           User WONG, Job 37, Terminal 10
|           DISK DRIVE INFORMATION                  DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount   Mount              Usage
|            Type   Drive    Status  Status   Count Name         Options
|            ---- --------- -------- ------   ----- ------------ -------------------------
|           *RP06 0,  ,4    Avail    Free           AP20   (1/1)



   3.11.4  Canceling Mount Requests

   If you are unable to satisfy a user's mount request,  you  can  delete
   the  mount  request by giving the OPR command CANCEL MOUNT REQUEST nn.
   You should give a reason why you are canceling the mount request.  You
   can do this by giving the /REASON switch with the CANCEL command.

   For example, you cancel a mount request because there is  not  a  free
   drive.

        OPR>CANCEL MOUNT-REQUEST nn /REASON:THERE ARE NO FREE DRIVES<RET>

   where "nn" is the request number assigned to the mount request.


                            ----- Example -----

        Cancel mount request 204.

        OPR>
        OPR>CANCEL MOUNT-REQUEST 204/REASON:There are no disk drives available<RET>
        OPR>
        11:49:15          --Mount Request 204 Canceled--
















                                    3-49
                         UNSCHEDULED SOFTWARE TASKS


   3.11.5  Setting Disk Drives Available or Unavailable

   You can set a disk drive UNAVAILABLE for assignment by the  system  by
   giving the following OPR command:

        OPR>SET DISK-DRIVE CHANNEL n CONTROLLER n DRIVE n UNAVAILABLE<RET>

   where:

        CHANNEL n      specifies the channel number of the disk drive.

|       CONTROLLER n   specifies the controller for the disk drive.

        DRIVE n        specifies the physical unit number of the drive.

   When you give this command, the system prints:

        ENTER TEXT AND TERMINATE WITH ^Z

   The system now waits for you to type a reason explaining why  you  are
   setting  the  drive  unavailable.  A reason you would set a disk drive
   unavailable is that there was a hardware problem with the disk  drive.
|  It  is  also recommended that you set the structures on the disk drive
|  UNAVILABLE when you set the disk drive UNAVAILABLE.

   To set a disk drive AVAILABLE for assignment by the system,  give  the
   following command:

        OPR>SET DISK-DRIVE CHANNEL n DRIVE n AVAILABLE<RET>



                            ----- Examples -----

        1.  Set disk drive 4  on  channel  1  UNAVAILABLE  because  of  a
            hardware problem.

            OPR>SET DISK-DRIVE CHANNEL 1 DRIVE 4 UNAVAILABLE<RET>
            ENTER TEXT AND TERMINATE WITH ^Z
            DISK DRIVE 4 HAS A HARDWARE PROBLEM^Z
                                                !
                                             <CTRL/Z>

            OPR prints:

            OPR>
            17:30:39        --Disk Drive Set Unavailable--
                     Chan 1 Drive 4 set unavailable for mounting by MOUNTR
            OPR>

        2.  Set disk drive 4 on channel 1 AVAILABLE  after  the  hardware
            problem has been corrected.

            OPR>SET DISK DRIVE CHANNEL 1 DRIVE 4 AVAILABLE<RET>

            OPR prints:

            17:32:43        --Disk Drive Set Available--
                      Chan 1 Drive 4 set available for mounting by MOUNTR
            OPR>






                                    3-50
                         UNSCHEDULED SOFTWARE TASKS


|  3.12  SETTING THE PORT CI AVAILABLE/UNAVAILABLE
|  
|  If your installation uses the CI for HSC50 disks or CFS, the  CI  port
|  is AVAILABLE by default.  There may be times, however, when the System
|  Manager determines that the CI port must be set UNAVAILABLE.   Setting
|  the  CI port UNAVAILABLE ends the system's use of the CI and any disks
|  that use the CI.
|  
|  Most often, the CI port is set UNAVAILABLE when  there  is  a  serious
|  hardware  problem and it is necessary to run diagnostics.  Setting the
|  CI port UNAVAILABLE is not a standard  procedure  and  should  not  be
|  performed without approval from the System Manager.
|  
|  To set the CI port UNAVAILABLE, perform the following steps:
|  
|       1.  Type SET PORT CI UNAVAILABLE <RET>.
|  
|       2.  Once you see the message that indicates which structures  are
|           affected,  send  a system message telling users when you plan
|           to set the CI  port  UNAVAILABLE  and  which  structures  are
|           affected.
|  
|       3.  Respond  to  the  message  indicating  which  structures  are
|           affected  by  typing RESPOND <RESPONSE NUMBER> and one of the
|           following:
|  
|           PROCEED - The  PROCEED  response  begins  the  SET  PORT   CI
|           UNAVAILABLE  procedure.  PROCEED is the standard response for
|           setting the CI port UNAVAILABLE.
|  
|           FORCE - The FORCE response dismounts all structures and  sets
|           the   CI   UNAVAILABLE   with  no  further  operator  action.
|           Structures are dismounted whether or not they are in use.
|  
|           ABORT - The  ABORT  response  cancels   the   SET   PORT   CI
|           UNAVAILABLE  procedure.   If  the  SET  PORT  CI  UNAVAILABLE
|           procedure is aborted at this time, system  operation  is  not
|           changed.
|  
|  EACH STRUCTURE AND DISK-DRIVE IS NOW HANDLED ON AN  INDIVIDUAL  BASIS.
|  DEPENDING ON THE MESSAGE YOU SEE, DO ONE OF THE FOLLOWING:
|  
|       4.  If a structure is on a dual-ported disk-drive:
|  
|           a.  You receive  a  message  indicating  that  the  drive  is
|               dual-ported.   Respond to the message by setting the port
|               switch to a single port following standard procedures and
|               then type one of the following:
|  
|               PROCEED - The PROCEED reponse  indicates  that  the  port
|               switch is set to one system and is no longer dual-ported.
|               The process of setting the CI port UNAVAILABLE continues.
|               You  DISMOUNT  any mounted structure by responding to the
|               request for DISMOUNT.
|  
|               FORCE - The FORCE response indicates that the  status  of
|               the disk drive should be ignored.  The port switch is not
|               changed but the process of  setting  the  CI  UNAVAILABLE
|               continues.   Use  caution  with  this  response.  CFS may
|               disallow use of a dual-ported disk if the FORCE  response
|               is given.  Any MOUNTed structure is DISMOUNTed.
|  
|               ABORT - The ABORT  response  terminates  the  process  of
|               setting  the  CI  port UNAVAILABLE.  All previous actions
|               remain, but the CI port remains AVAILABLE.

                                    3-51
                         UNSCHEDULED SOFTWARE TASKS


|       5.  If the structure is mounted on a disk drive connected to  the
|           CI:
|  
|           You have to DISMOUNT the structure.  DISMOUNT  the  structure
|           by responding to the request for DISMOUNT.
|  
|       6.  If the structure is not connected to a drive on the CI and is
|           not dual-ported:
|  
|           The structure is  set  EXCLUSIVE  to  your  system.   If  the
|           structure  cannot  be  set  EXCLUSIVE  by the system, you are
|           prompted for an action.  You have to DISMOUNT  the  structure
|           (with) REMOVAL from the other systems before the structure is
|           set EXCLUSIVE to your system.
|  
|       7.  When all structures  are  dismounted,  all  dual-ported  disk
|           drives  set,  and necessary structures are set EXCLUSIVE, you
|           see a message indicating that the CI port is set UNAVAILABLE.
|  
|       8.  The CI port  remains  UNAVAILABLE  until  you  set  the  port
|           AVAILABLE.
|  
|       9.  If at any point during the process, you refuse to dismount  a
|           structure or handle a dual-ported disk drive, the SET PORT CI
|           UNAVAILABLE procedure is aborted.  All previously  dismounted
|           structures   remain   dismounted  but  the  CI  port  remains
|           AVAILABLE.
|  
|  
|  
|          1.  At  any  point  during  the  procedure,  you   can
|              dismount  all  structures  at  one  time using the
|              DISMOUNT procedures in Section  3.11.3.   In  this
|              case,  when  you  type  PROCEED during the CI port
|              procedure, you are prompted  only  for  structures
|              that have been overlooked.
|  
|          2.  At any point during the procedure, you can set all
|              drives  that  are  dual-ported  to  a single port.
|              When  you  type  PROCEED  during   the   CI   port
|              procedure,  you  are only prompted for drives that
|              have been overlooked.
|  
|          3.  If you type the SET PORT  CI  UNAVAILABLE  command
|              and  your  installation  does  not  have a CI, you
|              receive an error message.
|  
|  
|  
|  
|  
|                           ----- Examples -----
|  
|       1.  Set the PORT CI Unavailable using the Proceed response.
|  
|           OPR>SET PORT CI UNAVAILABLE <RET>
|           OPR>
|           12:14:48  <1>     -- Port Unavailable Procedure Notice --
|           Setting CI Port 7 UNAVAILABLE
|  
|           The following structure(s) need to be dismounted or removed.
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount    Mount              Usage
|            Type   Drive    Status   Status   Count Name         Options

                                    3-52
                         UNSCHEDULED SOFTWARE TASKS


|            ---- --------- --------  ------   ----- ------------ --------------------------
|           *RP06 0,  ,2    Avail     Mounted  1     AP20   (1/1)
|            RP06 7,00,1    Avail     Mounted  1     DALE   (1/1)
|            RA81 7,07,5    Avail     Mounted  1     EXODUS (1/1)
|            RA60 7,07,254  Avail     Mounted  1     DRV354 (1/1)
|            RA81 7,07,18   Avail     Mounted  0     DRV18  (1/1)
|                 NOTE: Channel 7 indicates CI channel
|                 (*) indicates potential external port
|  
|           Type 'RESPOND <number> option' where 'option' is one of the
|           following:
|  
|                ABORT    To cancel Port Unavailable Procedure.
|                PROCEED  To follow  normal  port  unavailable  procedure
|                         verifying each structure change.
|                FORCE    To proceed with no further  notification.   Use
|                         this option with extreme caution.
|  
|           OPR>RESPOND 1 PROCEED <RET>
|           OPR>
|           12:15:33          -- Port Unavailable Procedure Notice --
|                           Structure CHIP set exclusive due to port unavailable operation
|           OPR>
|           12:15:34  <2>     -- Port Unavailable Procedure Notice --
|  
|           The following dual ported disk  drive  must  be  resolved  to
|           continue SET PORT CI UNAVAILABLE:
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount    Mount              Usage
|            Type   Drive    Status   Status   Count Name         Options
|            ---- -------   --------  ------   ----- ------------ -------------------------
|           *RP06 0,  ,2    Avail     Mounted  1     AP20   (1/1)
|                 (*) indicates potential external port
|  
|           After the dual-ported disk has been  resolved  Type  'RESPOND
|           <number> option' where 'option' is one of the following:
|  
|                ABORT    To cancel Port Unavailable Procedure.
|                PROCEED  The  drive  has  been  single  ported  to  this
|                         system.
|                FORCE    To proceed  and  ignore  the  porting  of  this
|                         drive.  The drive will be set unavailable.
|  
|           OPR>RESPOND 2 PROCEED <RET>
|           OPR>
|           12:17:49  <3>     -- Port Unavailable Procedure Notice --
|  
|           The following dual-ported disk  drive  must  be  resolved  to
|           continue SET PORT CI UNAVAILABLE:
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk     Mount   Mount              Usage
|            Type   Drive    Status   Status   Count Name         Options
|            ---- --------- --------  ------   ----- ------------ -------------------------
|           *RP07 1,  ,0    Avail     Offline
|                 (*) indicates potential external port
|  
|           After the dual ported disk has been  resolved  Type  'RESPOND
|           <number> option' where 'option' is one of the following:
|  
|                ABORT    To cancel Port Unavailable Procedure.
|                PROCEED  The  drive  has  been  single  ported  to  this
|                         system.
|                FORCE    To proceed  and  ignore  the  porting  of  this

                                    3-53
                         UNSCHEDULED SOFTWARE TASKS


|                         drive.  The drive will be set unavailable.
|  
|           OPR>RESPOND 4 FORCE
|           OPR>
|           12:19:22          -- Disk Drive Set Unavailable --
|                           Channel 1 Drive 0 set unavailable for mounting by MOUNTR
|           OPR>
|           12:19:23          -- Disk Drive Set Unavailable --
|                           Channel 7 Controller 0 Drive 1 set unavailable for mounting by MOUNTR
|  
|           12:19:23  <5>   -- Port Unavailable Procedure Notice --
|  
|           Dismount of structure DALE: (Alias DALE:) requested.
|           Other jobs are currently using it.
|           Should dismount request be processed (Yes or No)?
|           User WONG, Job 3, Terminal 1
|  
|           OPR>RESPOND 5 YES
|           OPR>
|  
|           12:20:00       -- DISMOUNT STRUCTURE SUCCEEDED AS PART OF PORT OPERATION --
|                        Structure DALE: (alias DALE:) dismounted
|                        User WONG, Job 3, Terminal 1
|  
|           12:20:01       -- Disk Drive Set Unavailable --
|                        Channel 7 Controller 7 Drive 5 set unavailable for mounting by MOUNTR
|  
|           12:20:01  <6>   -- Port Unavailable Procedure Notice --
|                                    .
|                                    .
|                                    .
|  
|           12:21:24       -- Port Unavailable Operation Completed --
|                        Port Set Unavailable
|  
|       2.  Set the PORT CI AVAILABLE
|  
|           OPR>SET PORT CI AVAILABLE <RET>
|           OPR>
|           02:22:10       -- Port Available Operation Completed --
|                        The following disk drive(s) have been returned to available:
|                        Channel 1 Drive 0 set to available
|                        Channel 7 Controller 0 Drive 1 set available
|                        Channel 7 Controller 7 Drive 5 set available
|                        Channel 7 Controller 7 Drive 376 set available
|                        Channel 7 Controller 7 Drive 22 set available
|                        Port set available
|  























                                    3-54
                         UNSCHEDULED SOFTWARE TASKS


   3.12.1  Displaying Disk Drive Status

   You can display the status of the disk drives  with  the  SHOW  STATUS
   DISK-DRIVES  command.   With  this command, you can specify one of the
   following:

        1.  The /ALL switch, to display both FREE and MOUNTED disk drives
            and their current status

            OPR>SHOW STATUS DISK-DRIVES /ALL

        2.  The /FREE switch, to display all disk drives  that  are  FREE
            for mounting

            OPR>SHOW STATUS DISK-DRIVES /FREE

        3.  The /MOUNTED switch, to display those disk  drives  that  are
            currently mounted and being accessed

            OPR>SHOW STATUS DISK-DRIVES /MOUNTED

   If you do not specify any switch, the SHOW STATUS DISK-DRIVES  command
   defaults to /ALL.

|  The output from the SHOW STATUS  DISK-DRIVES  command  with  the  /ALL
|  switch specified displays:

        1.  The type of disk drive (RP04,  RP06,  RP07,  RP20,  RA60,  or
|           RA81).   An  asterisk (*) next to the type of drive indicates
|           that the disk drive is potentially dual-ported.

        2.  The channel, controller, and drive number.
|  
|       3.  The state of the disk-drive (Available/Unavailable).
|  
|       4.  The mount status of the disk drive.
|  
|       5.  The count number of users who have requested a mount  of  the
|           structure.
|  
|       6.  The name of the structure on the  drive  and  the  number  of
|           packs in the structure.
|  
|       7.  Any usage options, if these are specified.
|  
|  Information for both FREE and MOUNTED DISK-DRIVES is  shown  with  the
|  /ALL switch specified.
|  
|  The OUTPUT from the SHOW STATUS DISK-DRIVES  command  with  the  /FREE
|  switch  specified, displays information about drives that are free for
|  mounting.  There may be a structure on the drive but the structure has
|  not been mounted with the MOUNT command.
|  
|  The output from the SHOW STATUS DISK-DRIVES command with the  /MOUNTED
|  switch  specified displays information about drives that are currently
|  mounted.



                            ----- Examples -----

        1.  Specify the SHOW STATUS DISK-DRIVES command  with  the  /FREE
            switch.

            OPR>SHOW STATUS DISK-DRIVE /FREE<RET>
|           OPR>
|           12:11:15          -- Disk Drive Status --
|  
|                                   FREE DRIVES


                                    3-55
                         UNSCHEDULED SOFTWARE TASKS


|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk     Mount   Mount              Usage
|            Type   Drive    Status   Status   Count Name         Options
|            ---- --------- --------  ------   ----- ------------ -------------------------
|           *RP06 0,  ,1    Avail     Offline
|           *RP07 1,  ,0    Avail     Free           FIAT   (1/1)
|            RP06 7,01,1    Avail     Free           CHIP   (1/1)
|            RA60 7,07,254  Avail     Offline
|            RA81 7,08,18   Avail     Free           DRV18   (1/1)
|            RA81 7,08,5    Avail     Offline
|                 NOTE: Channel 7 indicates CI channel
|                 (*) indicates potential external port






















































                                    3-56
                         UNSCHEDULED SOFTWARE TASKS


        2.  Specify the SHOW STATUS DISK-DRIVES command with the /MOUNTED
            switch.

|           OPR>SHOW STATUS DISK-DRIVE /MOUNTED<RET>
|           OPR>
|           12:11:28          -- Disk Drive Status --
|  
|                                   MOUNTED DRIVES
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk    Mount    Mount              Usage
|            Type   Drive    Status   Status   Count Name         Options
|            ---- --------- --------  ------   ----- ------------ -------------------------
|            RP06 0,  ,0     Avail    Mounted  0     DALE   (1/1)
|           *RP06 0,  ,2     Avail    Mounted  1     AP20   (1/1)
|            RA81 7,07,5     Avail    Mounted  1     EXODUS (1/1)
|                 NOTE: Channel 7 indicates CI channel
|                 (*) indicates potential external port
|  
|  
|  
|  
|  3.12.2  Displaying Structure Status
|  
|  You can  display  the  status  of  structures  with  the  SHOW  STATUS
|  STRUCTURE  command.   With  this  command,  you can specify one of the
|  following:
|  
|       1.  The  /ALL  switch  to  display  both  MOUNTED  and  UNMOUNTED
|           structures and their current status.
|  
|                OPR>SHOW STATUS STRUCTURE /ALL
|  
|       2.  The /MOUNTED  switch  to  display  all  structures  that  are
|           currently mounted.
|  
|                OPR>SHOW STATUS STRUCTURE /MOUNTED
|  
|       3.  The /UNMOUNTED switch to display all structures that are free
|           for mounting.
|  
|                OPR>SHOW STATUS STRUCTURE /UNMOUNTED
|  
|       4.  The str: name argument to display information about a  single
|           structure.
|  
|                OPR>SHOW STATUS STRUCTURE str:
|  
|  If you do  not  specify  any  switch  or  argument,  the  SHOW  STATUS
|  STRUCTURE command defaults to /ALL.
|  
|  The output from the SHOW STATUS STRUCTURE command with the /ALL switch
|  specified displays:
|  
|       1.  The Alias name for the structure.
|  
|       2.  The physical name of the structure, if there is one.
|  
|       3.  The mount status of the structure (mounted or unmounted).
|  
|       4.  The count of the number of users who have requested  a  mount
|           of the structure.




                                    3-57
                         UNSCHEDULED SOFTWARE TASKS


|       5.  The availability of the structure.
|  
|       6.  The file count of the structure.
|  
|       7.  The    access    to    the    structure    (SHARED/EXCLUSIVE,
|           DOMESTIC/FOREIGN).
|  
|       8.  The     accounting     status      of      the      structure
|           (REGULATED/UNREGULATED)
|  
|  The output from the SHOW STATUS STRUCTURE command with the  /UNMOUNTED
|  switch  specified, displays information about structures that are free
|  for mounting.
|  
|  The output from the SHOW STATUS STRUCTURE command  with  the  /MOUNTED
|  switch  specified,  displays  information  about  structures  that are
|  currently mounted.
|  
|  The output from the SHOW STATUS STRUCTURE command with the str:   name
|  argument specified, displays:
|  
|       1.  Structure information about the single  structure,  including
|           alias,   name,   mount   status,  mount  count,  file  count,
|           availability, access, and accounting.
|  
|       2.  Disk  drive  information  for  the  drive(s)  on  which   the
|           structure   is   mounted.    This  includes  type  of  drive,
|           channel-controller-drive, availability of  the  drive,  mount
|           status, mount count, name of structure and number of packs in
|           the structure, and usage options.
|  
|       3.  A list of users who have mounted the structure.
|  
|       4.  A list of users who are accessing the structure.
|  
|       5.  A list of users who are connected to the structure.
|  
|                                   NOTE
|  
|          If you are requested to  remove  information  about  a
|          structure  from the structure tables, use the UNDEFINE
|          STRUCTURE command.  For information  on  the  UNDEFINE
|          STRUCTURE  command,  refer  to  the TOPS-20 Operator's
|          Command Language Reference Manual
|  
|  
|  
|                           ----- Examples -----
|  
|       1.  Specify the SHOW STATUS STRUCTURE command with  the  /MOUNTED
|           switch.
|  
|           OPR>SHOW STATUS STRUCTURE /MOUNTED <RET>
|           OPR>
|           20:14:04          -- Structure status --
|  
|                           MOUNTED STRUCTURES
|  
|                                 ATTRIBUTES:
|                         Mount   Mount File
|           Alias  Name   State   Count Count  Status           Access         Accounting
|           ------ ------ ------- ----- -----  --------   -------------------- -----------
|           DALE   DALE   Mounted  0     0     Avail      Shared               ## Primary Public Structure ##
|           AP20   AP20   Mounted  1     51    Avail      Shared               Foreign Regulated


                                    3-58
                         UNSCHEDULED SOFTWARE TASKS


|           EXODUS EXODUS Mounted  1     2     Avail      Shared               Foreign Regulated
|  
|       2.  Specify the SHOW STATUS STRUCTURE command with the /UNMOUNTED
|           switch.
|  
|           OPR>SHOW STATUS STRUCTURE /UNMOUNTED <RET>
|           OPR>
|           20:14:50          -- Structure status --
|  
|                         UNMOUNTED STRUCTURES
|  
|                                  ATTRIBUTES:
|                         Mount   Mount File
|           Alias  Name   State   Count Count  Status           Access         Accounting
|           ------ ------ ------- ----- -----  --------   -------------------- -----------
|           AP20                               Avail      Shared     Domestic  Regulated
|           DUMP                               Avail      Shared     Domestic  Unregulated
|           FARK                               Avail      Shared     Domestic  Unregulated
|           SIXOH                              Avail      Shared     Domestic  Unregulated
|           WARPIG                             Avail      Shared     Domestic  Unregulated
|           KL2136                             Avail      Shared     Domestic  Regulated
|           BASIC                              Avail      Shared     Domestic  Regulated
|           CBL74                              Avail      Shared     Domestic  Regulated
|           DLM62                              Avail      Shared     Domestic  Regulated
|  
|       3.  Specify the SHOW STATUS STRUCTURE command with the str:  name
|           argument.
|  
|           OPR>SHOW STATUS STRUCTURE DALE: <RET>
|           12:11:15          -- Structure status --
|  
|                                 ATTRIBUTES:
|                                       File
|           Alias  Name   State   Count Count  Status           Access         Accounting
|           ------ ------ ------- ----- -----  --------   -------------------- -----------
|           DALE   DALE   Mounted  0           Avail      Shared               ## Primary Public Structure ##
|  
|                    Disk information pertaining to mounted structure
|  
|           DISK DRIVE INFORMATION                   DISK PACK INFORMATION
|                 Chan-Cont   Disk     Mount   Mount              Usage
|            Type   Drive    Status   Status   Count Name         Options
|            ---- --------- --------  ------   ----- ------------ -------------------------
|            RP06 0,  ,0    Avail     Mounted  0     DALE   (1/1)
|  
|           Users who have MOUNTed this structure:
|           None.
|  
|           Users who are are ACCESSing this structure:
|           KOVALCIN, WONG.
|  
|           Users who are CONNECTed to this structure:
|           OPERATOR, KOVALCIN, WONG.
|  



   3.13  EXAMINING MOUNT-REQUESTS IN THE QUEUE

   Whenever a user submits a request  for  a  tape  or  disk  mount,  the
   request  is  placed  in  a  queue  where it waits for your response to
   either mount the tape or disk or delete the mount request.  To examine
   the  tape  and disk mount queue at any time, give the OPR command SHOW
   QUEUES MOUNT-REQUESTS.


                                    3-59
                         UNSCHEDULED SOFTWARE TASKS


   The output of the SHOW QUEUES MOUNT-REQUESTS command displays:
|  
|       1.  The name of the tape or disk volume
|  
|       2.  The status of the request
|  
|       3.  The type of request (Tape or Disk)
|  
|       4.  The density of the request
|  
|       5.  The write access requested
|  
|       6.  The number of the request
|  
|       7.  The number of the user's job who made the request
|  
|       8.  The name of the user
|  
|       9.  The label status of a tape (Labeled or unlabeled)
|  
   The status column displays the following:

        1.  Waiting, if a tape or disk request is waiting to be satisfied

        2.  A tape drive name (for example, MTA3:),  if  the  request  is
            currently for a tape drive

        3.  Dismount, if a tape or disk is being dismounted

        4.  Aborted, if a tape mount request has been deleted or  aborted
            and  the user has not yet given a dismount command to release
            the logical tape drive (MTn:)












































                                    3-60
                         UNSCHEDULED SOFTWARE TASKS


                            ----- Example -----

   Give the SHOW QUEUES MOUNT-REQUESTS command  to  display  the  current
   tape and disk requests in the queue.

|  OPR>SHOW QUEUES MOUNT-REQUESTS<RET>
|  
|  OPR>
|  11:37:10                -- System Queues Listing --
|  
|  Volume    Status   Type  Dens   Write    Req#  Job#             User
|  -------  --------  ----  ----  ------   -----  ----  -------------------------
|  JCR      Waiting   Tape  Defa  Locked       1   143  JROSSELL
|     Volume-set: JCR  Tape is unlabeled
|  JCR      Waiting   Tape  Defa  Locked       2   143  JROSSELL
|     Volume-set: JCR    Tape is labeled
|  There are 2 requests in the queue
|  
|  OPR>



   3.14  CREATING A STRUCTURE DURING TIMESHARING

   During timesharing, you can create a structure by doing the following:

        1.  Obtain the number of formatted  disk  packs  needed  for  the
            structure.

        2.  Place the packs on any available  disk  drives  and  put  the
            drives on-line.

        3.  Type PUSH to OPR.

        4.  Run CHECKD.

        5.  Type CREATE structure name to CHECKD.

        6.  Answer the questions from CHECKD.

        7.  Type EXIT to CHECKD.

        8.  MOUNT STRUCTURE str:

   If this structure is to be used on a system other than a 2060, perform
   steps 9 through 11.  Otherwise, proceed at step 12.

        9.  Run CHECKD.
|  
|      10.  Type DISABLE LARGE-DIRECTORIES

       11.  Type EXIT to CHECKD.

       12.  Type DISABLE.

       13.  Type POP to return to OPR command level.

   If CHECKD is a subjob of PTYCON at your installation, you need only to
   CONNECT to the CHECKD subjob and perform Steps 5 through 8 above.

|  If your installation is part of a CFS-20 configuration, CHECKD may not
|  be  able  to  set  the structure Exclusive.  If this happens, you must
|  dismount the structure from the  other  systems  using  it.   Use  the
|  dismount  procedures  for  CFS-20  systems  in  Section  3.11.3.  Then
|  reissue the CHECKD command.











                                    3-61
                         UNSCHEDULED SOFTWARE TASKS


                                    NOTE

           When  you  create  a  structure,   you   destroy   any
           information  that  was previously on the disk packs in
           the structure.  If you want to  save  any  information
           from  an  old  structure, run DUMPER to save the files
           before you create the new structure on the  same  disk
           packs.

   When you are running CHECKD to create  a  structure,  first  type  the
   CREATE  command  and  specify  the  name  of the structure you want to
   create.  This  name  is  a  physical  identification  written  on  the
   structure by CHECKD.

   CHECKD then asks a series of questions.  For  each  question  you  can
   type ?  to get a help message.  The questions are:

   ENTER ALIAS:

        Type a 1 to 6 character alphanumeric name for the alias.  If  you
        do  not type a number, or if a structure has the same name as the
        structure you are creating, type the structure name as the alias.
        If another structure of the same name is mounted, press RETURN to
        get the default alias, CHECKD.  If another structure  is  mounted
        with the name CHECKD, use another name.  The alias is a temporary
        name that the system uses for your structure.

   HOW MANY UNITS IN THIS STRUCTURE?

        Type the number of disk packs that will be in the structure.

   CHANNEL , CONTROLLER AND UNIT NUMBER FOR LOGICAL UNIT n:

        This question is asked for each unit n in the structure.  Type in
        a  channel  number,  followed  by  a comma, the controller number
        followed by a comma, and a unit (or  drive)  number  to  indicate
        where unit n is mounted.

        The help message for this question is similar to:

        PAIR OF OCTAL NUMBERS FROM ONE OF THE FOLLOWING:

        TYPE  CHANNEL  CONTROLLER   UNIT   STRUCTURE NAME  LOGICAL UNIT
        ----  -------  ----------   ----   --------------  ------------ 
        RP06        1      -1          0   OFF-LINE
        RP06        1      -1          1   OFF-LINE
        RP04        1      -1          2   STR2            0 (1 OF 1)
        RP06        1      -1          5   OFF-LINE

        This output lists each drive that is available.  Thus, each  disk
        pack  for the structure you are creating must be on some drive in
        the list.  A structure name appears in the list if a disk pack is
        on-line and was formerly part of a structure.  Do not specify the
        drive for that pack if you still want data from that structure.

        If the help message does not eliminate confusion over channel and
        drive   correspondence,   consult   your  DIGITAL  Field  Service
        Representative.








                                    3-62
                         UNSCHEDULED SOFTWARE TASKS


   NUMBER OF PAGES TO ALLOCATE FOR SWAPPING?

        Type 0 if the structure is never going to be used as  the  public
        structure,  PS:.   Press ESCape to set the default value.  Type a
        decimal number between 2000 and 40000 to specify a number.

        If you have any question about the amount of swapping space,  see
        your  System Manager.  Note that swapping space is necessary on a
        public structure, but the default value  is  usually  sufficient.
        If  past  experience  has shown many SWAPPING SPACE LOW messages,
        you may need more swapping space.  Increasing the swapping  space
        here,  however,  may  not  be  sufficient,  because  the  maximum
        swapping space allocated within  the  monitor  takes  precedence.
        Thus, you might need a larger monitor or a tailored monitor.

   NUMBER OF PAGES TO ALLOCATE FOR THE FRONT END FILE SYSTEM?

        Type 0 if the structure  is  never  to  be  used  as  the  public
        structure,  PS:.   Press  ESCape  to get the default; the default
        should always be sufficient for the front-end file system.

   OWNER NAME?

        Type a 1- to 12-character alphanumeric name for the owner of  the
        structure.

   IS THIS A SYSTEM STRUCTURE FOR STARTUP?

        If this structure is to be used for  system  startup,  type  YES.
        Otherwise, type NO.

                                      NOTE

                The  following  question  only  appears  if   you
                answered YES to the above question.

   SERIAL NUMBER OF CPU STARTED FROM THIS STRUCTURE?

        Enter the serial number of the system this structure will be used
        on.

   When CHECKD finishes the CREATE function, it prompts again.  When  you
   are finished with CHECKD, type EXIT.


                            ----- Example -----

   In the following example, structure QWERTY  is  created  as  a  1-pack
   structure.  An ESCape was pressed to get the defaults for the swapping
   space allocation and the front-end file system.  Therefore, QWERTY can
   be used as a public structure.















                                    3-63
                         UNSCHEDULED SOFTWARE TASKS


   OPR>PUSH<RET>

    TOPS-20 Command Processor 6(772)
   @ENABLE<RET>
   $CHECKD<RET>
   CHECKD>CREATE (NEW FILE SYSTEM FOR) QWERTY<RET>
   ENTER ALIAS: QWERTY<RET>
   HOW MANY UNITS IN THIS STRUCTURE? 1<RET>
   CHANNEL , CONTROLLER, AND UNIT NUMBER FOR LOGICAL UNIT 0: ?      

   PAIR OF OCTAL NUMBERS FROM ONE OF THE FOLLOWING:

   TYPE  CHANNEL  CONTROLLER   UNIT   STRUCTURE NAME  LOGICAL UNIT
   ----  -------  ----------   ----   --------------  ------------ 

   RP06        1      -1          2   STR2            0 (1 OF 1)


   CHANNEL , CONTROLLER AND UNIT NUMBER FOR LOGICAL UNIT 0: 1,-1,2<RET>
   NUMBER OF PAGES TO ALLOCATE FOR SWAPPING? 3050<RET>
   NUMBER OF PAGES TO ALLOCATE FOR THE FRONT END FILE SYSTEM? 950<RET>
   OWNER NAME? KIRSCHEN<RET>
   IS THIS A SYSTEM STRUCTURE FOR STARTUP? NO<RET>

   [QWERTY: MOUNTED AS QWERTY:]

   [DISMOUNTING STRUCTURE - QWERTY:]

   CHECKD>EXIT<RET>
   $DISABLE<RET>
   @POP<RET>
   OPR>

                         ----- Error Messages -----

   ?INVALID CONFIRMATION

        You typed an invalid character within or after an argument.

   ? INVALID DECIMAL NUMBER

        You did not type a valid decimal number for the argument.

   ? NAME STRING GREATER THAN 12. CHARACTERS

        You typed more than 12 decimal characters for the owner name.

   ?WHEEL OR OPERATOR CAPABILITY REQUIRED

        You must have WHEEL or OPERATOR capability enabled.   Use  a  job
        logged  in under OPERATOR, which should have OPERATOR capability,
        and type ENABLE before you run CHECKD.














                                    3-64
                         UNSCHEDULED SOFTWARE TASKS


   3.15  COMMUNICATING WITH USERS

   Timesharing and batch users often need  to  communicate  with  you  to
   perform  various  tasks,  to  obtain  help,  or to send messages.  The
   following sections tell you how to:

        1.  Respond to PLEASE requests with OPR

        2.  Help another user with SEND

        3.  Mail a message to a user with MAIL

        4.  Read any messages sent to you with RDMAIL




   3.15.1  Answering PLEASE Requests with OPR

   When a user sends a message  with  PLEASE,  you  receive  from  OPR  a
   message at the console terminal that is time-stamped and has a message
   number enclosed in angle brackets.  You should then answer the request
   with the RESPOND command in OPR.  If you are not at OPR command level,
   you must connect to the subjob running OPR  in  PTYCON  to  issue  the
   RESPOND command.

   If the user requested some form of physical action, such  as  changing
   the  forms  on  the  line  printer,  you  can make the change and then
   respond to let the user know that the change has been made.   You  can
   type  any response to this message.  However, you should pay attention
   to what the user said in the line of text and try to do what the  user
   requested.   If  further  communication  is necessary, you can use the
   TALK command, the MAIL program, or issue the SEND command in OPR.   If
   the request cannot be satisfied, you can respond with a refusal and/or
   text to explain why the request cannot be satisfied.

   The format of the request from the user appears as follows:

        hh:mm:ss    <n>    --Message from Timesharing User--
                         Job number User at Terminal nnn
                         one or more lines of text (or)
                         PLEASE line of text

   This request contains the word PLEASE if  the  user  sent  a  one-line
   message  with  the  PLEASE  program,  or the line contains one or more
   lines of text ending with a ^Z (Control Z).  This  message  can  be  a
   request  for action, a question, or a comment.  The user who sends you
   a PLEASE message should include a word or two for you  to  include  in
   the  RESPOND command to indicate that the request or question has been
   completed.  If the user does not include any word(s) for  the  RESPOND
   command,  you  can  RESPOND  in any way desired to answer the message.
   With some requests, this line  might  be  repeated  to  allow  you  to
   respond with different words for different circumstances.













                                    3-65
                         UNSCHEDULED SOFTWARE TASKS


                            ----- Examples -----

        1.  A user might ask when timesharing ends.  The message  appears
            as follows:

            OPR>
            12:32:09    <3>    --Message from Timesharing User--
                             JOB 32 BROWN at Terminal 114
                             PLEASE WHEN WILL TIMESHARING END?
                             RESPOND HH:MM:SS
            OPR>

            And, you can respond as follows:

            OPR>RESPOND 3 18:00:00<RET>
            OPR>


        2.  The following example shows what  appears  on  the  terminal,
            running  OPR  as  a  subjob  of  PTYCON  after a user sends a
            multi-line message with PLEASE.

            OPR>
            14:54:01    <13>    --Message from Timesharing User--
                              JOB 12 LATTA at Terminal 21
                              LOAD NARROW FORMS ON PRINTER 2
                              IF YOU ARE UNABLE, ABORT BATCH REQUEST 198
                              RESPOND OK WHEN DONE
                              RESPOND REFUSE IF CAN'T BE DONE
                              ^Z
            OPR>
            OPR>RESPOND 13 REFUSE<RET>
            OPR>ABORT BATCH-STREAM 1 /REQUEST-ID:198<RET>
            OPR>
            14:56:50        Batch-stream 1     JOB #66     --ABORTED--
                            Job TEST Req #198 for LATTA
                            No Reason Given with ERROR-PROCESSING

            OPR>




   3.15.2  Talking to Another User Immediately with SEND

   If a user indicates that help is needed from you to  use  some  system
   feature,  you can help the user with the OPR command SEND.  Connect to
   OPR from PTYCON and then give either of the following commands:

        OPR>SEND JOB n message<RET>

   or

        OPR>SEND TERMINAL n message<RET>












                                    3-66
                         UNSCHEDULED SOFTWARE TASKS


   where n is the number of the timesharing or batch  job  in  the  first
   command above, or the number of the user's terminal line in the second
   command above.

   The SEND command allows you the option of including the message either
   in  the  SEND  command  string  or  as  multiple lines terminated by a
   CTRL/Z.

   The SEND command does not link your job or terminal to the user's  job
   or  terminal.   If  the  user  is  waiting for input to a program, the
   message sent appears on the user's terminal, but it  does  not  affect
   the program he is running.



                            ----- Examples -----

        1.  Tell a user that a task he requested is now complete.

            OPR>SEND JOB 27<RET>
            ENTER TEXT AND TERMINATE WITH ^Z
            THE UPDATED FORTRAN SOURCE LIBRARY IS NOW ONLINE<RET>
            YOU MUST CONNECT TO MISC:^Z
                                      !
                                   <CTRL/Z>
            OPR>

        2.  Send a message to terminal 15 to notify  the  user  that  his
            batch requests are being held.

            OPR>SEND TERMINAL 15 YOUR BATCH REQUESTS ARE BEING HELD<RET>

            OPR>


                             ----- Hints -----

   Refer to the TOPS-20 Operator Command Language Reference Manual for  a
   complete description of the SEND command.

   If you need to link your terminal with the user's  terminal,  use  the
   TOPS-20  ADVISE  or  TALK  command.   Refer  to  the  TOPS-20 Commands
   Reference Manual for a description of these two commands.























                                    3-67
                         UNSCHEDULED SOFTWARE TASKS


   3.15.3  Mailing a Message for a User to Read Later

   You can send a message to one or more users by doing the following:

        1.  Type MAIL.

        2.  After TO:  type the names  of  the  users  to  whom  you  are
            mailing the message.

        3.  After CC:  type the names of  the  users  to  whom  you  want
            copies  of the message sent, or simply press RETURN if you do
            not want copies sent to anyone.

        4.  After SUBJECT:  type a few words to indicate the  subject  of
            the message.

        5.  After the line beginning  with  MESSAGE,  type  the  message,
            which  can  be  several  lines of text, and terminate it with
            ESCape or CTRL/Z.



                            ----- Example -----

   This example shows how to send a message to user JONES.   If  you  are
   going  to  do  this  from the terminal that is running OPR, first type
   PUSH to OPR.

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @MAIL<RET>

        TO: JONES<RET>
        CC:<RET>
        SUBJECT: USER'S GUIDE<RET>
        MESSAGE (TERMINATE WITH ESC OR CTRL/Z):

        WE NOW HAVE MORE COPIES AVAILABLE AT THE COMPUTER CENTER<RET>
        STOP BY IF YOU NEED ONE<RET>
        $
        <ESC>
             
        PROCESSING MAIL...
        NO ERRORS.
        -DONE-
        @POP<RET>
        OPR>

   If you want to follow TO:  or CC:  with  a  list  of  users,  separate
   their names with commas.  You can also specify one indirect file which
   contains a list of names separated by commas.  Precede the  file  name
   with "@", but be sure you put it last in the list.  For example:

        TO: SMITH,JONES,@LISTA.USR<RET>

   sends a message to SMITH,  JONES,  and  all  the  users  in  the  file
   LISTA.USR.   You  can  use recognition input on the user names and the
   filename.







                                    3-68
                         UNSCHEDULED SOFTWARE TASKS


   You can also use one indirect file for the  message  itself.   Precede
   the  filename  which  contains the message with "@" and follow it with
   CTRL/Z or <RET>.  You can use recognition on the filename.

   The following example shows the  use  of  an  indirect  file  for  the
   message:

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @MAIL<RET>

        TO: SMITH<RET>
        CC: MULLEN<RET>
        SUBJECT: TEST<RET>
        MESSAGE (TERMINATE WITH ESC OR CTRL/Z):

        @A.TST<RET>

        PROCESSING MAIL...
        NO ERRORS.
        -DONE-
        @POP<RET>
        OPR>

   Once you have sent the message, all users in the TO:  or CC:  list who
   are  logged  in are notified immediately that they have a message.  If
   they are not logged in, they are notified the next time they  log  in.
   The  users must read the message by running RDMAIL.  Consequently, the
   time when the message is actually read is up to the user.

   (Refer to the TOPS-20 User Utilities Guide for all error messages from
   MAIL.)



   3.15.4  Reading Your Messages with RDMAIL

   If someone sends you a message with MAIL,  you  are  notified,  either
   when  you log in or when the message is sent, that you have a message.
   You should read the message with RDMAIL.  To do this:

        1.  Type PUSH to OPR.

        2.  Run RDMAIL.

        3.  Press RETURN after DATE AND TIME (/H FOR HELP).

        4.  Type POP to return to OPR.

   Once you press RETURN after DATE AND TIME, any messages that you  have
   not read before are printed on your terminal.  If you want to read old
   messages, specify a date and time after the DATE AND TIME prompt.  The
   format for the date and time is explained when you type /H for HELP.

   (Refer to the TOPS-20 User Utilities Guide  for  more  information  on
   RDMAIL.)









                                    3-69
                         UNSCHEDULED SOFTWARE TASKS


                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @RDMAIL<RET>
        DATE AND TIME (/H FOR HELP)
           --------
        DATE: 5-MAR-82 15:39
        FROM: WELLS
        TO: OPERATOR

           -----
        SUBJECT: FILES-ONLY DIRECTORY

        WHERE CAN I GET A FORM TO APPLY FOR A FILES-ONLY DIRECTORY?
           ========
        @POP<RET>
        OPR>



   3.16  HELPING A USER WITH TERMINAL PROBLEMS

   If you are notified by a user that his terminal is not responding, try
   the following:

        1.  Check the terminal speed.  Ask  the  user  for  his  terminal
            number,  or  if  the  user  is logged in, do a SYSTAT user to
            determine  the  terminal  number.    Then   type   the   file
            SYSTEM:n-CONFIG.CMD,  where  n is the TOPS-20 version number.
            Find the line referring to the terminal number and  see  what
            its  initial  speed should be.  If the terminal is designated
            for autobaud detection, the speed is 110, 150, 300, or  1200.
            Have  the user manually set the terminal for the proper speed
            and  then  try  again.   (Refer  to  the   TOPS-20   Software
            Installation  Guide  for more information on n-CONFIG.CMD and
            setting terminal speeds.)

        2.  If Step 1 does not work, be sure the user leaves the terminal
            set  at  the  speed specified in the n-CONFIG.CMD file.  Then
            type to OPR:

                 OPR>PUSH<RET>
                 @ENABLE<RET>
                 $^ESET TERMINAL t SPEED s<RET>
                 $POP<RET>
                 OPR>

            where t is the terminal number and s  is  the  speed  in  the
            n-CONFIG.CMD  file.  If there is a different input and output
            speed, you must enter both the input and output speeds.  Then
            have the user try again.

        3.  If Step 2 does not succeed because the user can not  set  the
            terminal  for  the  speed  in  the  n-CONFIG.CMD file, give a
            ^ESET TERMINAL command as above for a speed  which  the  user
            can  manually  set  for the terminal.  Then have the user try
            again.  If that succeeds and the terminal is going to be used
            permanently,     you    should    also    edit    the    file
            SYSTEM:n-CONFIG.CMD to change the speed for that terminal.





                                    3-70
                         UNSCHEDULED SOFTWARE TASKS


        4.  If none of the above works, the terminal is broken or the job
            is  hung.  Notify the user of his options, given below.  Then
            notify your System Manager and software specialist.

   If a terminal is not functioning correctly or a job is hung, the  user
   has the following options:

        1.  If he is not logged in, the user can simply look for  another
            terminal and log in.

        2.  If the user is logged in and  wants  the  same  job,  try  to
            unattach the user's job.  Type to OPR:

                 OPR>PUSH<RET>
                 @ENABLE<RET>
                 $UNATTACH (USER) name (JOB #) n<RET>
                 <RET> after [ATTACHED TO TTYxxx, CONFIRM]
                 $POP<RET>
                 OPR>

            where name is the user's name and n is the user's job number.

            The user should then try  to  attach  to  job  n  at  another
            terminal.  If the user is still unsuccessful, go to Step 3.

        3.  If the user is logged in, try to log the job out by typing to
            OPR:

                 OPR>PUSH<RET>
                 @ENABLE<RET>
                 $LOGOUT n<RET>
|                $<RET>
                 $POP<RET>
                 OPR>

            where n is the user's job number.  (Part V Section  3.16  has
            more  detail on logging out a job.) If LOGOUT succeeds within
            ten seconds and the terminal is  functioning  correctly,  the
            user  should then be able to log in at the same terminal.  If
            it does not succeed, go to Step 4 and report the  problem  to
            your software specialist.

                OPR>PUSH<RET>

                 TOPS-20 Command processor 6(772)
                @ENABLE<RET>
|               $LOGOUT 28<RET>
|               User TUCKER on TTY32, running EXEC
|               [Confirm]<RET>
                $POP<RET>
                OPR>

        4.  If the user is logged in and LOGOUT in Step 3  did  not  work
            because  of  system  software  problems, you can unattach the
            user by typing to OPR:

                OPR>PUSH<RET>
                @ENABLE<RET>
                $UNATTACH (USER) name (JOB #) n<RET>
                <RET> after [ATTACHED TO TTYxxx, CONFIRM]
                $POP<RET>
                OPR>

            where name is the user's name and n is the user's job number.


                                    3-71
                         UNSCHEDULED SOFTWARE TASKS


            The user should then be able to log in at the same  terminal.
            If the user cannot, there is a problem with the terminal, the
            terminal line, or the system.  Report the situation  to  your
            System  Manager.   The  user  must  try  another  terminal or
            terminal line.

                OPR>PUSH<RET>
                 TOPS-20 Command processor 6(772)
                @ENABLE<RET>
                $UNATTACH (USER) PORADA (JOB #) 23<RET>
                 [ATTACHED TO TTY105, CONFIRM]<RET>
                $SYSTAT 23<RET>
                  23   DET   EXEC    PORADA
                $POP<RET>
                OPR>

        5.  If the user can not find another  terminal,  he  can  request
            that  you  perform  some task for him.  If this is within the
            rules of your installation, perform the task.  You  might  do
            the  entire  task from the subjob O, you might ADVISE the job
            to do the task, or you might attach to the  user's  job  from
            the  subjob  O, perform the task, log out, and attach back to
            the subjob.  Be sure to give the correct password.

            To attach to a user's job, type to OPR:

                PUSH
                ENABLE
                ATTACH user n

            where user is the user's name and n is the user's job number.

                OPR>PUSH<RET>

                 TOPS-20 Command processor 6(772)
                @ENABLE<RET>
                $ATTACH (USER) POR (JOB #) 23<RET>
                 DETACHING JOB # 3
                $              !Perform task for user
                   .
                   .
                   .
                $LOGO<RET>
                KILLED JOB 23, USER POR, ACCOUNT 104, TTY 101,
                  AT 5-OCT-81 08:55:16,  USED 0:0:6 IN 0:5:1

                $ATTACH OPERATOR 3      
                $POP<RET>
                OPR>



                             ----- Hints -----

   More information on the ^ESET  TERMINAL  command  is  in  the  TOPS-20
   Operator's Command Language Reference Manual.

   Once a  user  establishes  terminal  communication,  he  can  use  the
   TERMINAL  SPEED  command  (in  the  TOPS-20 User's Guide) to specify a
   different speed and then manually set the  terminal  for  that  speed.
   This  procedure,  however,  does  not  change the default speed of the
   line.  You must edit SYSTEM:n-CONFIG.CMD to change the default speed.




                                    3-72
                         UNSCHEDULED SOFTWARE TASKS


   3.17  LOGGING OUT A USER WITH LOGOUT

   To delete unwanted jobs from the system, type the command:

        LOGOUT n

   where n is the number of the job you want to delete.  You  must  first
   enable  your operator privileges.  Also, be absolutely sure that a job
   is unwanted before you log it out.

   The types of unwanted jobs should be listed  for  you  by  the  System
   Manager.   Then you can periodically give the SYSTAT command and check
   the output against the list to find any  unwanted  jobs.   A  possible
   list  of  unwanted  jobs  and  ways  of identifying them in the SYSTAT
   output are:

        1.  Jobs that have not used  any  runtime  over  a  certain  time
            period.   Periodically, use the command SYSTAT TIME or SYSTAT
            n TIME, where n is a job number, to see if the job's  runtime
            has increased.

        2.  All jobs that have been detached longer  than  five  minutes,
            provided  your  System  Manager  has decided not to allow any
            detached jobs and has sufficiently warned all users of  this.
            This   means   you  should  log  out  all  users  whose  line
            designation in the output from SYSTAT  is  DET,  which  means
            detached.  However, you are never able to log out SYSJOB.

        3.  A job that a user has requested you  to  log  out  due  to  a
            problem.   Be sure the request is valid.  Then check that the
            job number the user wants you to  log  out  belongs  to  that
            user.   Do this by typing PUSH to OPR and then type SYSTAT n.
            For example:

                OPR>PUSH<RET>

                 TOPS-20 Command processor 6(772)
                @SYSTAT n<RET>
                      .
                      .
                @POP<RET>
                OPR>

            where n is the job number, and check that the  user  name  is
            correct.  If the name is correct, you can log out the job.



                            ----- Example -----

            If you want to log out job 7 and you do not have any  subjobs
            defined other than OPR, type:

                OPR>PUSH<RET>

                 TOPS-20 Command processor 6(772)
                @ENABLE<RET>
|               $LOGOUT 28<RET>
|               User TUCKER on TTY32, running EXEC
|               [Confirm]<RET>
                $DISABLE<RET>
                @POP<RET>
                OPR>



                                    3-73
                         UNSCHEDULED SOFTWARE TASKS


                             ----- Hints -----

   Because there is no message printed on your terminal to indicate  that
   you  have  successfully  logged out another job, you can use SYSTAT to
   verify that the job is gone.  However, keep in mind that by  the  time
   you  give the SYSTAT command a user could already have that job number
   again.

   If you log out a job that was a subjob  of  PTYCON,  PTYCON  prints  a
   message about the subjob being killed.



                         ----- Error Messages -----

   ?ILLEGAL TO LOGOUT JOB 0

        You are not allowed to log out job 0 under which SYSJOB runs.

   ?THAT JOB DOES NOT EXIST

        You typed the wrong job number, or the job you  intended  to  log
        out is already logged out.

   ?WHEEL OR OPERATOR CAPABILITY REQUIRED TO LOGOUT ANOTHER JOB

        You must have WHEEL or OPERATOR capability.



   3.18  GENERATING ACCOUNTING REPORTS

   The USAG20 and USAH20 programs allow you to produce accounting reports
   from  system  accounting  data.   The  CHKPNT  program  enables you to
   include disk usage in these reports  and  makes  the  accounting  data
   available  to  USAG20  and  USAH20.   In  addition, the CHKPNT program
   allows you to change the accounting periods during normal operation.

   These accounting functions are  discussed  briefly  in  the  following
   sub-sections.   You  can  find  more information in the TOPS-10 TOPS20
   USAGE File Specification.

   You must discuss with your System Manager the schedule  (if  any)  for
   performing these tasks.






















                                    3-74
                         UNSCHEDULED SOFTWARE TASKS


   3.18.1  Getting Disk and System Usage with CHKPNT

   To include disk usage in the accounting reports and then make the disk
   and system usage available for reports, type to OPR:

        1.  PUSH

        2.  ENABLE

        3.  CHKPNT

        4.  DISK-STATISTICS structure:

            Repeat this command for each structure  for  which  you  want
            disk  usage.   If  you  omit  the  argument  structure:, your
            currently connected structure is used.

        5.  COPY (SYSTEM DATA TO) output file

            The output file can contain up  to  six  characters  for  the
            filename  and  three  characters  for  the file type.  It can
            later be used as the input  file  for  USAG20.   The  default
            filename is USAGE.OUT in your connected directory.

        6.  EXPUNGE (PROCESSED SYSTEM DATA)

        7.  EXIT

        8.  DISABLE

        9.  POP to return to OPR



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $CHKPNT<RET>
        CHKPNT>DISK-STATISTICS (FOR STRUCTURE) PS:<RET>
        CHKPNT>DISK-STATISTICS (FOR STRUCTURE) AK:<RET>
        CHKPNT>COPY (SYSTEM DATA TO) USAGE.OUT<RET>
        CHKPNT>EXPUNGE (PROCESSED SYSTEM DATA)<RET>
                [123 PAGES FREED]
        CHKPNT>EXIT (TO MONITOR)<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>

   If you do not want any reports on disk usage, omit Step 4 above.

   The EXPUNGE command to CHKPNT in  Step  6  deletes  and  expunges  all
   system  accounting data files already processed by the COPY command to
   CHKPNT.  If you want to save these files, you should rename them, copy
   them,  or  save them with DUMPER before you expunge them.  The file is
   called SYSTEM-DATA.BIN in PS:<ACCOUNTS>.  If you do not expunge  these
   files, the next COPY command to CHKPNT reprocesses them and makes them
   available to USAG20 or USAH20 again.






                                    3-75
                         UNSCHEDULED SOFTWARE TASKS


   If your System Manager wants to change the accounting  period  between
   shifts  to  bill users at a different rate for the next shift, you can
   give the following command to the CHKPNT program:

        CHANGE (ACCOUNTING SHIFT NOW)<RET>

   This command causes a session end entry followed  by  a  session-start
   entry  for  every  active  job  in  the  system.   There is no visible
   indication to the user that an accounting shift change has occurred.

                         ----- Error Messages -----

   ?CHKPNT: COULD NOT FIND SYSTEM-DATA FILE
   ? JSYS ERROR: DIRECTORY ACCESS PRIVILEGES REQUIRED

        You typed the COPY command, but you do  not  have  privileges  to
        read  the  SYSTEM-DATA  files.   Be sure you are connected to the
        subjob OPR, logged in under OPERATOR, and ENABLEd.

   ? CHKPNT: GARBAGE AT END-OF-COMMAND

        You did not press RETURN or LINE FEED after a command.

   ? CHKPNT: INVALID FILENAME SPECIFIED

        Your file specification  contained  an  invalid  filename  or  an
        unmounted structure.

   ? CHKPNT: INVALID STRUCTURE NAME GIVEN

        You specified an unmounted structure, you forgot the colon  after
        the structure name, or you omitted the structure name.

   ? CHKPNT: NO SUCH CHKPNT COMMAND AS "xxx"

        You typed an invalid CHKPNT command.



   3.18.2  Reporting Usage with USAG20

   To get various cost summaries reported in a disk file, which can later
   be  printed  on  the  line printer and distributed, take the following
   steps.  First, be sure that you processed system accounting data  with
   the COPY command to CHKPNT.  You might or might not have included disk
   usage.   Second,  be  sure  you  have  USAG20.CHG  in  your  connected
   directory.   Your  System  Manager  should  have created USAG20.CHG by
   using the information  in  the  TOPS10/20  USAGE  File  Specification.
   Then, type to OPR:

        1.  PUSH

        2.  ENABLE

        3.  USAG20

        4.  input file specification

            This is the file output by the COPY command to CHKPNT in  the
            previous section.  The default is USAGE.OUT in your currently
            connected directory.





                                    3-76
                         UNSCHEDULED SOFTWARE TASKS


        5.  S or D

            S gives a report of system usage, and D  gives  a  report  of
            disk usage.  Press RETURN to get system usage, the default.

        6.  N or A

            N sorts the report by directory name, and A sorts the  report
            by account.  Press RETURN to get name, the default.

        7.  output file specification

            This is the file that contains the report.   The  default  is
            USAGE.RPT in your currently connected directory.

        8.  EXIT

        9.  PRINT output file specification/REPORT:argument

            The argument must correspond to the type of report requested.
            The type of report and arguments are:

                    Report             Argument

            System usage by name       NAME
            System usage by account    ACCOUNT
            Disk usage by name         DNAME
            Disk usage by account      DACCOUNT

       10.  DISABLE

       11.  POP to return to OPR

   If you want to produce different reports, after Step  5,  go  back  to
   Step 2.

   For easy identification you might use  an  output  file  specification
   that indicates the day or week of the report.



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $USAG20<RET>
        TOPS20 ACCOUNTING SYSTEM
        READ USAGE FILE: USAGE.OUT<RET>
         INPUT FILE NAME: USAGE .OUT
        REPORT BY [SYSTEM USAGE (S) OR DISK USAGE (D)]: S<RET>
        SORT BY [NAME (N) OR ACCOUNT (A)]: N<RET>
        WRITE TO FILE: USAGE.RPT<RET>
         OUTPUT FILE NAME: USAGE .RPT
        READ USAGE FILE: EXIT<RET>

        EXIT

        $PRINT USAGE.RPT/REPORT:NAME<RET>
        [LPT:USAGE=/SEQ:105/LIMIT:100, 1 FILE]
        $DISABLE<RET>
        @POP<RET>
        OPR>


                                    3-77
                         UNSCHEDULED SOFTWARE TASKS


                              ----- Hint -----

   Refer to the TOPS10/TOPS20 USAGE  File  Specification  for  additional
   accounting information.



                         ----- Error Messages -----

   FILE CHARGE-FILE [USAG20.CHG] CANNOT BE OPENED ON DEVICE DSK

        When you run USAG20, you must have the file  USAG20.CHG  in  your
        connected  directory.  This file, which is created by your System
        Manager, contains billing rates.

   FILE IN-FILE [inputfile] CANNOT BE OPENED ON DEVICE DSK

        The file that you want USAG20 to read must be in  your  connected
        directory.   Inputfile  is the filename and file type that USAG20
        interpreted from what you typed after READ USAGE FILE:  prompt.

   INCOMPLETE INPUT SPOOLER ENTRY

        USAG20 did not find all three records of an input-spooler  entry.
        Therefore, the other records of the entry are ignored.

   INCOMPLETE OUTPUT SPOOLER ENTRY

        USAG20 did not find all three records of an output-spooler entry.
        Therefore, the other records of the entry are ignored.

   INCOMPLETE SESSION ENTRY

        USAG20 did not  find  all  three  records  of  a  session  entry.
        Therefore, the other records of the entry are ignored.

   INPUT FILE ERROR:  inputfile

        You typed input file after the  READ  USAGE  FILE:   prompt,  but
        inputfile was not a valid filename and file type.

   OUTPUT FILE ERROR:  outputfile

        You typed outputfile after WRITE TO FILE:  prompt, but outputfile
        was not a valid filename and file type.





















                                    3-78











                                 CHAPTER 4

                          SCHEDULED SOFTWARE TASKS



   As the operator, there  are  several  software  tasks  involving  both
   system  programs  and commands that you need to perform.  Some of them
   must be done on a daily basis and in a particular order.   Others  can
   be  done  less  frequently or only on request.  Your System Manager or
   operations staff should establish a daily schedule,  (perhaps  divided
   into  by operator shifts, and weekly, monthly, or yearly schedules, if
   appropriate).

   The following sections in Chapter 4  discuss  in  chronological  order
   possible  scheduled  software tasks.  These tasks are the tasks you do
   after you ready the system for timesharing.   You  should  follow  the
   schedule  given  to  you by your System Manager or operations staff to
   determine when you need to perform a task.

                                    NOTE

           For  you  to  perform  any  scheduled  software   task
           described  in  Chapter  4,  you  must  have  WHEEL  or
           OPERATOR capability.   If  either  capability  is  not
           needed  to  perform  the  task, it is mentioned in the
           description of the task.




   4.1  SETTING LOGINS-ALLOWED AND OPERATOR-IN-ATTENDANCE

   When the system is started, you must allow LOGINs on  the  appropriate
   terminals  and  indicate  that  you are present.  To do this, take the
   following steps:

        1.  Type PUSH to OPR.

        2.  Type ENABLE.

        3.  Give the INFORMATION (ABOUT) SYSTEM-STATUS command.

        4.  Use ^ESET LOGINS-ALLOWED if you need to  change  the  set  of
            terminals for LOGINs.












                                    4-1
                          SCHEDULED SOFTWARE TASKS


        5.  Use ^ESET OPERATOR-IN-ATTENDANCE, if necessary,  to  indicate
            that you are present.

        6.  Type POP to return to OPR.

   You can also use this procedure later to change the set  of  terminals
   from  which  LOGINs  are allowed, or to indicate that there is not any
   operator  present.   (Details  on  ^ESET  LOGINS-ALLOWED   and   ^ESET
   OPERATOR-IN-ATTENDANCE   are   given  in  Chapter  3  of  the  TOPS-20
   Operator's Command Language Reference Manual.)



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @INFORMATION (ABOUT) SYSTEM-STATUS<RET>
         Operator is in attendance
         Remote logins allowed
         Local logins allowed
         Pseudo-terminal logins allowed
|        ARPANET terminal logins are not allowed
         DECnet terminal logins allowed
         Console terminal login allowed
         Accounting is being done
         Account validation is enabled
         Working set preloading is disabled
         Tape-drive allocation is enabled
         Automatic file-retrieval-waits allowed
|        Maximum offline-expiration is 90 days
         Scheduler bias-control setting is 11
         Class scheduling is disabled
        @

   Then to allow LOGINs on all terminals and indicate that an operator is
   present:

        @ENABLE<RET>
        $^ESET LOGINS-ALLOWED (ON) ANY-TERMINAL<RET>
        $^ESET OPERATOR-IN-ATTENDANCE<RET>
        $POP<RET>
        OPR>



                              ----- Hint -----

   You   can   put   the   initial   ^ESET   LOGINS-ALLOWED   and   ^ESET
   OPERATOR-IN-ATTENDANCE commands in the file SYSTEM:SYSJOB.RUN.  Decide
   with your System Manager what ^ESET commands, if any, need  to  be  in
   the  SYSJOB.RUN  file,  and  when  you  should manually change a ^ESET
   parameter.  It might be wise to put ^ESET LOGINS-ALLOWED  ANY  in  the
   SYSJOB.RUN  file,  but  to  make  the  operator  on  duty do the ^ESET
   OPERATOR-IN-ATTENDANCE.  Thus, if there is no operator  on  duty,  the
   status   is  NO  OPERATOR-IN-ATTENDANCE.   The  defaults,  before  the
   SYSJOB.RUN file is read, are LOGINS ALLOWED from the CONSOLE  TERMINAL
   and PSEUDO-TERMINALS with NO OPERATOR-IN-ATTENDANCE.







                                    4-2
                          SCHEDULED SOFTWARE TASKS


   4.2  CREATING THE MESSAGE OF THE DAY WITH MAIL

   To send a message to all users of the system, do the following:

        1.  Type PUSH to OPR.

        2.  Enable capabilities.

        3.  Run MAIL.

        4.  After the TO:, type SYSTEM.

        5.  After the CC:, press RETURN.

        6.  Give the subject.

        7.  Type the message.

        8.  End the message with ESCape or CTRL/Z.

        9.  Type POP to return to OPR command level.

   The message is put into the file MAIL.TXT in PS:<SYSTEM>.  Then when a
   user   logs   in  to the system, the user receives on his terminal the
   messages that he has not seen before.  Also, as  soon  as  you  finish
   sending mail to SYSTEM, all on-line terminals receive the message:

        [NEW MESSAGE-OF-THE-DAY AVAILABLE]

   Users already logged in can then  read  the  new  message  by  running
   RDMAIL with the /M switch.



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $MAIL<RET>

        TO: SYSTEM<RET>
        CC:<RET>
        SUBJECT:CHRISTMAS<RET>
        MESSAGE (TERMINATE WITH ESC OR CTRL/Z):

        THE SYSTEM WILL BE UP FOR TIMESHARING ON CHRISTMAS DAY,<RET>
        BUT THERE WILL BE NO OPERATOR COVERAGE.<RET>
        <CTRL/Z>
        PROCESSING MAIL...
        NO ERRORS.
        -DONE-
        $POP<RET>
        OPR>











                                    4-3
                          SCHEDULED SOFTWARE TASKS


                             ----- Hints -----

   Never change the file PS:<SYSTEM>MAIL.TXT with an editor.  Always  use
   MAIL.

   If you receive a message from SYSJOB before or  while  trying  to  run
   MAIL, and the message indicates a problem with MAILER or INFO, restart
   MAILER or INFO (refer to Part VI, Section  1.8  or  2.8).   Then  type
   DIRECTORY MAIL.CPY.  If the file is not found, type UNDELETE MAIL.CPY.
   Then do the following:

        1.  Type GET SYS:MAIL.

        2.  Type REENTER.

        3.  After FILE NAME OF MESSAGE FILE:, type MAIL.CPY.

        4.  After -DONE-, type DISABLE.

                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $GET SYS:MAIL<RET>
        $REENTER<RET>

        FILE NAME OF MESSAGE FILE:MAIL.CPY      

        PROCESSING MAIL...
        NO ERRORS.
        -DONE-
        $DISABLE<RET>
        @POP<RET>
        OPR>


                           ----- Error Messages -----

   ?COULD NOT SEND TO MAILER

        MAILER is hung or not running.  Restart it.

   ?MAILER DIED, MESSAGES NOT SENT

        Restart MAILER.

   PROCESSING MAIL...SYSTEM NOT SENT BECAUSE: reason

        The reason indicates why you could not send the mail.  Often, the
        reason  is WHEEL OR OPERATOR CAPABILITY REQUIRED.  If so, be sure
        that you are logged in under OPERATOR, which should have OPERATOR
        capability, and that you have typed ENABLE.

   PROCESSING MAIL...SYSTEM NOT SENT QUOTA EXCEEDED

        You cannot send the mail because the  directory  PS:<SYSTEM>  has
        exceeded its disk storage limit.







                                    4-4
                          SCHEDULED SOFTWARE TASKS


   4.3  ENTERING ACCOUNT VALIDATION DATA WITH EDIT

   To initially create and later  update  account  validation  data,  use
   EDIT.   Create  or  modify account entries as you are directed by your
   System Manager.  Your System Manager  must  also  tell  you  the  file
   specification of the base account validation file, if one exists.

   Type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  CONNECT STR:<directory containing file>

        4.  EDIT file

        5.  Commands to EDIT to add or modify entries in the file

        6.  EU

        7.  CONNECT

        8.  DISABLE

        9.  POP

   The base account  validation  file  contains  entries  for  each  base
   account  in  the  system.   The  format  of  the entries for each base
   account is:

        ACCOUNT name/SUBACCOUNT:file specification
        USER user name, user name,...
        DIRECTORY structure:<directory>
        GROUP (ON STRUCTURE) structure:/USER:user group number
        GROUP (ON STRUCTURE) structure:/DIRECTORY:directory group number

   Part of the format is optional, and some entries  can  be  given  more
   than once.

   Each entry can also specify an expiration date with:

        /EXPIRES:dd-mm-yy hh:mm

   When you place /EXPIRES:  after an account name, user name, directory,
   or  group number, the expiration date applies to that item only.  When
   you place /EXPIRES:   immediately  after  USER,  the  expiration  date
   applies to all user names.

   The various entries are briefly described below.

   ACCOUNT             Specifies the name of the base account.

   /SUBACCOUNT:        Specifies the file containing additional data  for
                       the  base  account.  The ACCOUNT entry allows only
                       one /SUBACCOUNT:.

   USER                Specifies  users  who  are  allowed  to  use   the
                       account.   An argument of * means all users of the
                       system.






                                    4-5
                          SCHEDULED SOFTWARE TASKS


   DIRECTORY           Specifies a directory.  Anyone with  write  access
                       to  the directory can use the account.  A * can be
                       used for the structure or directory  to  mean  all
                       structures or directories.

   GROUP               Specifies that the account can be used by  certain
                       user or directory groups on a structure.

   /CLASS:n            Specifies the numeric (n) class an account is in.

   /USER:              Modifies GROUP and specifies that the account  can
                       be used by this user group.

   /DIRECTORY:         Modifies GROUP and specifies that the account  can
                       be used by this directory group.



                            ----- Example -----

   To add a new base account to PS:<ACCOUNTS>ACCOUNTS.TXT, type:

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $CONNECT <ACCOUNTS><RET>
        $EDIT ACCOUNTS.TXT<RET>
        Edit: ACCOUNTS.TXT.3
        *I10;10<RET>
        00010  ACCOUNT LUMBER/SUBACCOUNT:<FORESTRY>ACCTS.TXT<RET>
        00020   USER MILLER,JACK,HACKSAW<RET>
        00030   $
                !
              <ESC>
        *EU<RET>

        [ACCOUNTS.TXT.4]
        $CONNECT<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>



                              ----- Hint -----

   Refer to the TOPS-20 User's Guide for more  information  on  the  EDIT
   program.

















                                    4-6
                          SCHEDULED SOFTWARE TASKS


   4.4  UPDATING THE ACCOUNT VALIDATION DATA BASE WITH ACTGEN

   After you change account validation data with EDIT or after a  project
   administrator  changes  a  subaccount file, you must run ACTGEN before
   the new data is effective.

   Type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  CONNECT PS:<ACCOUNTS>

        4.  ACTGEN

        5.  TAKE file specification

            Specify the base account validation file used in the previous
            section.

        6.  INSTALL

        7.  EXIT

        8.  DELETE ACCOUNTS-TABLE.BIN

        9.  CONNECT

       10.  DISABLE

       11.  POP



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command Processor 6(772)
        @ENABLE<RET>
        $CONNECT PS:<ACCOUNTS><RET>
        $ACTGEN<RET>
        ACTGEN>TAKE (COMMANDS FROM) ACCOUNTS.TXT<RET>
        ACTGEN>INSTALL (NEW ACCOUNT VALIDATION DATA BASE)<RET>
        ACTGEN>EXIT (TO MONITOR)<RET>
        $DELETE ACCOUNTS-TABLE.BIN.*<RET>
         ACCOUNTS-TABLE.BIN.2 [OK]
        $CONNECT<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>














                                    4-7
                          SCHEDULED SOFTWARE TASKS


                         ----- Error Messages -----

   ? ACTGEN:  GARBAGE AT END-OF-COMMAND

        Press RETURN at the end of a command.

   ? ACTGEN:  INVALID FILE SPECIFICATION, FILE NOT FOUND

        The file you specified was not found.  Check the directory of the
        file.

   ? ACTGEN:  NO SUCH ACTGEN COMMAND AS "xxx"

        You typed the command "xxx" to ACTGEN and  it  was  not  a  valid
        command,  or  in  the  file you specified for the TAKE command to
        ACTGEN there is an invalid entry beginning with "xxx".

   ? INCORRECT FIELD: xxx  IN ENTRY: aaa
   IN FILE:        file specification

        In the file you specified for the TAKE  command  to  ACTGEN,  the
        field  xxx  was  incorrect  in entry aaa.  If the field is a file
        specification, check that the  file  exists  in  the  appropriate
        directory.



   4.5  ADDING, CHANGING, AND DELETING DIRECTORIES WITH ^ECREATE

   If you need to add a directory or user  name  to  the  system,  or  to
   change  some  directory  parameters,  or  delete  a directory from the
   system, use the ^ECREATE command.



   4.5.1  Adding Directories for Users


   To give users the ability to log in to the  system,  you  must  create
   directories  for  them  on  PS:,  the  public structure.  Use the name
   approved by your System Manager for the directory name for a user.

   If the directory name contains a  ".",  for  example,  <C.SMITH>,  the
   directory   is   actually   a   subdirectory.   Before  you  create  a
   subdirectory, you must first have created its superior  directory,  in
   this  case  <C>.   You  can  determine  the  superior  directory for a
   subdirectory by using the name of the subdirectory and eliminating the
   last  "."  and  the  characters  after  it.  For example, the superior
   directory for <AL.BROWN> is  <AL>,  and  the  superior  directory  for
   <B.BLACK.1> is <B.BLACK>.

   To create a directory with default parameters, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECREATE PS:<directory> password

        4.  <RET> to finish

        5.  DISABLE

        6.  POP


                                    4-8
                          SCHEDULED SOFTWARE TASKS


                                    NOTE

           If you are connected to structure PS:   when  you  are
           creating  a  directory  to allow a user to log in, you
           can omit PS:  in the ^ECREATE command.

                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $^ECREATE PS:<NATHANIEL> MATTHEW<RET>
        [NEW]
        $$<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>

   To create a directory with some nondefault values, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECREATE PS:<directory>

        4.  PASSWORD password

        5.  Other nondefault parameters and arguments, if any

        6.  <RET> to finish

        7.  DISABLE

        8.  POP

   (Refer to  Chapter  3  of  the  TOPS-20  Operator's  Command  Language
   Reference  Manual  for  a  description  of  ^ECREATE  commands  to set
   directory parameters.)

                            ----- Example -----

   In this example, assume that subjob O is connected  to  structure  PS:
   and that <G> already exists and allows subdirectories.

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $^ECREATE <G.PLAZA><RET>
        [NEW]
        $$PASSWORD STACHIA<RET>
        $$ACCOUNT-DEFAULT TEXTILES<RET>
        $$WORKING (DISK STORAGE PAGE LIMIT) 900<RET>
        $$PERMANENT (DISK STORAGE PAGE LIMIT) 600<RET>
        $$<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>






                                    4-9
                          SCHEDULED SOFTWARE TASKS


   4.5.2  Adding Directories on Mountable Structures

   To create a directory  which  a  user  can  CONNECT  to  or  ACCESS  a
   directory on a structure other than PS:, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  MOUNT STRUCTURE STR:

        4.  ^ECREATE str:<directory>

        5.  Any nondefault parameters

        6.  <RET> to finish

        7.  DISMOUNT STRUCTURE STR:

        8.  DISABLE

        9.  POP

                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command Processor 6(772)
        @ENABLE<RET>
        $MOUNT STRUCTURE 4SQM:<RET>
        STRUCTURE 4SQM: mounted
        $^ECREATE 4SQM:<TESTQ><RET>
        [NEW]
        $$PASSWORD KITS<RET>
        $$<RET>
        $DISMOUNT STRUCTURE 4SQM:<RET>
        STRUCTURE 4SQM: dismounted
        $DISABLE<RET>
        @POP<RET>
        OPR>



   4.5.3  Adding Files-Only Directories

   To create a directory that no one can log in to but that is used  only
   to store files, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECREATE structure:<directory>

        4.  FILES-ONLY

        5.  Other nondefault parameters and arguments, if any

        6.  <RET> to finish

        7.  DISABLE

        8.  POP



                                    4-10
                          SCHEDULED SOFTWARE TASKS


   You can specify the structure name in Step 3 or omit  it  to  indicate
   your currently connected structure.



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $^ECREATE <FORTRAN-DATA><RET>
        [NEW]
        $$FILES-ONLY<RET>
        $$WORKING (DISK STORAGE PAGE LIMIT) 2000<RET>
        $$PERMANENT (DISK STORAGE PAGE LIMIT) 2000<RET>
        $$DIRECTORY-GROUP 17<RET>
        $$<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>



                              ----- Hint -----

   A password is optional for a  FILES-ONLY  directory.   (Refer  to  the
   TOPS-20  Operator's  Command  Language Reference Manual for additional
   information on the FILES-ONLY subcommand of the ^ECREATE command.)



   4.5.4  Changing Directory Parameters

   To simply change a password, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECREATE structure:<directory> new-password

        4.  DISABLE

        5.  POP

   You can omit the structure name in Step 3 if you are connected to  the
   structure containing the directory.



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $^ECREATE <MCKIE> PQXY<RET>
        [OLD]
        $$<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>



                                    4-11
                          SCHEDULED SOFTWARE TASKS


   To change other directory parameters, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECREATE structure:<directory>

        4.  Parameters and new values

        5.  <RET> to finish

        6.  DISABLE

        7.  POP



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $^ECREATE QAT:<GOLDSTEIN><RET>
        [OLD]
        $$IPCF<RET>
        $$WORKING (DISK STORAGE PAGE LIMIT) 1000<RET>
        $$<RET>
        $DISABLE<RET>
        @POP<RET>
        OPR>



   4.5.5  Changing Directory Names

   To change a directory name, create a temporary directory,  rename  the
   user's  files  into  it, list the parameters of the directory that you
   are changing, and then kill it.  Then create a new directory with  the
   correct  name and parameters, rename the user's files into it from the
   temporary directory, and kill the temporary directory.

   The procedure for changing a  directory  name  is  given  below.   The
   structure  argument  must  be the name of the structure containing the
   directory you want to change.  You can omit Steps  3  and  24  if  the
   structure is PS:.

   Type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  MOUNT STRUCTURE structure name:

        4.  CONNECT structure:

        5.  ^ECREATE <temporary-directory>

        6.  FILES-ONLY





                                    4-12
                          SCHEDULED SOFTWARE TASKS


        7.  Other directory parameters; be sure  that  the  disk  storage
            page  limits  are  large enough to accommodate the files from
            the old directory that you are changing

        8.  <RET> to finish creating the directory

        9.  RENAME
            <old-directory>*.*.* (TO BE) <temporary-directory>*.*.*

       10.  ^ECREATE <old-directory>

       11.  LIST

       12.  KILL

       13.  <RET> to [CONFIRM]

       14.  <RET> to finish killing the directory

       15.  ^ECREATE <new-directory>

       16.  Directory parameters output by LIST in Step 11

       17.  <RET> to finish creating the directory

       18.  RENAME<temporary-directory>*.*.* (TO BE) <new-directory>*.*.*

       19.  ^ECREATE <temporary-directory>

       20.  KILL

       21.  <RET> to [CONFIRM]

       22.  <RET> to finish killing the directory

       23.  CONNECT

       24.  DISMOUNT STRUCTURE str:

       25.  DISABLE

       26.  POP
























                                    4-13
                          SCHEDULED SOFTWARE TASKS


                            ----- Example -----

   This example shows how to change a directory on TST:   from  RINKO  to
   HRINKO.

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $MOUNT STRUCTURE TST:<RET>
        $CONNECT TST:<RET>
        $^ECREATE <TMPDIR><RET>
        [NEW]
        $$FILES-ONLY<RET>
        $$WORKING (DISK STORAGE PAGE LIMIT) 500<RET>
        $$PERMANENT (DISK STORAGE PAGE LIMIT) 500<RET>
        $$<RET>
        $RENAME (EXISTING FILE) <RINKO>*.*.* (TO BE) <TMPDIR>*.*.*<RET>
         <RINKO>A..2 => <TMPDIR>A..2 [OK]
         <RINKO>SORT.MAC.1 => <TMPDIR>SORT.MAC.1 [OK]
         <RINKO>TEST..1 => <TMPDIR>TEST..1 [OK]
        $^ECREATE <RINKO><RET>
        [OLD]
        $$LIST<RET>
         NAME <RINKO>
         WORKING DISK STORAGE PAGE LIMIT 350
         PERMANENT DISK STORAGE PAGE LIMIT 350
         NUMBER OF DIRECTORY 24
         LAST LOGIN 5-MAR-82 16:03:25

        $$KILL<RET>
        [CONFIRM]<RET>
        $$<RET>
        $^ECREATE <HRINKO><RET>
        [NEW]
        $$PASSWORD HELEN<RET>
        $$WORKING (DISK STORAGE PAGE LIMIT) 350<RET>
        $$PERMANENT (DISK STORAGE PAGE LIMIT) 350<RET>
        $$NUMBER (OF DIRECTORY) 24<RET>
        $$<RET>
        $RENAME (EXISTING FILE) <TMPDIR>*.*.* (TO BE) <HRINKO>*.*.*<RET>
         <TMPDIR>A..2 => <HRINKO>A..2 [OK]
         <TMPDIR>SORT.MAC.1 => <HRINKO>SORT.MAC.1 [OK]
         <TMPDIR>TEST..1 => <HRINKO>TEST..1 [OK]
        $^ECREATE <TMPDIR><RET>
        [OLD]
        $$KILL<RET>
        [CONFIRM]<RET>
        $$<RET>
        $CONNECT<RET>
        $DISMOUNT TST:<RET>
        $DISABLE<RET>
        $POP<RET>
        OPR>
        1:02:23            -- Structure TST: Dismounted --
        OPR>










                                    4-14
                          SCHEDULED SOFTWARE TASKS


   4.5.6  Deleting User Names or Directories

   To delete a user name or directory from the system, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECREATE structure:<directory>

        4.  KILL

        5.  <RET> to [CONFIRM]

        6.  <RET> to finish

        7.  POP

   You can omit the structure name in Step 3 if you are connected to  the
   structure containing the directory.



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $^ECREATE BASIC:<HJOHN><RET>
        [OLD]
        $$KILL<RET>
        [CONFIRM]<RET>
        $$<RET>
        $POP<RET>
        OPR>


                                    NOTE

           When you kill a directory, you  delete  the  files  in
           that directory.  Do not kill a user's directory if the
           user is logged in, because you would not  be  able  to
           free  his job number until you reload TOPS-20.  If you
           need to log out the user, use the LOGOUT command,  and
           then  KILL  the  directory.   If  you  cannot  kill  a
           directory, see the KILL  subcommand  to  the  ^ECREATE
           command in Chapter 3 of the TOPS-20 Operator's Command
           Language Reference Manual.

   Your System Manager should have a form that new users can complete  to
   request  access  to  the system.  A sample form is printed on the next
   page.













                                    4-15
                          SCHEDULED SOFTWARE TASKS


                            USER ACCOUNT REQUEST


   REQUESTOR'S NAME:                                    DATE:

   SUPERVISOR:

                            --------------------

   NAME OF DIRECTORY:                                   PASSWORD:

   PERMANENT STORAGE ALLOCATION (PAGES):                ACCOUNT:

   WORKING STORAGE ALLOCATION (PAGES):

                            --------------------

   OPTIONAL ATTRIBUTES

   NUMBER OF GENERATIONS TO KEEP (DEFAULT IS 1):

   STANDARD FILE PROTECTION (DEFAULT IS 777700):

   PROTECTION OF DIRECTORY (DEFAULT IS 777700):

   DIRECTORY GROUPS:

|  USER-OF-GROUPS:

   MAXIMUM SUBDIRECTORIES ALLOWED:

   SUBDIRECTORY USER GROUPS ALLOWED:

   FILES-ONLY?

   CONFIDENTIAL INFORMATION ACCESS CAPABILITY?

   MAINTENANCE CAPABILITY?

   OPERATOR CAPABILITY?

   WHEEL CAPABILITY?

   IPCF CAPABILITY?

   ENQ-DEQ CAPABILITY?

                        DO NOT WRITE BELOW THIS LINE
                            --------------------

   APPROVED BY:                                         DATE:

   IMPLEMENTED BY:                                      DATE:

   DIRECTORY NUMBER ASSIGNED:











                                    4-16
                          SCHEDULED SOFTWARE TASKS


   4.6  DUMPING DIRECTORY PARAMETERS WITH DLUSER

   Once you add, change, or delete a directory, you should run DLUSER  to
   get  a  backup copy of the directory parameters defined with ^ECREATE.
   Also, if your installation allows users to change directory parameters
   with  SET DIRECTORY or to create subdirectories with BUILD, you should
   get this backup copy periodically at a time scheduled by  your  System
   Manager.   The backup copy can be used to restore directory parameters
   when you are recovering part of the file system.

   The following three sections explain how to dump directory parameters:

        1.  Dump directory parameters for the public structure, PS:,  and
            create  a  system  backup  tape.   This  tape  is helpful for
            restoring directories.  (See Part V Section 4.6.1)

        2.  Dump directory parameters  for  structures  other  than  PS:.
            Part V Section 4.6.2

        3.  Use DLUSER.  (See Part V Section 4.6.3)




   4.6.1  Dumping Directory Parameters for PS:

   You should put a backup copy of directory  parameters  for  PS:   onto
   magnetic   tape.    For   ease  in  restoring  the  directories  after
   re-creating the file  system,  you  should  also  have  the  following
   critical system programs on the same tape as the directory parameters.

        1.  PS:<SYSTEM>MONITR.EXE

        2.  SYSTEM:EXEC.EXE

        3.  SYS:DLUSER.EXE

        4.  SYS:DUMPER.EXE

        5.  All files from PS:<NEW-SYSTEM> and PS:<SYSTEM>

        6.  All files from PS:<NEW-SUBSYS> and PS:<SUBSYS>

        7.  All files from PS:UETP.LIB

   To dump user directories  from  PS:   with  DLUSER  and  put  them  on
   magnetic  tape  along  with the files listed above, type PUSH to OPR>.
   Then:

        1.  Type SUBMIT SYS:SYSTAP.CTL.

        2.  Wait until SYSTAP.LOG and SYSTAP.LPT are printed on the  line
            printer.

        3.  Look at the two printed files.  If there are errors, try  the
            SUBMIT command again or notify your System Manager.

        4.  Once the control file runs without  error,  file  the  backup
            tape along with the two listings.







                                    4-17
                          SCHEDULED SOFTWARE TASKS


                            ----- Example -----

        OPR>PUSH<RET>
         TOPS-20 Command processor 6(772)
        @SUBMIT SYS:SYSTAP.CTL<RET>
        [JOB SYSTAP QUEUED, REQUEST-ID 2745, LIMIT 0:05:00]
        @POP<RET>
        OPR>



   4.6.2  Dumping Directory Parameters for Other Structures

   If there are other structures in addition to PS:  on your system,  put
   a backup copy of the directory parameters for each of those structures
   into files SYSTEM:str.TXT, where str: is the relevant structure  name.
   You can also use OPR to MOUNT and DISMOUNT the structure.

   For each structure, type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  MOUNT STRUCTURE str:

        4.  DLUSER

        5.  STRUCTURE str:

        6.  DUMP SYSTEM:str.TXT

        7.  EXIT

        8.  DISMOUNT STRUCTURE str:

        9.  DISABLE

       10.  POP

                            ----- Example -----

   To get a backup copy of the directory parameters for SNARK:

        OPR>PUSH<RET>

         TOPS-20 Command Processor 6(772)
        @ENABLE<RET>
        $MOUNT STRUCTURE SNARK:<RET>
        $DLUSER<RET>
        DLUSER>STRUCTURE SNARK:<RET>
        DLUSER>DUMP PS:<SYSTEM>SNARK.TXT<RET>

        DONE.
        DLUSER>EXIT<RET>
        $DISMOUNT STRUCTURE SNARK:<RET>
        STRUCTURE SNARK: dismounted
        $DISABLE<RET>
        @POP<RET>
        OPR>






                                    4-18
                          SCHEDULED SOFTWARE TASKS


   4.6.3  Using DLUSER

   The following discussion gives more detail on DLUSER if  you  want  to
   run it from your terminal.

   Once DLUSER is running, it outputs DLUSER> as its prompt.  Then, after
   it  finishes  a  command, it outputs the prompt again.  You can type ?
   after the prompt to get a list of the DLUSER commands.   While  DLUSER
   is  processing a DUMP or LOAD command, you can find out what directory
   it is currently working on by typing CTRL/A.  When you type CTRL/A you
   receive the message:

        WORKING ON DIRECTORY structure:<directory>





















































                                    4-19
                          SCHEDULED SOFTWARE TASKS


   The commands to DLUSER are:

        DUMP filespec      specifies to dump directory parameters into  a
                           file  specification  (filespec).   The default
                           file specification is DSK:USERS.TXT.

        EXIT               specifies to exit from DLUSER  and  return  to
                           the monitor.

        HELP               specifies   to   display   a   help    message
                           summarizing  the  functions  and  commands  of
                           DLUSER.

        LOAD filespec      specifies to load directory parameters from  a
                           file specification (filespec).

        STRUCTURE name     specifies the structure name  (name)  that  is
                           used  for  the  DUMP  or  LOAD  command.   The
                           default is your connected structure.

                         ----- Error Messages -----

   ? GROUP BLOCK IS TOO SMALL, ABORTING ...

        If this error occurs, notify the person  responsible  for  system
        software at your installation.

   ? INVALID COMMAND CONFIRMATION

        You pressed a key other than RETURN or LINE FEED after a command.

   ? INVALID STRUCTURE NAME GIVEN

        You specified a structure that is not mounted, or you forgot  the
        colon after the structure name.

   ? NOT A DLUSER COMMAND

        The command that you typed is not a valid DLUSER command.

   ? UNABLE TO GET FIRST DIRECTORY

        There is a problem on the structure for  which  you  are  running
        DLUSER.   The  file  you are dumping is not complete.  Run CHECKD
        with the CHECK BITTABLE command to determine the problems on  the
        structure.

   ? UNABLE TO GET NEXT DIRECTORY

        There is a problem on the structure for  which  you  are  running
        DLUSER.   The  file  you are dumping is not complete.  Run CHECKD
        with the CHECK BITTABLE command to determine the problems on  the
        structure.



   4.7  GETTING INFORMATION ABOUT DIRECTORIES

   To check various  directory  parameters  or  to  provide  your  System
   Manager  with  certain directory information, you can use the ^ECREATE
   command, the ^EPRINT command, or the  ULIST  program.   The  following
   three sections show what each one can list for you.

   If you decide to change any parameters after you have listed them,  be
   sure to run DLUSER (Part V Section 4.6.3) and dump the directories.

                                    4-19
                          SCHEDULED SOFTWARE TASKS


   4.7.1  Listing Directory Parameters with ^ECREATE

   If you expect to change some  directory  parameters,  this  method  is
   useful.

   To list all the parameters of one  directory,  use  the  LIST  VERBOSE
   command  to  ^ECREATE.   To  list only nondefaulted parameters for the
   directory, use the LIST command to ^ECREATE.  Type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECREATE structure:<directory>

        4.  LIST VERBOSE or LIST

        5.  DISABLE

        6.  POP

   You can omit the structure name in Step 3 if you are connected to  the
   structure   containing  the  directory.   You  can  also  change  some
   parameters  after  listing  them.   (See  Chapter  3  of  the  TOPS-20
   Operator's  Command  Language  Reference  Manual  for  details  on the
   ^ECREATE command.)

   The LIST VERBOSE sub-command to ^ECREATE outputs the same  information
   as  ^EPRINT  directory  VERBOSE, and LIST to ^ECREATE is equivalent to
   ^EPRINT directory.  The advantage of  using  the  LIST  subcommand  to
   ^ECREATE, instead of ^EPRINT, is that you can immediately give another
   subcommand to ^ECREATE.

                            ----- Examples -----

        1.  To list all parameters:

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @ENABLE<RET>
            $^ECREATE <HESS><RET>
            [OLD]
            $$LIST VERBOSE<RET>
             NAME <HESS>
             WORKING DISK STORAGE PAGE LIMIT 800
             PERMANENT DISK STORAGE PAGE LIMIT 300
             WHEEL
             NOT OPERATOR
             NOT CONFIDENTIAL INFORMATION ACCESS
             NOT MAINTENANCE
             NOT IPCF
             NOT ENQ-DEQ
             NOT FILES-ONLY
             NUMBER OF DIRECTORY 330
             DEFAULT FILE PROTECTION 777752
             ACCOUNT DEFAULT FOR LOGIN 841
             PROTECTION OF DIRECTORY 777740
             GENERATIONS TO KEEP 1
             MAXIMUM SUBDIRECTORIES ALLOWED 0
             LAST LOGIN 18-AUG-79 01:40:22
|            USER-OF-GROUPS 1
             DIRECTORY GROUPS - NONE SET
             SUBDIRECTORY USER GROUPS ALLOWED - NONE SET
|            TOPS-10 project-programmer number - none set

                                    4-20
                          SCHEDULED SOFTWARE TASKS


        2.  To list nondefaulted parameters:

            $^ECREATE (DIRECTORY NAME) ARCH:<MURPHY><RET>
            [OLD]
            $$LIST      
             NAME ARCH:<MURPHY>
             WORKING DISK STORAGE PAGE LIMIT 4000
             PERMANENT DISK STORAGE PAGE LIMIT 600
             IPCF
             NUMBER OF DIRECTORY 20
             GENERATIONS TO KEEP 3
             LAST LOGIN 19-AUG-79 11:51:30
|            USER-OF-GROUPS 1
|            TOPS-10 project-programmer number - none set

            $$<RET>




   4.7.2  Listing Directory Parameters with EPRINT

   To list all the parameters of one directory, use the  ^EPRINT  command
   with  the  VERBOSE  subcommand.  To list only nondefaulted parameters,
   use ^EPRINT with no subcommands.  Type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^EPRINT structure:<directory>,
            VERBOSE
            <RET>

            or

            ^EPRINT structure:<directory>

        4.  POP

   You can omit the structure name in Step 3 if you are connected to  the
   structure containing the directory.

   After you get the list of parameters with ^EPRINT, you must  then  use
   ^ECREATE to change any of them.

                            ----- Examples -----

        1.  To list the nondefaulted parameters of a directory:

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @ENABLE<RET>
            $^EPRINT <N.ROSEN><RET>
             NAME PS:<N.ROSEN>
             WORKING DISK STORAGE PAGE LIMIT 1000
             PERMANENT DISK STORAGE PAGE LIMIT 150
             NUMBER OF DIRECTORY 344
             ACCOUNT DEFAULT FOR LOGIN LANGUAGES
             LAST LOGIN 26-AUG-79 06:19:11
|            TOPS-10 project-programmer number - none set




                                    4-21
                          SCHEDULED SOFTWARE TASKS


        2.  To list all the parameters of a directory:

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            $^EPRINT <CPERLMAN>,<RET>
            $$VERBOSE<RET>
            $$<RET>
             Name GIDNEY:<CPERLMAN>
             Working disk storage page limit 50
             Permanent disk storage page limit 50
             not WHEEL
             OPERATOR
             not CONFIDENTIAL INFORMATION ACCESS
             not MAINTENANCE
             not IPCF
             not ENQ-DEQ
             not FILES-ONLY
             Number of directory 610
             Default file protection 777700
             Account default for LOGIN 341
             Protection of directory 777700
             Generations to keep 1
             Maximum subdirectories allowed 0
             Last LOGIN 1-Aug-83 12:23:50
             User of groups - none set
             Directory groups - none set
             Subdirectory user groups allowed - none set
|            Online expiration default 60 Days
|            Offline expiration default 90 Days
|            Remote aliases - none set
|            TOPS10 project-programmer number - none set

            $DISABLE<RET>
            @POP      
            OPR>




   4.7.3  Listing Directory Parameters with ULIST

   The ULIST program can give you four types of listings:

        1.  An alphabetic list of all directories on a structure and  all
            the directory parameters

        2.  A numeric list of directories on  a  structure  according  to
            directory numbers and all the directory parameters

        3.  A mini-listing containing only directory numbers and names on
            a structure

        4.  A  directory  group  listing  giving  groups  used,   highest
            directory  in  use,  first free directory, the directories in
            each group, the users having access to each group, the  users
            with   special   capabilities,   and   directories  that  are
            files-only.








                                    4-22
                          SCHEDULED SOFTWARE TASKS


   To run ULIST, you must have OPERATOR or WHEEL capability, but  you  do
   not need to type ENABLE.  Type PUSH to OPR> and type:

        1.  ULIST

        2.  ULIST commands, separated by <RET>,  to  select  the  desired
            type and format of listing

        3.  BEGIN to start the listing

        4.  EXIT to return to TOPS-20 command level

   When ULIST is running,  it  prompts  with  ULIST>  for  each  command.
   Follow  each  command  with <RET>.  To see the commands to ULIST, type
   HELP as the command.  For example:

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ULIST<RET>
        ULIST>HELP<RET>

        COMMANDS ARE:

        ALPHABETIC (LIST OF USERS)
        BEGIN (LISTING)          [Starts outputting the listing]
        DIRECTORY (GROUP LISTING)
        EXIT (TO MONITOR)
        HELP
        MINI (LISTING FORMAT)    [Name & directory number only]
        NARROW (PAPER FORMAT)
        NUMERIC (LIST OF USERS)
        OUTPUT (TO FILE) FILE-SPEC
        PRINT (LISTING ON PRINTER)
        STRUCTURE (TO USE) STR-NAME
        WIDE (PAPER FORMAT)

        ASSUMED ARE: NUMERIC, WIDE, OMIT, AND OUTPUT TO TTY:
        ULIST>

   The  different  types  of  lists  are  obtained  with   the   commands
   ALPHABETIC,  NUMERIC,  MINI, and DIRECTORY.  These commands correspond
   to the explanations at the beginning of this section.  If you  do  not
   specify  the type of list, NUMERIC is assumed.  Each of these commands
   produces a different listing.

   If you want the output on narrow paper (80 columns), give  the  NARROW
   command because WIDE (132 columns) is the default.

   The listing is printed on your terminal, because output  to  TTY:   is
   the  default,  unless you give the OUTPUT or PRINT command.  The PRINT
   command gives you a listing on the line printer.  OUTPUT followed by a
   file  specification puts the listing into the file given.  The default
   file for the OUTPUT command is USERS.TXT.












                                    4-23
                          SCHEDULED SOFTWARE TASKS


                            ----- Examples -----

        1.  To produce a numeric list of directories on  structure  SNARK
            on the printer with narrow paper.

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @ULIST<RET>
            ULIST>PRINT<RET>
            ULIST>STRUCTURE SNARK:<RET>
            ULIST>NARROW<RET>
            ULIST>BEGIN<RET>
             DONE

            ULIST>EXIT<RET>
            @POP<RET>
            OPR>

            There may be a time lag before and after DONE is output.

            The line printer listing starts as follows:
        NAME,ACCOUNT    (STRUCTURE: SNARK)      WED 5-MAR-82     PAGE 1
|         DIR#   PRIVILEGES  LOGIN-QUOTA LOGOUT-QUOTA USER-OF-GROUPS  DIR-GROUPS
        (   MODES     DEF-FILE-PRO   DIR-PROT   DEF-FILE-RET )

        SNARK:<ROOT-DIRECTORY>
              1            0         4700         4700
        (600000000000 500000777700 500000777700            1 )
        SNARK:<SYSTEM>
              2            0         7000         7000
        (600000000000 500000777752 500000777740            0 )
        SNARK:<SUBSYS>
              3            0        10000         4800                      1
        (600000000000 500000777752 500000770000            1 )
        SNARK:<ACCOUNTS>
              4            0        10000        10000
        (600000000000 500000777700 500000777700            0 )
        SNARK:<OPERATOR>,390
              5       300000         2000         2000   2479,2480
        SNARK:<SPOOL>
              6            0         2000          150
        (600000000000 500000777700 500000777777            0 )
        SNARK:<TES>,QA
                      20       0              250         250        5,4,7 2,4
        (200000000000 500000777700 500000777740            1 )


            Thus,  the  listing  is  in  ascending  order  according   to
            directory   number.   The  line  beginning  and  ending  with
            parentheses is omitted if the values for  the  parameters  in
            that line are system defaults.














                                    4-24
                          SCHEDULED SOFTWARE TASKS


   For each directory the following values are given:

        NAME

             This is the directory name.

        ACCOUNT

             This is the default account for a user logging into the
             directory.

        DIR-#

             This is the number of the directory.

        PRIVILEGES

             This is the right half of the capability word (bits 18-35).

             Bit 18=1 allows WHEEL capability
             Bit 19=1 allows OPERATOR capability
             Bit 20=1 allows CONFIDENTIAL INFORMATION ACCESS capability
             Bit 21=1 allows MAINTENANCE capability
             Bit 22=1 allows IPCF capability
             Bit 23=1 allows ENQ-DEQ capability
             Bit 24=1 allows NET-WIZARD privileges
             Bit 25=1 allows NETWORK ABSOLUTE SOCKET privileges
             Bit 26=1 allows DECnet-20 access
             Bit 27=1 allows ARPANET access

        LOGIN-QUOTA

             This is the number of pages for working  disk  storage  page
             limit.

        LOGOUT-QUOTA

             This is the number of pages for permanent disk storage  page
             limit.

|       USER-OF-GROUPS
|  
|            This indicates which directory groups the user can access.

        DIR-GROUPS

             This indicates which directory groups this directory is in.

        MODES

             This is the mode word of the directory (bits 0 to 35).

             Bit  0=1  allows  a  FILES-ONLY  directory  Bit  1=1  allows
             ALPHANUMERIC ACCOUNTS Bit 2=1 allows REPEATED LOGIN MESSAGES

        DEF-FILE-PRO

             This is the default file protection.  Only the rightmost six
             octal digits are significant.







                                    4-25
                          SCHEDULED SOFTWARE TASKS


        DIR-PROT

             This is the default protection for the directory.  Only  the
             rightmost six octal digits are significant.

        DEF-FILE-RET

             This is the default number of generations of a file to keep.

        2.  To produce an alphabetic list  of  directories  on  structure
            SNARK  on  your terminal, on narrow paper, type the following
            commands:

            OPR>PUSH      

             TOPS-20 Command processor 6(772)
            @ULIST      
            ULIST>NARROW (PAPER FORMAT)      
            ULIST>STRUCTURE (TO USE) SNARK:      
            ULIST>ALPHABETIC (LIST OF USERS)      
            ULIST>BEGIN      
             DONE

            The listing on your terminal starts to appear as follows:

   ^LNAME,ACCOUNT (STRUCTURE: SNARK)      WED 5-MAR-81    PAGE 1

|    DIR-#   PRIVILEGES  LOGIN-QUOTA LOGOUT-QUOTA USER-OF-GROUPS  DIR-GROUPS
   (   MODES     DEF-FILE-PRO   DIR-PROT   DEF-FILE-RET )

   SNARK:<1A>,
        65            0          250          250
   SNARK:<BEN>
       611       400000         2500         2000
   (600000000000 500000777752 500000777740            1 )
   SNARK:<FIELD-IMAGE>,
       315            0         2000          250                       1
   (600000000000 500000777752 500000777740            1 )
                                               .
                                               .
                                               .

            The  output  is  alphabetical   by   directory   name.    The
            information  for  each  directory  is  identical to that in a
            numeric list.  The line beginning and ending with parentheses
            is  omitted if the values for the parameters in that line are
            system defaults.


        3.  To get a mini-listing on your terminal on narrow paper of the
            directories  on  the  public  structure,  type  the following
            commands:

            @ULIST<RET>
            ULIST>MINI<RET>
            ULIST>NARROW<RET>
            ULIST>BEGIN<RET>
             DONE








                                    4-26
                          SCHEDULED SOFTWARE TASKS


            The listing appears on your terminal as follows:

            List of structure: PS       Wednesday, 5 March 82   

             1 PS:<ROOT-DIRECTORY>
             2 PS:<SYSTEM>                   72 PS:<BROWN>
             3 PS:<SUBSYS>                   73 PS:<MULLEN.C>
             4 PS:<ACCOUNTS>                 74 PS:<MAINTENANCE>
             5 PS:<OPERATOR>                 75 PS:<TWAITS>
             6 PS:<SPOOL>                    76 PS:<DIPACE.1>
             7                               77 PS:<CALABI>
            10                              100 PS:<SKOGLUND>
            11                              101 PS:<2BOSACK>
            12                              102 PS:<BEERS>
            13                              103 PS:<LEACHE>
            14                              104 PS:<MILLER>
            15                              105 PS:<HOLLAND>
            16                              106 PS:<SAMBERG>
            17                              107 PS:<FREE4>
            20 PS:<FINER>                   110 PS:<VANDERHOOFT>


            The output is given in order of directory numbers, going down
            the page in columns.  Each entry has a directory number and a
            structure name:directory name,  which  may  be  blank  if  no
            directory has been created for that number.

        4.  To get a directory group listing for the public structure  on
            your terminal on narrow paper, type the following commands:

            @ULIST      
            ULIST>DIRECTORY      
            ULIST>NARROW      
            ULIST>BEGIN      
             DONE

            The listing appears on your terminal as follows:

                         USER AND DIRECTORY GROUPS ON STRUCTURE: PS

                            WEDNESDAY, 5 March 82



            THE FOLLOWING GROUPS ARE IN USE:

            1       2       3       2393

            THE HIGHEST DIRECTORY IN USE IS NUMBER: 605

            THE FIRST FREE DIRECTORY NUMBER IS: 60

            THE FOLLOWING DIRECTORIES ARE IN GROUP  1

            PS:<1FIELD-IMAGE>, PS:<1HURLEY>, PS:<1KIRSCHEN>,
            PS:<1MILLER>,
            PS:<1MONITOR>, PS:<1SOURCES>









                                    4-27
                          SCHEDULED SOFTWARE TASKS


            THE FOLLOWING USERS HAVE ACCESS TO GROUP  1

            PS:<BOSACK>, PS:<HALL>, PS:<HELLIWELL>, PS:<HESS>,
            PS:<HURLEY>,
            PS:<KIRSCHEN>


            THE FOLLOWING DIRECTORIES ARE IN GROUP  2

            PS:<ABEL>, PS:<EXERCISER>


            THE FOLLOWING USERS HAVE ACCESS TO GROUP  2

            PS:<ALUSIC>
                                          .
                                          .
                                          .

            THE FOLLOWING USERS ARE WHEELS:

            PS:<HALL>, PS:<HURLEY>, PS:<KIRSCHEN>, PS:<MCLEAN>,
            PS:<MILLER>,
            PS:<SNYDER>

            THE FOLLOWING USERS ARE OPERATORS:

            PS:<OPERATOR>

            THE FOLLOWING USERS HAVE CONFIDENTIAL INFORMATION ACCESS:

            PS:<MCLEAN>

            THE FOLLOWING DIRECTORIES ARE FILES-ONLY:

            PS:<1-UTILITIES>, PS:<1A-EXEC>, PS:<1A-MONITOR>,
            PS:<1A-UTILITIES>,
            PS:<ROOT-DIRECTORY>, PS:<SPOOL>, PS:<SUBSYS>, PS:<SYSTEM>,
            PS:<V-SOURCES>
                                          .
                                          .
                                          .

            ULIST>EXIT      
            @POP      
            OPR>




















                                    4-28
                          SCHEDULED SOFTWARE TASKS


                             ----- Error Messages -----

   ? INVALID STRUCTURE NAME GIVEN

        You specified a structure that is not mounted or you omitted
        the colon after the structure name.

   ? ULIST: CANNOT OPEN SPECIFIED FILE

        The file access protection is such that you can not write into
        the file.

   ? ULIST: GARBAGE AT END-OF-COMMAND

        You typed an illegal character within the command or at the
        end of the command.

   ? ULIST: INVALID FILE SPECIFICATION

        The file specification that you typed is not valid.

   ? ULIST: NO SUCH ULIST COMMAND AS "command typed"

        You typed something that is not a ULIST command. Type HELP after
        the prompt to get a list of commands.

   ? ULIST: NOT PRIVILEGED TO READ SYSTEM FILES

        You need OPERATOR or WHEEL capability to
        read the directory information.



   4.8  CHECKING SYSTEM STATUS

   While the system is running, you may have to check on  the  status  of
   certain  jobs,  system  statistics,  or  devices.  the following three
   sections discuss various ways of doing these tasks.



   4.8.1  Determining the Status of Jobs with SYSTAT

   To get a summary of the jobs being used on the system, use the  SYSTAT
   command.   It  tells  you  the  job  number,  the terminal line number
   connected to that job, the program  being  run,  and  the  user.   The
   SYSTAT  command  can  also  be  followed  by an argument to get a more
   detailed summary or a specific part of the summary.  For example:

        @SYSTAT n

   where n is a job number, prints out information for job n only.

        @SYSTAT user

   where user is a user's name,  prints  out  information  for  the  jobs
   logged  in  by that user only.  (See the TOPS-20 User's Guide for more
   details on the SYSTAT command.)








                                    4-29
                          SCHEDULED SOFTWARE TASKS


                            ----- Examples -----

        1.  To get a summary of all jobs, type PUSH to OPR> and then type
            SYSTAT.

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @SYSTAT<RET>
             MON 15-JAN-79 14:56:21  UP 5:42:10
             21+6 JOBS   LOAD AV   3.43   3.72   4.26

            JOB  LINE  PROGRAM  USER
              2    13   MCO     HALL
              5    25   QUENCH  COHEN
              9    11   TV      PORCHER
             10    27   EXEC    CLARK
             11    56   FILCOM  KOHLBRENNER
             12    55   TV      EIBEN
             14    61   EXEC    FECZKO
             15     6   EXEC    POMMER
             16    14   EXEC    MILLER
             17    72   EXEC    BROWNE
             18    67   EXEC    1STUDENT
             19    24   EXEC    HURLEY
             20    22   DUMPER  MURPHY
             22   110   MACRO   MURPHY
             23    44   MACRO   DCAMPBELL
             24    63   EXEC    2STUDENT
             25    23   EXEC    MCKIE
             26    64   EXEC    3STUDENT

              4   107   DUMPER  OPERATOR
              7   103   LPTSPL  OPERATOR
              8   104   BATCON  OPERATOR
            @POP<RET>
            OPR>

        2.  To get a SYSTAT of job 10, type PUSH to OPR> and SYSTAT 10.

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @SYSTAT 10<RET>
              10    27  EXEC    CLARK
            @POP<RET>
            OPR>

        3.  To find out what jobs are running under OPERATOR,  type  PUSH
            to OPR> and SYSTAT OPERATOR.

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @SYSTAT OPERATOR<RET>

             0 DET  SYSJOB  OPERATOR
             1 101  PTYCON  OPERATOR
             4 217  OPR     OPERATOR
             7 103  LPTSPL  OPERATOR
             8 104  BATCON  OPERATOR
            @POP<RET>
            OPR>



                                    4-30
                          SCHEDULED SOFTWARE TASKS


   4.8.2  Watching System and Job Statistics with WATCH

   The WATCH program allows you  to  periodically  print  TOPS-20  system
   statistics and/or a job summary.  Under any job, type the following:

        1.  ENABLE

        2.  WATCH

        3.  After OUTPUT TO FILE:, type the name of the file  to  contain
            the  output;  it  can be TTY:  if you want the output on your
            terminal.  If you type /H after OUTPUT TO FILE:, you  get  an
            explanation  of  the  WATCH output and another prompt for the
            output file.

        4.  Type YES or NO to the questions PRINT MONITOR STATISTICS  and
            PRINT  JOB  SUMMARY.  If you answer NO to both questions, you
            get the output for load averages only.

        5.  After TUNE MODE?, type YES or NO.   If  you  type  YES,  only
            users with WHEEL or OPERATOR privileges may request a display
            which  includes  Tune  Mode  statistics  lines  with   column
            headings  on  every  page.   If  you answer NO, all users can
            request a display which include headings and load averages.

        6.  For the TIME PERIOD (MM:SS), type the number of minutes  (mm)
            and  seconds  (ss)  to  specify  a  fixed time period.  Press
            RETURN for a variable time period.  Type ?  for a  help  text
            on  time  periods.   If you requested a variable time period,
            you must press RETURN again whenever you  want  more  output.
            Statistics  are  gathered  over  every fixed or variable time
            period and then output.


                                    NOTE

                  The length of the time  period  actually
                  used   may   not  be  exactly  what  you
                  specified,  because  the   printing   of
                  information  may delay the next sampling
                  period.  Do not make the time period too
                  small,   because  WATCH  itself  uses  a
                  considerable amount  of  time.   A  time
                  period of two minutes is reasonable.


   To stop WATCH from reporting the statistics,  type  two  CTRL/Cs.   To
   stop the WATCH program and the reporting of statistics, type RESET and
   press the RETURN key.  Then, if your output was to a  disk  file,  you
   can PRINT it on the line printer.

   For additional information on the WATCH program,  type  or  print  the
   SYS:WATCH.HLP file.













                                    4-31
                          SCHEDULED SOFTWARE TASKS


                            ----- Example -----

   This example shows the output for one  time  period  of  two  minutes.
   Note  that  you must type CTRL/C twice to exit from WATCH.  Otherwise,
   for this example, WATCH would print a report every two minutes.

        OPR>PUSH      

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $WATCH<RET>

        WATCH 4(3), /H for help.
        Output to file: /H      

   For a detailed description of the WATCH program, refer  to  the  WATCH
   Document.



   4.8.3  Getting Other Information

   The system command INFORMATION (ABOUT) has several different arguments
   to  give  you  information  on various system and job parameters.  For
   arguments useful to you as an operator, refer to  the  TOPS-20  User's
   Guide.








































                                    4-32
                          SCHEDULED SOFTWARE TASKS


                            ----- Examples -----

        1.  To get information about the current system-status:

            OPR>PUSH<RET>

            @INFORMATION (ABOUT) SYSTEM-STATUS<RET>
             Operator is in attendance
             Remote logins allowed
             Local logins allowed
             Pseudo-terminal logins allowed
             ARPANET terminal logins are not allowed
|            DECnet terminal logins allowed
             Console terminal login allowed
             Accounting is being done
             Account validation is enabled
             Working set preloading is disabled
|            Sending of system level zero messages is enabled
|            Sending of system level one messages is enabled
|            Job zero CTY output is enabled
             Tape-drive allocation is enabled
             Automatic file-retrieval-waits allowed
             Maximum offline-expiration is 90 days
             Scheduler bias-control setting is 11
             Class scheduling is disabled
            @

        2.  To get information about the structure named SNARK: :

            @INFORMATION (ABOUT) STRUCTURE (NAME) SNARK:<RET>
             STATUS OF STRUCTURE SNARK:
             MOUNT COUNT: 1, OPEN FILE COUNT: 0, UNITS IN STRUCTURE: 1
             DOMESTIC
             USERS WHO HAVE MOUNTED SNARK: HESS
             USERS ACCESSING SNARK: HESS
             NO USERS CONNECTED TO SNARK:
            @




   4.9  LISTING USER REMARKS WITH RDMAIL

   To list users' comments that have been mailed  to  REMARKS,  type  the
   following commands:

        1.  PUSH to OPR>.

        2.  ENABLE capabilities.

        3.  Run RDMAIL.

        4.  Type Y to SPECIAL USER.

        5.  Type REMARKS to USER NAME.

        6.  Press RETURN to DATE AND TIME.

        7.  DISABLE capabilities.

        8.  POP to return to OPR>.





                                    4-33
                          SCHEDULED SOFTWARE TASKS


   All remarks that have not been read before  from  PS:<REMARKS>MAIL.TXT
   will be output on your terminal.

                                    NOTE

           If some  other  privileged  user  has  run  RDMAIL  on
           PS:<REMARKS> before you, in Step 5 above type the date
           and time you last did this task.



                            ----- Example -----

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $RDMAIL<RET>

        SPECIAL USER (Y OR N)? Y<RET>

        USER NAME: REMARKS<RET>
        DATE AND TIME  (/H FOR HELP)      
            .
            .
            .
        $DISABLE<RET>
        @POP<RET>
        OPR>

   The comments printed  on  your  terminal  should  be  distributed  and
   answered according to a method established by your System Manager.

   Sometimes you might need to perform other functions with  RDMAIL.   If
   you need to read all the remarks from PS:<REMARKS>MAIL.TXT, even those
   that you have listed before, type /A after DATE AND TIME.  If you need
   to read only those remarks created after a certain date and time, type
   after DATE AND TIME:

        mmm dd,yyyy hh:mm

   where:

          mmm = the first three letters of the month

           dd = the number for the day of the month

         yyyy = the year

        hh:mm = hour:minute (equal to 00:01 if omitted after the date)

   Other date formats can be accepted, but they are not recommended.

   To list the headings but not the text of the remarks,  type  date  and
   time, and then /P.  For example:











                                    4-34
                          SCHEDULED SOFTWARE TASKS


        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $RDMAIL<RET>

        SPECIAL USER (Y OR N)? Y<RET>

        USER NAME: REMARKS<RET>
        DATE AND TIME  (/H FOR HELP) SEP 20,1979/P      
           --------
        DATE: 20-SEP-79 20:39
        FROM: MCKIE
        TO: HELLIWELL
        CC: LEWINE,WERME,HESS,REMARKS

        SUBJECT: The EXECs printing of EDIT files.
           --------
        DATE: 22-SEP-79 10:23
        FROM: OSMAN
        TO: MILLER,REMARKS,OSMAN

        SUBJECT: ALLOWING USERS TO STOP SPENDING MONEY ....
           --------
        $DISABLE<RET>
        @POP<RET>
        OPR>

   To list remarks and  pause  between  each  one,  type  date  and  time
   followed by /S.  You are asked to press RETURN to get the next remark.
   You can stop the program with CTRL/C.

   To get help with RDMAIL, type /H after DATE AND TIME.  For example:

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $RDMAIL<RET>

        SPECIAL USER (Y OR N)? Y<RET>

        USER NAME: REMARKS      
        DATE AND TIME  (/H FOR HELP) /H<RET>

        TYPE IN A DATE AND TIME IN TOPS-20 FORMAT AS FOLLOWS:

                        MMM DD,YYYY HH:MM
        OR
                        MMM DD,YYYY

                THE LATTER CASE WILL ASSUME TIME 00:01.
                (FOR EXAMPLE, A VALID DATE AND TIME IS MAR 16,1976 15:30)

        OR      TYPE AN EMPTY LINE AND GET ALL MESSAGES SINCE THE LAST
                READING OF THE MESSAGE FILE.

        /H PRINT THIS TEXT
        /A TYPES ALL MESSAGES IN THE FILE
        /P FOR PERUSING MESSAGES ONLY
        /S WILL CAUSE RDMAIL TO PAUSE AFTER EACH MESSAGE TYPED
        /M WILL USE THE MESSAGE OF THE DAY FILE FOR MESSAGE TYPE OUT
        /L WILL OUTPUT MESSAGES TO THE LINE PRINTER
        DATE AND TIME  (/H FOR HELP)


                                    4-35
                          SCHEDULED SOFTWARE TASKS


                              ----- Hint -----

   Because the file PS:<REMARKS>MAIL.TXT continues to get bigger as users
   MAIL  their  remarks,  you  should periodically RENAME it and save the
   renamed file on magnetic tape with DUMPER.



   4.10  REPORTING SYSTEM ERRORS WITH SPEAR

   SPEAR is a program that selectively lists and  formats  parts  of  the
   system error file PS:<SYSTEM-ERROR>ERROR.SYS.  You should run it daily
   for summary information (see Example 1 below) and file  it  for  later
   reference   by  your  DIGITAL  Field  Service  Representative.   Then,
   whenever a piece of hardware seems to be failing, run SPEAR again  and
   request a detailed report for that device.

   To enter reports on users  and/or  devices  into  ERROR.SYS,  use  the
   REPORT  command at OPR command level.  Refer to the TOPS-20 Operator's
   Command Language Reference Manual for a complete  description  of  the
   OPR REPORT command.

   To run SPEAR, type the following to OPR>.

        1.  PUSH

        2.  SPEAR

        3.  Command lines to SPEAR

        4.  EXIT

        5.  POP

   When SPEAR is started, it prompts with the SPEAR prompt.  At that time
   you  can  type  a  command  line  to  SPEAR.   When SPEAR has finished
   processing one command line, it prompts again with the  SPEAR  prompt,
   so  you  can  give  another  command  line.   Type EXIT to leave SPEAR
   command level.

   To see the SPEAR help file on your terminal, type a "?" to  the  SPEAR
   prompt.

   SPEAR can also process commands from a disk file as well as from  your
   terminal.   This disk file, an indirect command file, is useful if you
   have a command line that you often use.  To make an  indirect  command
   file, create a file with the same command line that you would normally
   type to SPEAR from your terminal.  Then type the following to SPEAR:

        *@dev:name.typ

   where dev:  is the location of the file (default is DSK:) and name.typ
   is the name of the indirect command file.

   EXAMPLE

   @SPEAR<RET>
   Welcome to SPEAR for TOPS-20, Version 1.1(27)
   Type "?" for help.

   SPEAR> SUMMARIZE<RET>





                                    4-36
                          SCHEDULED SOFTWARE TASKS


   SUMMARIZE mode

        Event file (SERR:ERROR.SYS):<RET>

        Time from (EARLIEST):<RET>

        Time to (LATEST): LATEST<RET>

        Report to (DSK:SUMMAR.RPT):<RET>

   Type <cr> to confirm (/GO):<RET>
   INFO - Summarizing SERR:ERROR.SYS
   INFO - Now sending summary to DSK:SUMMAR.RPT
   INFO - Summary output finished

   SPEAR>EXIT<RET>

   Refer to the TOPS-10/TOPS-20 SPEAR  Manual  for  more  information  on
   SPEAR.

                                    NOTE

           The arguments in parenthesis are the  default  to  the
           SPEAR program.




   4.11  BACKING UP DISK FILES WITH DUMPER

   To minimize loss of disk files, you should put backup copies of  files
   on  magnetic  tape with DUMPER.  This should be done on a daily basis.
   You have the option of saving either all disk files or only those that
   have  not  been  saved  before  (called  an  incremental save).  It is
   advisable to save all files once a week and to do an incremental  save
   the  other  days.  An incremental save includes those files which have
|  not been saved since the last incremental save or  full  save.   Check
|  with  your  System  Manager  to  make sure that the correct version of
|  DUMPER is used to back up files.

   If your  installation  has  structures  other  than  PS:,  the  public
   structure,  be  sure  to  back  up files on those structures too.  Use
   different magnetic tapes for  different  structures,  and  follow  the
   procedure  for  a  full  save  or incremental save for each structure.
   (Refer to the TOPS-20 User Utilities Guide for details on  the  DUMPER
   utility program.)
|  
|  If your installation is part of  CFS,  you  must  run  DUMPER  on  the
|  processor that has a direct connection to the required tape drive.

















                                    4-37
                          SCHEDULED SOFTWARE TASKS


                                  WARNING

           When you are backing up the public structure never use
           a  labeled tape.  The reason for this is if the backup
           tape is the only method you have to BOOT  the  system,
           the  software  components  you  need  to read the tape
           label are not running.

   The following steps explain the DUMPER procedure with OPR  and  DUMPER
   commands.

                                    NOTE

           DUMPER does not work on a 7-track magnetic tape  drive
           (TU71).

   To save all disk files of a structure, do the following:

        1.  Type PUSH to OPR.

        2.  Type ENABLE.

        3.  Type MOUNT TAPE setname:  with the /WRITE-ENABLED switch, the
            /LABEL-TYPE:   switch,  and the /VOLIDS:  switch, the /NOWAIT
            switch, and any additional switches  desired  for  the  MOUNT
            command.  It is important to give as many volids as you think
            you need to backup all the files you want to save.

        4.  Physically mount and ready a tape that has been assigned  for
            DUMPER backups.

        5.  When MOUNTR replies with the Tape Mount Request and with  the
            acknowledgement  of  the  tape being mounted, press <RET> and
            type POP to return to OPR.

        6.  If it is an unlabeled tape, give the IDENTIFY command to  OPR
            to identify the tape drive to the mount request.

        7.  When MOUNTR replies with Tape Drive Given To Request  number,
            type PUSH to OPR.

        8.  If you want to save files from a structure  other  than  PS:,
            type MOUNT STRUCTURE str:.

        9.  After the system has displayed the defined tape drive for the
            setname:, type DUMPER.




















                                    4-38
                          SCHEDULED SOFTWARE TASKS


       10.  Type the following DUMPER commands:

            TAPE MTn:     or     TAPE setname:
            SAVE /FULL-INCREMENTAL str:

            Structure is the name of the structure for which you did  the
            MOUNT  above,  or  it  is  omitted  along  with  the colon to
            indicate your currently connected structure.

            As DUMPER starts to save files  for  each  directory  on  the
            structure, it prints the structure and directory name.

       11.  If you receive the message:

            [Mounting next tape volume]

            mount another tape as specified in the MOUNT TAPE command  on
            MTn  or  any  available tape drive.  Then press CTRL/C twice,
            POP to OPR, and IDENTIFY the tape drive to the mount request.

       12.  When MOUNTR replies  the  acknowledgment  that  the  tape  is
            mounted,  type PUSH to OPR, and type CONTINUE to continue the
            DUMPER backup process.

       13.  After DUMPER has finished the SAVE, DUMPER prints  two  total
            lines, and you are prompted with the DUMPER> prompt.

       14.  Type EXIT to DUMPER.

       15.  Type DISMOUNT TAPE MTn:  to rewind and unload the tape.   You
            can  also  type  DISMOUNT TAPE setname:  to rewind and unload
            the tape.

       16.  If you did a MOUNT STRUCTURE above, type  DISMOUNT  STRUCTURE
            str:.

       17.  Type DISABLE.

       18.  Type POP to return to OPR.

       19.  Physically remove the tape(s) from the drive(s).

       20.  Store the magnetic tapes and DUMPER's output to your terminal
            in the place decided upon by your System Manager.



                             ----- Hints -----

   If you do not specify enough volids to backup the  mounted  structure,
   the  system prompts you with the following when DUMPER reaches the end
   of the last reel specified in the MOUNT command:

        hh:mm:ss  <n>     --Key In Next Volume Identifier--
                        Supply next volume-id for tape set setname:
                        User username, Job n, Line n
                        Respond with either of:
                          VOLUME volid
                          REFUSE reason







                                    4-39
                          SCHEDULED SOFTWARE TASKS


   You must then press <RET>, type POP  to  return  to  OPR,  and  supply
   another  volid  by  giving  the  OPR  command RESPOND nn VOLUME volid.
   Another Tape Mount Request now appears.  You must then mount and ready
   the  tape and IDENTIFY the tape drive to the mount request.  Then PUSH
   and CONTINUE to return to DUMPER and the backup process.

   To save space due to inter-record gaps on the DUMPER  tapes,  you  can
   specify the following DUMPER command before you give the SAVE command:

        SET BLOCKING-FACTOR nn

   This command sets the number of logical records that are blocked  into
   a  single physical record.  The number (nn) must be in a range of 1 to
   15.  The default is 1.  The limits for  the  densities  (BPI)  are  as
   follows:

        1.  Density 200 - 1

        2.  Density 556 - 3

        3.  Density 800 - 4
|  
|       4.  Density 1600 - 10

        5.  Density 6250 - 15



                            ----- Example -----

   Run DUMPER to save all files on structure PS:  on an unlabeled tape.

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE<RET>
        $MOUNT TAPE DUMPER: /LABEL-TYPE:UNLABELED/WRITE-ENABLED-<RET>
        /VOLIDS:DUMP01,DUMP02/NOWAIT<RET>
        [Waiting for Tape/Structure Mount]

        16:30:00          --Tape Mount Request # 102--
                        Mount Unlabeled volume DUMP01, WRITE-ENABLED
                        User OPERATOR, Job 6, Terminal 1

        16:30:03          --MTA0: Unlabeled tape mounted--
              
        $POP      
        OPR>IDENTIFY MTA0: REQUEST-ID 102      
        OPR>
        16:32:01          --MTA0: Given To Request 102--
                        Volume DUMP01 now in use by
                        User OPERATOR, Job 6, Terminal 1
        OPR>PUSH<RET>
        [Tape set DUMPER, volume DUMP01 mounted]
        [DUMPER: defined as MT0:]
        $DUMPER<RET>
        DUMPER>TAPE MT0:<RET>
|       DUMPER>SET BLOCKING-FACTOR 10<RET>
        DUMPER>SAVE /FULL-INCREMENTAL PS:<RET>







                                    4-40
                          SCHEDULED SOFTWARE TASKS


|       DUMPER tape # 1, Saturday, 14-Apr-84 1452.  , Volid DUMP01
        PS:<ACARLSON>
        PS:<ACCOUNTS>
        PS:<BAKER>
             .
             .
             .
        PS:<BLISS>
        [Mounting next tape volume]
        16:50:45         --Tape Drive Released By User--
                       MTA0: Volume DUMP01 Being unloaded

        16:51:01         --Tape Mount Request # 103--
                       Mount Unlabeled volume DUMP02, 9-TRACK,
                       WRITE-ENABLEd
                       User OPERATOR, Job 6, Terminal 1

        16:51:21         --MTA0: Unlabeled tape mounted--

        ^C
         ^
        <CTRL/C><CTRL/C>
        $POP<RET>
        OPR>IDENTIFY MTA0: REQUEST-ID 103<RET>
        OPR>
        16:52:45         --MTA0: Given to Request 103--
                       Volume DUMP02 now in use by
                       User OPERATOR, Job 6, Terminal 1
        OPR>PUSH<RET>
        $CONTINUE<RET>

|       DUMPER tape # 2, Saturday, 14-Apr-84 1401.  Volid DUMP02
        PS:<COX>
        PS:<DENNY>
        PS:<ELFSTROM>
             .
             .
             .
        PS:<ZINA>


        Total files dumped = 604
        Total pages dumped = 8835
        DUMPER>EXIT<RET>
        $DISMOUNT TAPE DUMPER:<RET>
        [Tape dismounted, logical name DUMPER: deleted]
        17:15:07         --Tape Drive Released By User--
                       MTA0: Volume DUMP02 Being unloaded
        $POP<RET>
        OPR>

   To do an incremental save of a structure, follow  the  same  steps  as
   described previously for a full save of a structure with the following
   exception:  at DUMPER command level, type

        SAVE /INCREMENTAL:1 str:

   where str:  is the structure name for the incremental save.








                                    4-41
                          SCHEDULED SOFTWARE TASKS


                            ----- Example -----

   Run DUMPER to do an incremental save on structure MISC:  on an unlabel
   tape.

        OPR>PUSH<RET>

         TOPS-20 Command processor 6(772)
        @ENABLE      
        $MOUNT TAPE INCRMT: /WRITE-ENABLED/LABEL-TYPE:UNLABELED-<RET>
        /VOLIDS:DUMP09/NOWAIT<RET>
        [Waiting for Tape/Structure Mount]

        17:18:00          --Tape Mount Request # 112--
                        Mount Unlabeled volume DUMP09, WRITE-ENABLED
                        User OPERATOR, Job 6, Terminal 1

        17:18:25          --MTA2: Unlabeled tape mounted--
              
        $POP      
        OPR>IDENTIFY MTA2: REQUEST-ID 112<RET>
        OPR>
        17:20:03          --MTA2: Given To Request 112--
                        Volume DUMP09 now in use by
                        User OPERATOR, Job 6, Terminal 1
        OPR>PUSH<RET>

        $mount structure misc      
        [Tape set INCRMT, volume DUMP09 mounted]
        [INCRMT: defined as MT1:]
        $DUMPER<RET>
        DUMPER>TAPE MT1:<RET>
        DUMPER>SAVE/INCREMENTAL:1 MISC:<RET>

|       DUMPER tape # 1, Saturday, 14-Apr-84 1206.  , Volid DUMP09

        MISC:<ACCOUNTS>
        MISC:<BARON>
        MISC:<BROWN>
        MISC:<HOVSEPIAN>
        MISC:<OPERATOR>
           .
           .
           .
        MISC:<PALL>
        MISC:<ROLAND>

        Total files dumped = 467
        Total pages dumped = 7721
        DUMPER>EXIT<RET>
        $DISMOUNT TAPE MT1:<RET>
        [Tape dismounted]

        17:31:52          --Tape Drive Released By User--
                        MTA2: Volume DUMP09 Being unloaded

        $DISMOUNT STRUCTURE MISC:<RET>

        17:32:31          --STRUCTURE DISMOUNTED--
                        Structure MISC: (Alias: MISC) dismounted
        $POP      
        OPR>




                                    4-42
                          SCHEDULED SOFTWARE TASKS


                             ----- Hints -----

   If you are saving disk files with DUMPER and the system  crashes,  you
   do  not  have  to start from the beginning after the system is started
   again.  Do the following:

        1.  Leave the tape positioned where it is.

        2.  Type PUSH to OPR>.

        3.  Type ENABLE.

        4.  Type MOUNT TAPE setname:  and specify the same switches  that
            were  specified  for  the tape mount before the system crash,
            but specify new tape volids.

        5.  Type POP to return to OPR and give the  IDENTIFY  command  to
            identify the tape drive to the mount request.  Then type PUSH
            to return to TOPS-20 command level.

        6.  If you are saving files from a structure other than PS:, type
            MOUNT STRUCTURE STR:.

        7.  Type DUMPER.

        8.  Type the following DUMPER commands:

            TAPE MTn:
            INIT <directory>
            SAVE/FULL-INCREMENTAL str: or SAVE /INCREMENTAL:n str:

            where directory is the last directory name output  by  DUMPER
            before  the  system  crashed and structure is the name of the
            structure for which you did the MOUNT above.   You  can  omit
            str:  to indicate your currently connected structure.

        9.  Follow Steps 11 through 20 above.

   If you are restoring files with DUMPER and the system crashes, you can
   use  the same technique stated above.  Simply replace the SAVE command
   and switches with RESTORE and appropriate switches.



   4.12  ENDING TIMESHARING WITH ^ECEASE

   As soon as you know the next scheduled time to  end  timesharing,  use
   the ^ECEASE command.  Type to OPR>:

        1.  PUSH

        2.  ENABLE

        3.  ^ECEASE (TIMESHARING AT) date time (RESUMING AT) date time
|  
|       4.  <RET> to confirm the shutdown

        5.  POP








                                    4-43
                          SCHEDULED SOFTWARE TASKS


                            ----- Examples -----

        1.  OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @ENABLE<RET>
            $^ECEASE 8-Feb-84 1900 8-Feb-84 2000<RET>
|           CLOYD shut down scheduled for 8-Feb-84 17:05:24
|           [Confirm]
|           $<RET>
            $POP<RET>
            OPR>

        2.  To cancel a ^ECEASE command, type ^ECEASE and press RETURN.

            OPR>PUSH<RET>

             TOPS-20 Command processor 6(772)
            @ENABLE<RET>
            $^ECEASE<RET>
            [SHUTDOWN CANCELLED]
            $POP<RET>
            OPR>

   If you also need to power down  the  hardware  after  timesharing  has
   finished, do the following:

        1.  Wait until SHUTDOWN COMPLETE is output on the CTY.

        2.  Type  CTRL/\  (control  backslash)  to  enter   the   console
            processor command language.

        3.  Give  the  SHUTDOWN  command  and  wait  for  the  **HALTED**
            message.

        4.  Unload all tape drives.

        5.  Power down the tape drives.

        6.  Stop all disk drives by  setting  the  START/STOP  switch  to
            STOP.

        7.  Turn off system power by setting the black  power  switch  to
            POWER OFF.






















                                    4-44
                                        














                                  PART VI
                         ERROR RECOVERY PROCEDURES



                                  ABSTRACT

|                 This  Chapter  describes  various  error
|                 recovery  procedures  for  the 2040S and
|                 2060 hardware systems.



                                      CONTENTS



   CHAPTER 1       ERROR RECOVERY PROCEDURES  

           1.1     AUTOMATICALLY RELOADING AND DUMPING THE SYSTEM . . 1-1
           1.2     MANUALLY RELOADING AND DUMPING THE SYSTEM  . . . . 1-2
           1.2.1     Scheduled Reloads  . . . . . . . . . . . . . . . 1-2
           1.2.2     Reloads and Dumps for a Hung or Looping System . 1-2
           1.3     SETTING THE CORRECT DATE AND TIME  . . . . . . . . 1-4
           1.4     ERROR MESSAGES AND ACTION TO TAKE  . . . . . . . . 1-5
           1.4.1     Device Error Messages  . . . . . . . . . . . . . 1-5
           1.4.2     BUGCHKs, BUGINFs, and BUGHLTs  . . . . . . . . . 1-6
           1.4.3     HOME Block or BAT Block Inconsistencies  . . . . 1-8
           1.4.4     Parity Errors  . . . . . . . . . . . . . . . .  1-11
           1.4.5     DX20 Error Messages  . . . . . . . . . . . . .  1-12
           1.4.6     Reaper Error Messages  . . . . . . . . . . . .  1-12
           1.4.7     Tape Handling Error Messages . . . . . . . . .  1-13
           1.4.8     Bootstrap Error Messages . . . . . . . . . . .  1-15
           1.5     RECOVERING THE FILE SYSTEM . . . . . . . . . . .  1-19
           1.5.1     Rebuilding a Directory Symbol Table with 
                     EXPUNGE  . . . . . . . . . . . . . . . . . . .  1-19
           1.5.2     Reconstructing a Directory . . . . . . . . . .  1-20
           1.5.3     Reconstructing the ROOT-DIRECTORY  . . . . . .  1-22
           1.5.4     Re-Creating the File System or a Structure . .  1-25
           1.6     DIAGNOSING YOUR SYSTEM FROM A REMOTE LOCATION VIA 
                   KLINIK . . . . . . . . . . . . . . . . . . . . .  1-28
           1.7     CORRECTING DISK SPACE WITH CHECKD  . . . . . . .  1-31
           1.7.1     Reports from CHECK BITTABLE  . . . . . . . . .  1-38
           1.8     RESTARTING PROGRAMS UNDER SYSJOB . . . . . . . .  1-43
           1.8.1     GALAXY Crash Recovery Procedures . . . . . . .  1-45
           1.9     HUNG CONSOLE TERMINAL (LA36) . . . . . . . . . .  1-49
           1.10    MEMORY CONFIGURATION FAILED  . . . . . . . . . .  1-49
           1.11    TOPS-20 MONITOR NOT FOUND  . . . . . . . . . . .  1-49
           1.12    PS NOT FOUND . . . . . . . . . . . . . . . . . .  1-50
           1.13    BOOTSTRAP LOAD FAILED  . . . . . . . . . . . . .  1-51
           1.14    MANUALLY RELOADING THE DX20  . . . . . . . . . .  1-51
   INDEX


                                    4-45
                                        


   TABLES

           1-1     GALAXY Component Crash Recovery Procedures . . .  1-45































































                                    4-46




































































                                    1-1











                                 CHAPTER 1

                        ERROR RECOVERY PROCEDURES  



   While the system is running, unexpected errors may  occur.   Sometimes
   the  system  tries  to  recover,  but other times you may have to take
   corrective action.  This chapter describes some of the errors that you
   may encounter and how to correct them.



   1.1  AUTOMATICALLY RELOADING AND DUMPING THE SYSTEM

   Because there is one monitor (TOPS-20)  for  the  main  processor  and
   another  (RSX-20F) for the console front-end processor, it is possible
   for either one to crash (halt or hang) and for either one  to  restart
   the other.

   When TOPS-20 halts because of a BUGHLT (Part VI Section 1.4.2), it  is
   usually  reloaded and started by RSX-20F.  During automatic reloading,
   RSX-20F writes a KLERR entry containing information about the  central
   processor  at  the  time  of the crash.  Once TOPS-20 is running, this
   KLERR entry is appended to the ERROR.SYS file (Part V  Section  4.10).
   The  automatic  reloading  process  also  dumps  KL memory to the file
   PS:<SYSTEM>DUMP.EXE.  Once TOPS-20 is  running  again,  that  file  is
   automatically  copied to DUMP.CPY with a new generation number so that
   successive memory dumps do not destroy any  previous  ones.   DUMP.CPY
   and its generation number are output on the CTY when the COPY is done.

   When RSX-20F halts, it is usually reloaded by TOPS-20.  However,  some
   output  for  the  CTY  might  not get printed.  This output includes a
   BUGCHK or BUGINF, PTYCON  output,  and  PROBLEM  ON  DEVICE  messages.
   During   a  reload,  the  front-end  memory  is  dumped  to  the  file
   PS:<SYSTEM>0DUMP11.BIN.n, where n is the file generation  number.   On
   successive  dumps, the generation number is increased so that previous
   dumps are not overwritten.  The  filename,  including  the  generation
   number, is placed into ERROR.SYS (Part V Section 4.10).

   For automatic reload of TOPS-20, the front end assumes the  last  used
   bootstrap  device  and  BOOT.EXB  as  the KL bootstrap.  BOOT.EXB then
   reads in the default monitor, PS:<SYSTEM>MONITR.EXE.

   When a reload occurs, write as much information as possible about  the
   crash in the installation logbook.  Include the following:

        1.  Date and time of the crash

        2.  TOPS-20 or RSX-20F reload

        3.  Name of the BUGHLT, job number, and user name





                                    1-1
                        ERROR RECOVERY PROCEDURES  


        4.  Names of the files containing the TOPS-20 monitor  before  it
            was run and the memory dump

   If your System Manager or software specialist decides  to  report  the
   crash to DIGITAL, you must provide:

        1.  The information for the crash from the logbook

        2.  A copy of the memory dump and the TOPS-20 monitor  before  it
            was  run.   Use  DUMPER -- NOT  in  interchange  mode -- on a
            9-track tape at 1600 bits/inch (63 rows/mm)

        3.  The CTY output when the crash occurred

        4.  For TOPS-20 crashes, the output  from  SPEAR  containing  the
            KLERR information


                              ----- Hint -----

   As soon as possible, memory dump files should be put on magnetic  tape
   with DUMPER and deleted from disk to free some space.



   1.2  MANUALLY RELOADING AND DUMPING THE SYSTEM

   You must manually reload the system when it is time  for  a  scheduled
   reload  or  when  the  system  is  hung  or  looping, for example, not
   responding to users.



   1.2.1  Scheduled Reloads

   For scheduled reloads, you can use the  procedure  given  in  Part  IV
   Sections 1.2.1, 1.2.2, or 1.2.3.  However, if the system is running at
   the time you want to reload, you must:

        1.  Give a ^ECEASE command (Part V Section 4.12) and  wait  until
            the  system  is  down.   At  that  time, SHUTDOWN COMPLETE is
            printed on the CTY.

        2.  Type  CTRL/\  (control  backslash)  to  enter   the   console
            processor command language.

        3.  Give the SHUTDOWN command.

        4.  After the **HALTED** message, reload the system.




   1.2.2  Reloads and Dumps for a Hung or Looping System

   Determining whether it is TOPS-20 or RSX-20F that is hung  or  looping
   might  be  difficult.  If you are able to get to the console processor
   command language by typing CTRL/\, RSX-20F is probably okay.








                                    1-2
                        ERROR RECOVERY PROCEDURES  


   Assuming that TOPS-20 is looping, try the following steps:

        1.  Type CTRL/\ to enter the console processor command  language.
            If you do not get to the PARSER, assume the front end is hung
            and proceed with the steps below for a hung  front  end.   If
            you get the PARSER prompt(PAR>), proceed with Step 2.

        2.  Type REPEAT 5;EXAMINE KL to print the current program counter
            (PC)  and  the  current  state of the priority interrupt (PI)
            system five times.  Save this output.

        3.  Type SHUTDOWN.  If you do not  get  the  message  **HALTED**,
            type CTRL/\ ABORT and press the RETURN key.

        4.  Reload via the switch register (Part IV,  Section  1.2.3)  to
            enter the dialog, and answer BOOT to the first question.

        5.  When BOOT prompts, type /D      to dump KL memory to the file
            PS:<SYSTEM>DUMP.EXE.   Later the file is automatically copied
            to another name.  When the copy is done,  note  the  filename
            printed on the CTY.

        6.  Press RETURN to load PS:<SYSTEM>MONITR.EXE, or type the  name
            of the monitor to be loaded.

        7.  Answer questions in the loading procedure  (Part  IV  Section
            1.2).

   Assuming the front end is hung, try the following:

        Manually halt the front end by pressing and then raising the HALT
        switch  which is to the right of the switch register.  Wait 10 to
        15 seconds; TOPS-20 may  try  to  reload  the  front  end.   Then
        consider the following three cases.

        1.  If RSX-20F reloaded successfully, and  everything  now  seems
            okay,  report  the  situation  to  your  System  Manager  and
            software  specialist.   A  dump  of   front-end   memory   is
            automatically  placed into the file PS:<SYSTEM>0DUMP11.BIN.n,
            where n is the file generation number.  The  filename,  along
            with the generation number, is entered in ERROR.SYS.

        2.  If RSX-20F is reloaded, but the  system  still  seems  to  be
            hung, try the procedure above for TOPS-20 looping.

        3.  If RSX-20F does not reload, for example, you do not  get  the
            following messages:

|                RSX-20F YB15-20 7:40 5-OCT-84

                 [SY0: REDIRECTED TO dev:]
                 [dev: MOUNTED]

            and the console light is on,  TOPS-20  is  probably  looping.
            You  should  then  follow  the  procedure  above  for TOPS-20
            looping.  You could also  wait  about  five  minutes  to  let
            TOPS-20  get  a  BUGHLT,  so that the front end automatically
            reloads  it.   However,  if  RSX-20F  does  not  successfully
            reload, you lose the EXAMINE KL output.  If you let the front
            end reload TOPS-20, once the system is up,  be  sure  to  run
            SPEAR to get KLERR information.





                                    1-3
                        ERROR RECOVERY PROCEDURES  


                              ----- Hint -----

   Be sure to log any reloads  in  your  installation's  system  logbook.
   Include the following:

        1.  Any information about the reason for reloading

        2.  When and how the reload was done

        3.  Attachment of EXAMINE KL output, if any

        4.  Whether KL or front-end memory was dumped and to which  files
            they were dumped

   To report the crash to DIGITAL, supply the above information,  a  copy
   of the TOPS-20 monitor before it was run, any memory dumps on magnetic
   tape, and any SPEAR output containing KLERR information.



   1.3  SETTING THE CORRECT DATE AND TIME

   If you notice that  the  date  and  time  printed  by  the  system  is
   incorrect,  immediately  notify  your  System Manager.  For accounting
   purposes, he may want you to reload the system.  However, he may  want
   you  to  correct  only the date and time.  You can change the date and
   time with ^ESET DATE-AND-TIME.  If you need to  change  the  date,  be
   sure  you first warn all users via ^ESEND that you are going to change
   the date, because that action may affect their work.

   To correct the date and time, type the following commands:

        1.  PUSH to OPR

        2.  ENABLE your capabilities

        3.  ^ESEND * DATE AND TIME WILL BE SET BACK TO MAKE THEM CORRECT

        4.  ^ESET DATE-AND-TIME date time

        5.  DAYTIME

        6.  POP

   (For valid date and time formats,  see  the  ^ECEASE  command  in  the
   TOPS-20  Operator's  Command Language Reference Manual.  Also, see the
   same manual for more detail on ^ESET and ^ESEND.)

                            ----- Example -----

        OPR>PUSH<RET>

|        TOPS-20 Command Processor 6(514)
        @ENABLE (CAPABILITIES)<RET>
        $^ESEND * DATE AND TIME WILL BE SET BACK TO MAKE THEM CORRECT<RET>

        [FROM OPERATOR: DATE AND TIME WILL BE SET BACK TO MAKE THEM CORRECT]
|       $ESET DATE-AND-TIME (TO) 3-MAR-84 1047<RET>
        $DAYTIME<RET>
        $POP<RET>
        OPR>





                                    1-4
                        ERROR RECOVERY PROCEDURES  


   1.4  ERROR MESSAGES AND ACTION TO TAKE

   Error messages come from many different sources.  Those from  programs
   are usually documented with the task involving that program.  The next
   eight sections discuss device error messages,  BUGCHKs,  BUGINFs,  and
   BUGHLTs  from  TOPS-20,  HOME  and  BAT  block  messages  from  the KL
   bootstrap  and  from  TOPS-20,  TOPS-20  parity  errors,  DX20   error
   messages,  REAPER  error  messages,  tape handling error messages, and
   bootstrap error messages.



   1.4.1  Device Error Messages

   When problems occur on various devices,  you  receive  on  the  CTY  a
   message  beginning  with  %PROBLEM  ON  DEVICE.  The message continues
   printing every minute until you correct  the  problem.   The  specific
   messages and their corrective actions are given below.

   %PROBLEM ON DEVICE: MTAn, S.N.=s, ACCESS PATH: CHN=c, cont=t, UNI=u

           n = logical unit number
           s = serial number
           c = channel number
        cont = TM02, TM03, or DX20
           t = number of the TM02, TM03, or DX20
           u = physical unit number on the controller

        There is a problem with the magnetic tape drive, logical unit  n.
        Check  if  the drive has lost vacuum, if the tape has run off the
        reel, or if the drive is not on-line.  Warn the  user  if  vacuum
        was lost.

   %PROBLEM ON DEVICE PCDR0

        There is a problem with the card reader.  Check  if  one  of  the
        following error indicator lights is lit:

        1.  READ CHECK

            A card edge is torn, column 0 or 81 is punched, or two  cards
            were  picked  at the same time.  To correct the problem for a
            faulty card, remove the card and press RESET to  restart  the
            reader.  If no cards are faulty, reread the last two cards in
            the output stacker.  If READ CHECK  occurs  for  every  card,
            notify your DIGITAL Field Service Representative.

        2.  PICK CHECK

            A card edge is damaged, webs are torn, or cards  are  stapled
            together.   If  a  card is damaged, remove it and restart the
            reader by pressing RESET.  If no cards are damaged, check for
            excessive  warpage of the card deck or a buildup of ink glaze
            on the picker face.  If webs are torn,  notify  your  DIGITAL
            Field Service Representative.

        3.  STACK CHECK

            Either there is a badly mutilated card or there is a  jam  in
            the  card  track.  To fix the problem, remove the bad card or
            correct the jam and restart the reader by pressing RESET.















                                    1-5
                        ERROR RECOVERY PROCEDURES  


        4.  HOPPER CHECK

            Either the input hopper is empty or  the  output  stacker  is
            full.   To  correct  the  problem,  load  the input hopper or
            unload the output stacker.

   %PROBLEM ON DEVICE PLPTn

        There is a problem with  line  printer  unit  n.   Check  if  the
        printer is on-line, has paper, or has any error lights on.

   %PROBLEM ON DEVICE: RP0n, STR=t, S.N.=s, ACCESS PATH: CHN=c, UNI=u

|       n = 4, 6, 7, 20, 60 or 81 for the type of disk drive
        t = structure name
        s = serial number
        c = channel number
        u = unit number

        There is a problem with a disk drive.  Check if it is READY or if
        any  error lights are on.  If STNDBY is lit, turn the drive power
        OFF and then ON.  If UNSAFE  is  lit,  you  should  contact  your
        DIGITAL  Field  Service  Representative,  as  there  could  be  a
        hardware problem.

                            ----- Example -----

   %PROBLEM ON DEVICE: MTA1, S.N=0024, ACCESS PATH: CHN=0, TM02=5, UNI=2
|  
|                                   NOTE
|  
|          If the disk drive is on the CI or is served  by  MSCP,
|          the  output  will  also  show  what  node the disk was
|          connected to.



   1.4.2  BUGCHKs, BUGINFs, and BUGHLTs

   When TOPS-20 encounters certain questionable situations, it  generates
   a  BUGCHK  or BUGINF.  Then, some informational messages are output on
   the CTY, and TOPS-20 continues.  When TOPS-20 encounters  a  situation
   from  which  it  is  not advisable to continue, it generates a BUGHLT.
   TOPS-20 is then reloaded and restarted by the front end.

   When a BUGCHK is encountered, the following is output on the CTY:

        ********************
        *BUGCHK "name" AT dd-mmm-yy hh:mm:ss
        *message
        *JOB: n, USER: user-name
        *ADDITIONAL DATA: data, data, data, data
        ********************

   The lines beginning with JOB: or ADDITIONAL DATA: may not appear.  The
   system then continues.

   The output is similar for BUGINFs.

                            ----- Example -----

        ********************
        *BUGCHK "P2RAE1" AT 3-MAR-79 13:26:32
        *PHYH2 - RH20 REGISTER ACCESS ERROR READING REGISTER
        *ADDITIONAL DATA: 10005210602, 407415
        ********************










                                    1-6
                        ERROR RECOVERY PROCEDURES  


                                    NOTE

                  After a power-fail restart,  the  system
                  prints   BUGCHK   "PWRRES",  the  system
                  continues,  but  all  jobs   that   were
                  attached to a terminal are detached.  If
                  the detached jobs are  not  attached  to
                  within  five  minutes,  they  are logged
                  out.


   When a BUGHLT occurs, the following is output on the CTY.

        %DECSYSTEM-20 NOT RUNNING

        **********
        *BUGHLT "name" at date and time
        *JOB number, User: User name
        **********

|  You can find the message corresponding to the  BUGHLT  "name"  in  the
|  document,  BUGHLT Documentation.  The message pertaining to the BUGHLT
   is not printed on the CTY.  The front-end then reloads and starts  the
   TOPS-20 monitor.

                            ----- Example -----

        %DECSYSTEM-20 NOT RUNNING

        **********
|       *BUGHLT "KPALVH" AT 5-MAR-84 12:53
        *JOB: 000000000032, USER: LEACHE
        **********


        KL HALTED


        RE-BOOT REQUESTED
        KLERR -- VERSION V02-02 RUNNING
        KLERR -- KL IN HALT LOOP
        KLERR -- KL ERROR OTHER THAN CLOCK ERROR STOP
        KLERR -- KL VMA: 000000 065334    PC: 000000 065334
        KLERR -- PI STATE: OFF , PI ON: 177 , PI HLD: 000 , PI GEN: 000
        KLERR -- EXIT FROM KLERR
|       KLI -- VERSION YB15-12 RUNNING
        KLI -- BOOTSTRAP LOADED AND STARTED


        [PS MOUNTED]

        SYSTEM RESTARTING, WAIT...
        COPYING PREVIOUS SYSTEM DUMP TO:
        <SYSTEM>DUMP.CPY.1
        RUNNING DDMP

   This printout is followed  by  other  messages  as  in  normal  system
   loading.

   When a crash is reported to DIGITAL, the CTY output similar to that in
   the above example should be saved and sent with the report.





                                    1-7
                        ERROR RECOVERY PROCEDURES  


   Whenever the system encounters a BUGCHK beginning with DIR, it  prints
   a  directory  number  after  ADDITIONAL  DATA.  You should then try to
   rebuild that directory's symbol table (Part VI Section 1.5.1).  If the
   rebuild fails to correct the problem, proceed with the instructions at
   the end of Part VI Section 1.5.1.  It is important to take  corrective
   action in this case so that files do not get lost.


                                    NOTE

           When the console front end  crashes,  it  is  reloaded
           automatically and the message [DECSYSTEM-20 CONTINUED]
           is printed.  You do not get a BUGHLT, but you may have
           to retype some of your last input.




   1.4.3  HOME Block or BAT Block Inconsistencies

   When the KL bootstrap is loaded and started,  it  checks  the  primary
   HOME  blocks  on the disk packs for certain information.  It checks if
   the public structure has been mounted  and  if  the  public  structure
   contains all the proper units for the structure.

   If the public structure has not been properly mounted, you may get the
   following error messages from the bootstrap:

   ERROR:      ?DUPL STR UNI

   Reason:     There are two mounted disk packs claiming to have the same
               logical unit number.

   Recovery:   Check to see if you have the proper  disk  packs  mounted.
               If  the  proper disk packs are mounted and the error still
               continues to occur, contact your  software  specialist  or
               DIGITAL Field Service Representative.


   ERROR:      ?HOME BLKS BAD

   Reason:     The logical unit number is out of range.

   Recovery:   Check to see if you have the proper  disk  packs  mounted.
               If  the  proper disk packs are mounted and the error still
               continues to occur, contact your  software  specialist  or
               DIGITAL Field Service Representative.


   ERROR:      ?MISSING UNIT

   Reason:     One or more logical units are missing from the structure.

   Recovery:   Check to see if all the proper disk packs are mounted.  If
               all  the  proper  disk  packs  are  mounted  and the error
               continues to occur, contact your  software  specialist  or
               DIGITAL Field Service Representative.









                                    1-8
                        ERROR RECOVERY PROCEDURES  


   After any of the above errors, BOOT prompts again.  To load a  TOPS-20
   monitor, type the monitor filename or press RETURN to get the default.
   If the proper packs are mounted and an  error  still  occurs,  consult
   your software specialist or Field Service Representative.



   1.4.3.1  HOME  Block  Message - Once  the  bootstrap  is  loaded   and
   started,  TOPS-20  also checks the HOME blocks on the disk packs.  The
   following messages may occur.


                        ----- Warning Messages -----

   % BACKUP HOME BLOCK ON "PS" LOGICAL UNIT n IS INCORRECT

        TOPS-20 continues to run using the other HOME block.

   %COPYING PRIMARY HOME BLOCK TO SECONDARY ON PS UNIT n

        Because the secondary HOME block is incorrect, TOPS-20 copies the
        primary HOME block to the secondary HOME block.

   %COPYING SECONDARY HOME BLOCK TO PRIMARY ON PS UNIT n

        Because the primary HOME block is incorrect, TOPS-20  copies  the
        secondary HOME block to the primary HOME block.

   % PRIMARY HOME BLOCK ON "PS" LOGICAL UNIT n IS INCORRECT

        TOPS-20 continues to run using the other HOME block.


                         ----- Error Messages -----

   ERROR:      ?INCONSISTENT SET OF PACKS COMPOSING STRUCTURE PS.

   Reason:     A logical unit number is out of range.

   Recovery:   Be sure you have the proper disk packs  mounted.   If  the
               proper  disk  packs are mounted and the error continues to
               occur, contact your software specialist or  DIGITAL  Field
               Service Representative.


   ERROR:      ?LOGICAL UNIT n MISSING FROM STRUCTURE PS.

   Reason:     One or more logical units are missing from  the  structure
               PS.

   Recovery:   This error could be caused by a hardware problem.  Be sure
               you  have  the  proper  disk packs mounted.  If the proper
               disk packs are mounted and the error continues  to  occur,
               contact  your software specialist or DIGITAL Field Service
               Representative.


   ERROR:      ?LOGICAL UNIT n OF STRUCTURE PS IS WRITE LOCKED.

   Reason:     The switch on the  disk  drive  is  in  the  WRITE  LOCKED
               position.

   Recovery:   Be sure the proper disk pack is mounted, then position the
               switch to the WRITE ENABLED position.


                                    1-9
                        ERROR RECOVERY PROCEDURES  


   ERROR:      ?MORE THAN 1 LOGICAL UNIT n IN STRUCTURE PS.

   Reason:     There are two disk packs mounted claiming to have the same
               logical unit number.

   Recovery:   This error could be caused by a hardware problem.  Be sure
               you  have  the  proper  disk packs mounted.  If the proper
               disk packs are mounted and the error continues  to  occur,
               contact  your software specialist or DIGITAL Field Service
               Representative.

   After any of the above errors, you get the message HAVE  THE  PROBLEMS
   MENTIONED  ABOVE  BEEN  CORRECTED  YET:.   If  you  believe  you  have
   corrected them, type Y to continue.

   Once the system succeeds in the HOME block check, it prints:

        [PS MOUNTED]



   1.4.3.2  BAT  Block  Messages - Then  TOPS-20  checks  the  BAT   (bad
   allocation  table)  blocks on the disk packs.  The BAT blocks indicate
   what areas of the disk have been  found  to  be  bad.   The  following
   messages may occur.

                        ----- Warning Messages -----

   %BAT BLOCK FULL ON PS UNIT n

        The monitor continues to run with no space in the  BAT  block  to
        mark  bad  areas  of the disk.  Inform your DIGITAL Field Service
        Representative so that he can  correct  the  problem.   You  then
        should reformat the pack and re-create the file system.

   %BAT BLOCKS DO NOT COMPARE ON PS UNIT n

        The BAT blocks on unit n look valid, but they are not  the  same.
        When  BAT  blocks  are  updated,  the  primary one is done first.
        Therefore, if the system crashes  before  the  secondary  one  is
        updated, they are different.  In this case, the primary BAT block
        is copied into the secondary one.

   %COPYING PRIMARY BAT BLOCKS TO SECONDARY ON PS UNIT n

        See explanation above.

   %COPYING SECONDARY BAT BLOCK TO PRIMARY ON PS UNIT n

        If the primary BAT block is  not  valid,  the  secondary  one  is
        copied to it.

   ?PS UNIT n HAS NO CONSISTENT BAT BLOCKS

        The monitor continues and assumes that the  structure  was  built
        not to have BAT blocks.










                                    1-10
                        ERROR RECOVERY PROCEDURES  


   1.4.4  Parity Errors

   When TOPS-20 encounters a  parity  error,  it  prints  out  a  message
   beginning with:

        AR OR ARX PARITY ERROR

   or

        MPE DETECTED BY x, PC=n, y

   where x is a device or APR, n is the PC value, and y is either MONITOR
   or USER.

   Other applicable information for each message is then printed  on  the
   CTY.  The same information is also entered in ERROR.SYS.

   If any of these parity errors occurs, save the  CTY  output  from  the
   errors and notify your DIGITAL Field Service Representative.


                                    NOTE

                  As  memory  parity  errors  occur,   the
                  system   may   decide  not  to  use  the
                  affected memory pages.


                            ----- Examples -----

   The following output shows the information from both types  of  parity
   errors:

        MPE DETECTED BY APR   , PC=000000,,023247, MONITOR
        ERA = 002001,,437564

        SBUS DIAGS

        CNTRLR FNC 0          FNC 1
        000000 006000,,000000 036300,,036012
        000001 006000,,000000 036300,,036005
        000002 006000,,000000 036301,,036012
        000003 006000,,000000 036301,,036005


           LOC    CONTENTS
         01000002 000000,,020120
         01000004 000000,,354140
         01000006 000000,,073302
         01000010 000000,,537122
         01000014 000000,,451660
         01000016 000000,,066330
         01000020 000000,,062313
         01000032 000000,,044730
         01000036 000000,,062500
         01000044 000000,,564734

        122 ERRORS FOUND.








                                    1-11
                        ERROR RECOVERY PROCEDURES  


        LOGAND ADR = 000001,,000000
        LOGOR  ADR = 000001,,777776
        LOGAND DATA = 000000,,000000
        LOGOR  DATA = 777777,,777777


        AR OR ARX PARITY ERROR
        PFW= 773000,,401564 MAP WORD= 503001,,437564
        BAD DATA= 000000,,000000
        CORE PAGE 001437 DISABLED



   1.4.5  DX20 Error Messages

   If there is a problem in loading the DX20 at system start-up time, you
   see a message similar to one of the following on the CTY:

        ?CHN:n DX20:m CRAM VERIFY
        GOOD data BAD data XOR data

        ?CHN:n DX20:m WORK MEM VER
        GOOD data BAD data XOR data

                n = the number of the RH20 to which the DX20 is connected
                m = the number of the DX20
             data = an octal number

   If you see a message similar to one of the above, save the message and
   call  your  DIGITAL  Field Service Representative.  The information in
   the message can help him solve the problem.  You can continue  running
   the system, but do not use the DX20.



   1.4.6  Reaper Error Messages

   The following is a list of the error messages that can occur when  you
   run the REAPER program, along with their recovery procedures:


                         ----- Error Messages -----

   ERROR:     BAD PERIOD

   Reason:    There was an non-numeric character in the PERIOD command.

   Recovery:  Correct the PERIOD command and  continue  with  the  REAPER
              program.


   ERROR:     BAD DIRECTORY NAME IN SKIP LIST

   Reason:    A non-existent or incorrect directory name was specified in
              the SKIP command.

   Recovery:  Remove or correct the directory name and continue with  the
              REAPER program.








                                    1-12
                        ERROR RECOVERY PROCEDURES  


   ERROR:     SKIP SPACE FULL

   Reason:    You have more than 75 directories in the SKIP list.

   Recovery:  Check to see if you can remove any of the directories  that
              are  currently  in  the  SKIP  list.   If  you  cannot, the
              directory you were trying to add cannot be entered into the
              SKIP list.


   ERROR:     BAD FILESPEC IN ORDER LIST

   Reason:    An incorrect file specification or  separator  was  entered
              into the ORDER command.

   Recovery:  Correct the invalid file specification  and  continue  with
              the REAPER program.


   ERROR:     BAD FILESPEC IN LIST COMMAND

   Reason:    An invalid or incorrect file specification was entered into
              the list command.

   Recovery:  Correct the invalid file specification  and  continue  with
              the REAPER program.


   ERROR:     TAKE FILE NOT FOUND

   Reason:    The file you gave in the TAKE command does not exist.

   Recovery:  First, be sure you are connected to the correct  structure.
              Then make sure you gave the correct filename.

              If both of the above are correct, then the file you gave in
              the TAKE command must have been deleted.  Recreate the TAKE
              file and continue with the REAPER program.



   1.4.7  Tape Handling Error Messages

   This section describes the recovery procedures for the  various  error
   messages that can appear when you are using tapes.  The following list
   of the error messages, the  reason  for  the  error  message  and  the
   recovery procedure.

                         ----- Error Messages -----

   ERROR:     --TAPE WRITE PROTECT ERROR--
              MTAn:  VOLUME VOLID
              order WRITE RING AND REMOUNT TAPE
                   where "order" is either INSERT or REMOVE

   Reason:    A user requested a  volume  to  be  write-enabled  and  the
              volume was mounted write-protected, or vice versa.

   Recovery:  If the volume should be write-protected, remove  the  write
              ring and physically remount the tape.  If the volume should
              be write-enabled, insert  the  write  ring  and  physically
              remount the tape.




                                    1-13
                        ERROR RECOVERY PROCEDURES  


   ERROR:     --NO RING IN SCRATCH TAPE--
              UNLOADING DRIVE MTAn:  VOLUME VOLID
              REMOUNT SCRATCH TAPE WITH WRITE RING

   Reason:    A scratch tape was mounted without a write ring.

   Recovery:  Insert a write ring and physically remount the tape.


   ERROR:     --REMOUNT TAPE VOLUME--
              MTAn:  VOLUME VOLID BEING UNLOADED
              REMOUNT VOLUME volid ON density BPI DRIVE

   Reason:    A user requested an unlabeled  tape  to  be  mounted  at  a
              specific  density, and the drive it was mounted on does not
              support that density.

   Recovery:  Remove the tape from the current drive and mount  it  on  a
              drive that supports the specified density.


   ERROR:     --TAPE DRIVE TIMED OUT--
              MTAn:  OPERATION TIMED OUT

   Reason:    A tape input/output request issued by MOUNTR took too  long
              to  execute.   This  is an informational message that could
              indicate a problem with a tape drive or a problem with  the
              software.

   Recovery:  Retry the operation.  If the  error  still  persists,  call
              your DIGITAL Field Service Representative.


   ERROR:     --TAPE POSITIONING ERROR--
              MTAn:  POSITIONING OPERATION FAILED

   Reason:    While trying to position a volume to a specific  file,  the
              monitor  reported  an  error to MOUNTR.  This error message
              could indicate a bad tape or a bad tape drive.

   Recovery:  Retry the operation.  If the  error  still  persists,  call
              your DIGITAL Field Service Representative.


   ERROR:     --TAPE ERROR WRITING LABELS--
              ERROR WRITING LABELS ON MTAn:  VOLUME VOLID

   Reason:    The software encountered an error  while  trying  to  write
              volume  header labels on a tape.  A bad tape drive or a bad
              tape could cause this error.

   Recovery:  There are two recovery procedures for this type  of  error.
              (1)  Mount  the  tape  on another drive and try again.  (2)
              Initialize another volume at the same density,  label-type,
              and VOLID; then use this volume instead of the one that had
              the error.










                                    1-14
                        ERROR RECOVERY PROCEDURES  


   ERROR:     --MOUNTR SYSTEM TASK ERROR--
              BAD IPCF MESSAGE RECEIVED FROM component
                   (component = ORION or QUASAR)

   Reason:    MOUNTR received an unrecognized  or  incorrectly  formatted
              IPCF message from either ORION or QUASAR.

   Recovery:  Call your software specialist.


   ERROR:     ?MOUNTR CRASHING, PC=n
              SAVING MOUNTR CORE IMAGE ON FILE <SPOOL> MOUNTR-CRASH.EXE.n

   Reason:    MOUNTR detected an internal error that it could not handle.
              A  copy  of the MOUNTR program at the time of the error has
              been saved in the directory PS:<SPOOL> for analysis.

   Recovery:  Call your software specialist.



   1.4.8  Bootstrap Error Messages

   This section describes the error recovery procedures for  the  various
   error  messages that can appear when you are trying to boot the system
   from disk or tape.  The following are the error messages,  the  reason
   for  the  error  message,  and  the  recovery  procedure.   All of the
   following error messages are preceded by ?BOOT:.



                         ----- Error Messages -----


   ERROR:     HALT

   Reason:    BOOT or MTBOOT halts only if it is unable to determine  how
              much   physical  KL10  memory  is  present.   This  message
              indicates incorrect memory configuration  or  interleaving,
              or  memory  hardware  problems.   This situation should not
              ordinarily occur.

   Recovery:  Reconfigure memory and check that  memory  interleaving  is
              correct.   If  the  error  recurs,  call your DIGITAL Field
              Service Representative.


   ERROR:     ?NO READY TAPE DRIVE AVAILABLE

   Reason:    MTBOOT was not  able  to  find  any  magnetic  tape  drives
              on-line  and ready.  This commonly occurs when the operator
              forgets to press the on-line  switch  on  the  drive  after
              mounting the tape.

   Recovery:  Check that the magnetic tape  drive  is  on-line.   If  the
              error  recurs  when  the  drive  is on-line, it indicates a
              hardware malfunction.   Call  your  DIGITAL  Field  Service
              Representative if the problem persists.








                                    1-15
                        ERROR RECOVERY PROCEDURES  


   ERROR:     ?HARD DISK ERROR

   Reason:    A disk hardware error occurred during a  disk  input/output
              transfer.

   Recovery:  Call your DIGITAL Field Service Representative.


   ERROR:     ?HARD TAPE ERROR

   Reason:    A hardware error occurred while MTBOOT tried to  read  from
              magnetic  tape.   MTBOOT  attempts  the  read operation 100
              times before reporting the error.   Any  of  the  following
              three reasons can cause this error:

              1.  A dirty read head on the magnetic tape drive

              2.  A corrupted or damaged magnetic tape

              3.  Hardware problems,  probably  with  the  magnetic  tape
                  drive

   Recovery:  Read the magnetic  tape  on  another  tape  drive  to  help
              determine if the tape or the tape drive is the problem.  If
              the magnetic tape drive is causing  the  error,  clean  the
              tape  drive  heads.   Refer to the instructions in the tape
              drive operator's guide.  If the tape drive still causes the
              error,  it probably indicates a hardware malfunction.  Call
              your DIGITAL Field Service Representative.

              If the magnetic tape is causing the error, use another copy
              of the monitor tape to reload the system.


   ERROR:     ?BAD HOME BLOCK

   Reason:    The Home block on the  structure  that  BOOT  is  currently
              using  is damaged.  This usually indicates severe structure
              damage.

   Recovery:  Use another copy of the structure,  if  available,  rebuild
              the structure, or reinstall the system.


   ERROR:     ?MORE THAN 1 BOOTABLE STRUCTURE FOUND

   Reason:    BOOT found duplicate bootable structures online.

   Recovery:  Place drives with  duplicate  bootable  structures  offline
              until after system startup.


   ERROR:     ?STRUCTURE NOT FOUND:STR:

   Reason:    BOOT  failed  to  find  a  structure,  on  line,  with  the
              structure   name   you   specified,  or  hardware  problems
              prevented BOOT from finding the structure you specified.

   Recovery:  Make sure the disk drive the structure  is  mounted  on  is
              on-line.  If it is on-line, use another copy of BOOT or the
              monitor.  If the problem still occurs,  call  your  DIGITAL
              Field Service Representative.




                                    1-16
                        ERROR RECOVERY PROCEDURES  


   ERROR:     ?COMMAND ERROR

   Reason:    BOOT or MTBOOT was not able to decipher the command.   This
              is generally the result of a typing mistake.

   Recovery:  Retype the command.


   ERROR:     ?FILE NOT FOUND:FILESPEC

   Reason:    BOOT failed to find the file you specified.  The file  name
              was  incorrectly  entered,  the  file  does  not  exist, or
              root-directory or the directory you specified to BOOT  does
              not contain the expected format.

   Recovery:  Retype the file name, if that was  incorrectly  typed.   If
              that  is  not  the problem, check to make sure the file has
              not been deleted, or that the directory the file resides in
              is not damaged.


   ERROR:     ?MEMORY REFERENCE FAILED

   Reason:    BOOT  or  MTBOOT  encountered  an  illegal  address.   This
              usually indicates a hardware problem.

   Recovery:  Run the BOOT program again.  If the problem  still  occurs,
              call your DIGITAL Field Service Representative.


   ERROR:     ?FILE NOT IN .EXE FORMAT

   Reason:    BOOT or MTBOOT is currently attempting to load a file  that
              is in an incorrect format.  This message could be caused by
              several reasons.  They are:

               o  the wrong filename was specified

               o  the file could be damaged

               o  the file was generated by CSAVE

               o  the file is not an executable file


   Recovery:  Use another copy of the monitor file.


   ERROR:     ?FILE'S .EXE DIRECTORY IS LONGER THAN 1 PAGE

   Reason:    BOOT found that the .EXE directory was larger than one page
              while dumping.

   Recovery:  Use another copy of the .EXE file.


   ERROR:     IO ERROR - TEXT

   Reason:    A hardware error occurred during an I/O transfer.







                                    1-17
                        ERROR RECOVERY PROCEDURES  


   Recovery:  Run the BOOT program again.  If the error still occurs call
              your DIGITAL Field Service Representative.


   ERROR:     ?UNKNOWN SWITCH

   Reason:    You specified an invalid switch.

   Recovery:  Retype the command with the correct switch.


   ERROR:     ?INVALID NUMERIC VALUE

   Reason:    You specified a non-numeric argument to a switch  expecting
              a numeric argument.

   Recovery:  Retype the command with the correct numeric argument.


   ERROR:     ?CANNOT FIND BOOTABLE STRUCTURE

   Reason:    There is no valid bootable structure  on-line  or  hardware
              problems  have  prevented  BOOT  from  finding  a  bootable
              structure.

   Recovery:  Make sure the door on the disk drive is closed, and correct
              disk pack is mounted and on-line.  Try running BOOT several
              times.  If problem still occurs, call  your  DIGITAL  Field
              Service Representative.


   ERROR:     ?NO STRUCTURE ID

   Reason:    The structure you specified is  missing  its  structure  ID
              from its HOME blocks.

   Recovery:  Notify your system manager.  If no person at your site  has
              the  expertise  to  correct this problem, call your DIGITAL
              Software Specialist.


   ERROR:     ?DUMP  ERROR - DUMP.EXE  IS  TO  SMALL:   RECONFIGURE  WITH
              MAKDMP

   Reason:    The pre-allocated file DUMP.EXE is not large enough to hold
              all of the memory pages that the BOOT program is attempting
              to dump.   Either  someone  has  recently  run  MAKDMP  and
              specified  a file size that is too small, or new memory has
              recently been added to the system and DUMP.EXE has not been
              configured to accomodate the new memory.

              The dump you receive could be missing pages.

   Recovery:  Run the MAKDMP program to reconfigure DUMP.EXE.












                                    1-18
                        ERROR RECOVERY PROCEDURES  


                                    NOTE

           If none of the above error messages appear on the  CTY
           and  there  is  a  problem with the bootstrap program,
           refer to Part VI Section 1.13.




   1.5  RECOVERING THE FILE SYSTEM

   Problems of different degrees  of  severity  can  occur  in  the  file
   system.  The following sections discuss the simple cases of rebuilding
   a directory symbol table (Part VI Section 1.5.1) and reconstructing  a
   directory   (Part  VI  Section  1.5.2),  the  more  complex  cases  of
   reconstructing  the  ROOT-DIRECTORY  (Part  VI  Section   1.5.3)   and
   re-creating  a structure (Part VI Section 1.5.4), and the most complex
   case of re-creating the entire file system (Part VI Section 1.5.4).



   1.5.1  Rebuilding a Directory Symbol Table with EXPUNGE

   When TOPS-20 processes a BUGCHK, BUGINF, or BUGHLT beginning with DIR,
   and  outputs  the  number of the directory and its structure in SIXBIT
   after ADDITIONAL DATA, try to rebuild the directory symbol table.

                                    NOTE

           For rebuilding directory  number  1  (ROOT-DIRECTORY),
           refer to Part VI Section 1.5.3.

   To rebuild a directory symbol table, do the following:

        1.  Look at the two  numbers  after  ADDITIONAL  DATA.   Use  the
            second  number  to  determine the structure for the following
            procedure.  If you are at OPR> command level,  type  PUSH  to
            OPR and type the following commands:

                 @RESET<RET>
                 @DDT<RET>
                 DDT         <ESC>          <CTRL/C>
                               !               !
                 SECOND NUMBER $6T;    PS     ^C

            The $ above means press ESCAPE.  After $6T;, DDT outputs  the
            name of the structure.

        2.  Find  the  directory  name  corresponding  to  the  directory
            number,  that is, the first number after ADDITIONAL DATA.  Do
            this by looking at a numeric ULIST  listing  for  the  proper
            structure.














                                    1-19
                        ERROR RECOVERY PROCEDURES  


        3.  Type PUSH to OPR, then type:

                 ENABLE<RET>
                 EXPUNGE str:<directory>,<RET>
                 REBUILD<RET>
                 <RET>
                 POP<RET>

            where structure and directory are names, not numbers.

   Rebuilding the symbol table should eliminate any further BUGs for that
   directory.  If it does not, reconstruct the directory (Part VI Section
   1.5.2).



   1.5.2  Reconstructing a Directory

   If there was a problem with a directory and the procedures in Part  VI
   Section  1.5.1 did not eliminate the problem, you must reconstruct the
   directory by doing the following:

        1.  Try to save the directory's files with DUMPER.

                                    NOTE

           If the directory is a critical one, for which there is
           no  acceptable  backup,  and you cannot save the files
           with DUMPER, notify a DIGITAL software specialist.  He
           might   be   able  to  recover  most  or  all  of  the
           directory's contents.


        2.  Kill the directory with ^ECREATE and the KILL subcommand.  If
            that  fails,  see  Part  VI  Section  1.5.2.1  to  delete the
            directory with the DELETE command.

        3.  Continue with  Part  VI  Section  1.5.2.2  to  re-create  the
            directory and restore its files.



   1.5.2.1  Deleting a Directory - If  you   must   reconstruct   a   bad
   directory  and  you  cannot  kill it with ^ECREATE, type the following
   commands:

        1.  PUSH to OPR

        2.  ENABLE your capabilities

        3.  DELETE structure:file specification,

                                    NOTE

           Do  not  forget  the  ","  (comma)  after   the   file
           specification if you want to enter subcommand level.










                                    1-20
                        ERROR RECOVERY PROCEDURES  


        4.  DIRECTORY

        5.  <RET>

        6.  POP

   Structure is the name of the structure containing the  bad  directory.
   Determine  the file specification by doing the following on a piece of
   paper.

        1.  Write the name of the bad directory.  Some examples might be:

                 <MUMBLE.FOO>
                 <COT>
                 <A.YOW.1>

        2.  If the name of the bad directory does not contain a ".",  use
            "ROOT-DIRECTORY." as a prefix for the name.  For example:

                 <COT> becomes <ROOT-DIRECTORY.COT>

        3.  The name now contains a "." either because it did  originally
            or  because of Step 2.  Scan the name until you find the last
            ".".  Replace the "." with ">".  For example:

                 <MUMBLE.FOO> becomes <MUMBLE>FOO>
                 <ROOT-DIRECTORY.COT> becomes <ROOT-DIRECTORY>COT>
                 <A.YOW.1> becomes <A.YOW>1>

        4.  Replace the final ">" with ".DIRECTORY".  For example:

                 <MUMBLE>FOO> becomes <MUMBLE>FOO.DIRECTORY
                 <ROOT-DIRECTORY>COT> becomes <ROOT-DIRECTORY>COT.DIRECTORY
                 <A.YOW>1> becomes <A.YOW>1.DIRECTORY

   Then type the file specification you obtained at the end of Step 4  in
   the procedure for deleting a directory.

   If you typed the DELETE command and got the message:

        name.DIRECTORY FILE CANNOT BE EXPUNGED BECAUSE IT IS CURRENTLY OPEN

   plan to stop timesharing by doing a ^ECEASE.  After the  downtime  you
   specified in ^ECEASE occurs, type PUSH to OPR.  Then type:

        1.  DELETE str:file specification,

        2.  DIRECTORY

        3.  <RET>

        4.  ^ESET LOGINS ANY

        5.  ^ESET OPERATOR-IN-ATTENDANCE

        6.  PTYCON

        7.  GET SYSTEM:PTYCON.ATO








                                    1-21
                        ERROR RECOVERY PROCEDURES  


                            ----- Example -----

   To delete the bad directory <MUMBLE.FOO> on structure PS:.

        OPR>PUSH<RET>
         TOPS-20 Command Processor 5(514)
        @ENABLE (CAPABILITIES)<RET>
        $DELETE PS:<MUMBLE>FOO.DIRECTORY,<RET>
        $$DIRECTORY<RET>
        $$<RET>
        @POP<RET>
        OPR>



   1.5.2.2  Re-Creating a Directory and Restoring Its Files -  After  you
   have  killed  or deleted a directory that needs reconstruction, do the
   following:

        1.  To re-create the directory, run DLUSER  to  load  the  latest
            file you dumped with DLUSER for the structure involved.

        2.  To restore the files of the directory you killed or  deleted,
            use  the  DUMPER  save you just did in Part VI Section 1.5.2,
            Step 1, or the most recent DUMPER  magnetic  tape  containing
            those files and run DUMPER to restore them.

        3.  If you deleted the  directory,  run  CHECKD  with  the  CHECK
            BITTABLE command and then with the RELEASE command to release
            lost pages.



                                    NOTE

                  Never  run  CHECKD  with   the   RELEASE
                  command    if    a    directory    needs
                  reconstruction.  First, reconstruct  the
                  directory.



   1.5.3  Reconstructing the ROOT-DIRECTORY

   When you get a BUGCHK or  BUGHLT  beginning  with  DIR  that  involves
   directory  number  1,  or  when  you  get  the BUGHLTS BADROT, BADXT1,
   FILIRD, or FILMAP, try reconstructing <ROOT-DIRECTORY>.   Notify  your
   System Manager and software specialist of this before you do anything.

   To determine the structure involved, see step 1  of  Part  VI  Section
|  1.5.1.   If  the  structure is not PS, run CHECKD with the RECONSTRUCT
   ROOT-DIRECTORY command (Part VI, Section 1.7) and specify  the  proper
   structure.   If  the  structure is PS, you must tell the system to use
   the backup <ROOT-DIRECTORY> and rebuild <ROOT-DIRECTORY> by doing  the
   following:

        1.  Type CTRL/\ to enter the PARSER.

        2.  Type SHUTDOWN to the PARSER.  (If SHUTDOWN does not  succeed,
            type ABORT.)

        3.  Mount system floppy A in drive 0.




                                    1-22
                        ERROR RECOVERY PROCEDURES  


        4.  Mount system floppy B in drive 1.

        5.  Mount your most recent system backup tape on MTA0.  If you do
            not  have  a  system  backup  tape, use your TOPS-20 Software
            Installation Tape.

        6.  Be sure the front-end HALT switch is in the ENABLE position.

        7.  Set switches 0, 1, and 2 in the switch register.

        8.  Press the switches SW REG and ENABLE simultaneously.

        9.  Type YES to ENTER DIALOG.

       10.  Type YES to RELOAD MICROCODE.

       11.  If your system has cache, you  will  see  RECONFIGURE  CACHE;
            type ALL.

       12.  Type ALL to CONFIGURE KL MEMORY.

       13.  Type MTBOOT to LOAD KL BOOTSTRAP.

       14.  Type NO to WRITE CONFIGURATION FILE.

       15.  Type /L after MTBOOT>.

       16.  Type /G143 after MTBOOT>.

       17.  Type N to DO YOU WANT TO  REPLACE  THE  FILE  SYSTEM  ON  THE
            SYSTEM STRUCTURE.

       18.  TYPE Y to RECONSTRUCT ROOT-DIRECTORY.

       19.  Type the current date and time after ENTER CURRENT  DATE  AND
            TIME.

       20.  Type Y to IS THIS CORRECT if you entered the correct date and
            time.  Otherwise, type N and enter the date and time again.

       21.  Type RECONSTRUCT ROOT-DIRECTORY after WHY RELOAD.

   Then CHECKD runs and outputs:

        [REBUILDING BIT TABLE]

        [WORKING ON STRUCTURE - PS:]

   The remaining steps and output are the same as in any system reload.



























                                    1-23
                        ERROR RECOVERY PROCEDURES  


                            ----- Example -----

        PAR>SHUTDOWN
        **HALTED**

        %DECSYSTEM-20 NOT RUNNING

|       RSX-20F YB15-20 8:55 5-MAR-84

        [SY0: REDIRECTED TO DX0:]
        [DX0: MOUNTED]
        [DX1: MOUNTED]
|       KLI -- VERSION YB15-12 RUNNING
        KLI>YES
        KLI -- KL10 S/N: 2123., MODEL B, 60 HERTZ
        KLI -- KL10 HARDWARE ENVIRONMENT:
                MOS MASTER OSCILLATOR
                EXTENDED ADDRESSING
                INTERNAL CHANNELS
                CACHE
        KLI -- ENTER DIALOG [NO,YES,EXIT,BOOT]?
        KLI>YES<RET>
        KLI -- RELOAD MICROCODE [YES,VERIFY,NO]?
        KLI>YES<RET>
|       KLI -- MICROCODE VERSION 352 LOADED
        KLI -- RECONFIGURE CACHE [FILE,ALL,YES,NO]?
        KLI>ALL<RET>
        KLI -- CONFIGURE KL MEMORY [FILE,ALL,YES,NO]?
        KLI>ALL<RET>
        LOGICAL MEMORY CONFIGURATION
         ADDRESS         SIZE   INT   TYPE   CONTROLLER
        00000000         768K    4    MF20       11
        KLI -- LOAD KL BOOTSTRAP [YES,NO,FILENAME]>?
        KLI>MTBOOT<RET>
        KLI--WRITE CONFIGURATION FILE [YES,NO]
        KLI>NO<RET>
        KLI -- BOOTSTRAP LOADED AND STARTED

        MTBOOT>/L<RET>

        MTBOOT/G143<RET>

        [FOR ADDITIONAL INFORMATION TYPE "?" TO ANY OF THE FOLLOWING
        QUESTIONS.]

        DO YOU WANT TO REPLACE THE FILE SYSTEM ON THE SYSTEM STRUCTURE?N<RET>

|       [BOOT:LOADING] [OK]

        [PS MOUNTED]
        RECONSTRUCT ROOT-DIRECTORY?Y

        [RECONSTRUCTION PHASE 1 COMPLETED]

        SYSTEM RESTARTING, WAIT...
|       ENTER CURRENT DATE AND TIME: 5-MAR-84 10:25<RET>

|       YOU HAVE ENTERED MONDAY, 5-MAR-84 10:25AM,
         IS THIS CORRECT (Y,N) Y<RET>
        WHY RELOAD? MA<RET>
        [REBUILDING BIT TABLE]

        [WORKING ON STRUCTURE - PS:]
             .
             .
             .










                                    1-24
                        ERROR RECOVERY PROCEDURES  


   1.5.4  Re-Creating the File System or a Structure

   You should re-create the file system or a structure only when:

        1.  You have tried reconstructing  PS:<ROOT-DIRECTORY>,  but  the
            file  system or structure is still in such bad shape that the
            system or structure cannot be used, and

        2.  Your System Manager has agreed that you should re-create  the
            file system or structure.

   If reconstructing PS:<ROOT-DIRECTORY> did not solve the  problem,  you
   must re-create the file system, that is, both the public structure and
   front-end file  system.   (Refer  to  Part  VI  Section  1.5.4.1.)  If
   reconstruction  of  a  ROOT-DIRECTORY  on  any other structure did not
   succeed in solving the problem, just re-create that structure.  (Refer
   to Part VI Section 1.5.4.2.)



   1.5.4.1  Re-Creating the Public Structure and Front-End File System - 
   You  should  re-create the file system on the public structure only at
   your System Manager's request or approval.  This request usually comes
   if the file system is in such bad shape that the system cannot be used
   and reconstruction of  the  <ROOT-DIRECTORY>  failed  to  correct  the
   problem.

   To re-create the file system on the public structure, you need:

        1.  The disk packs your System Manager chooses for the  new  file
            system

        2.  The latest system backup tape

        3.  The latest DUMPER magnetic tapes (full and  incremental  save
            sets) of the public structure
|  
|       4.  The TOPS-20 Installation Guide

        5.  System floppies A, B, and C

   Then do the following:

        1.  Type CTRL/\.

        2.  Type SHUTDOWN.  (If SHUTDOWN doesn't succeed, type ABORT.)

        3.  Mount system floppy A in drive 0.

        4.  Mount system floppy B in drive 1.

        5.  Mount your latest system backup tape on MTA0.  If you do  not
            have  a  backup  tape, use your TOPS-20 Software Installation
            Tape.












                                    1-25
                        ERROR RECOVERY PROCEDURES  


        6.  Follow Steps 11 (Set the Switch Register  to  7)  through  18
            (Type  MTBOOT) in the TOPS-20 Software Installation Guide and
            Step 36 (Type /L) through 63 (Give the DUMPER Command:   TAPE
|           MTA0:)  of  Chapter  2 in the TOPS-20 KL10 Model Installation
            Guide.

        7.  After  the  DUMPER>  prompt,  type   RESTORE   (TAPE   FILES)
            PS:<*>*.*.* (TO) <RET>.

        8.  Again, after the DUMPER> prompt, type  RESTORE  (TAPE  FILES)
            PS:<*>*.*.* (TO) <RET>.

        9.  After the DUMPER> prompt, type REWIND <RET>.

       10.  Remove the tape on MTA0, and mount the  first  tape  of  your
            latest full DUMPER save set.

       11.  After the DUMPER> prompt, type CREATE <RET>.

                                    NOTE

           The DUMPER CREATE command obtains its attributes  from
           tape information stored on the backup tape.


       12.  After  the  DUMPER>  prompt,  type   RESTORE   (TAPE   FILES)
            PS:<*>*.*.* (TO) <RET>.

       13.  If there are additional tapes, mount the  next  tape  of  the
            save set.  Then type TAPE MTAn:, where n is the number of the
            drive on which you mounted the next tape to be read.   Repeat
            this step until all tapes of the save set have been read.

       14.  If there are incremental save sets,  you  must  restore  them
            too.  For each save set, repeat Steps 11, 12, and 13.

       15.  Re-create  the  front-end  file  system  by   following   the
|           directions   in  Chapter  4  of  the  TOPS-20  KL10  Model  B
|           Installation Guide.

       16.  Reload the system using the DISK  and  ENABLE  load  switches
            (Part IV Section 1.2.1).



   1.5.4.2  Re-Creating Other Structures - If a structure other than  PS:
   had  problems and <ROOT-DIRECTORY> reconstruction did not fix them, at
   your System Manager's request or approval,  you  must  re-create  that
   structure.   Then  restore  its  directories  and  files.  This entire
   procedure can be done during timesharing.  First, be sure you have:

        1.  The disk packs  your  System  Manager  chooses  for  the  new
            structure

        2.  The latest DUMPER magnetic tapes (full and  incremental  save
            sets) for that structure










                                    1-26
                        ERROR RECOVERY PROCEDURES  


   Then, do the following:

        1.  Type SET STRUCTURE str:  UNAVAILABLE to OPR to prevent  other
            users from MOUNTing the structure.

        2.  Type PUSH to OPR.

        3.  ENABLE your capabilities.

        4.  Follow the procedures in Part V Section 3.13  to  create  the
            structure.

        5.  Type MOUNT STRUCTURE str: to mount the structure.

        6.  Type DLUSER<RET>.

        7.  Type LOAD SYSTEM:str.TXT  to  restore  directory  parameters.
            You  should  have  previously  saved these parameters (Part V
            Section 4.6).

        8.  If tape drive allocation is enabled, you must use  the  MOUNT
            command  to have the system assign you a tape drive.  If tape
            drive allocation is disabled, or if the SET TAPE DRIVE  MTAn:
            UNAVAILABLE command is used, you can assign a tape drive with
            the ASSIGN command.

        9.  Mount the first tape of your latest full DUMPER save set  for
            this structure on MTAn.

       10.  Type DUMPER<RET>.

                                    NOTE

                        See Hint below.


       11.  After the DUMPER> prompt, type TAPE MTAn:  (or MTn:,  if  the
            tape  drive is under MOUNTR control) where n is the number of
            the drive you assigned.

       12.  After the DUMPER> prompt, type CREATE<RET>.

                                    NOTE

           The DUMPER CREATE command obtains its attributes  from
           tape information stored on the backup tape.


       13.  After  the  DUMPER>  prompt,  type   RESTORE   (TAPE   FILES)
            str:<*>*.*.* (TO)<RET>.

       14.  If there are additional tapes, mount the  next  tape  of  the
            save  set.   Then,  type TAPE MTAn:, where n is the number of
            the drive on which you mounted the  next  tape  to  be  read.
            Repeat  this  step  until all tapes of the save set have been
            read.










                                    1-27
                        ERROR RECOVERY PROCEDURES  


       15.  If there are incremental save sets,  you  must  restore  them
            too.  For each save set, repeat Steps 12, 13, and 14.

       16.  Type POP<RET>.

       17.  Type SET STRUCTURE str:  AVAILABLE  to  OPR  to  allow  other
            users to MOUNT the structure.

                              ----- Hint -----

   If the DUMPER tapes have files with  accounts  not  in  the  installed
   ACCOUNTS-TABLE.BIN  file,  you  must  restore  the tapes while account
   validation is disabled.  To do this:

        1.  Type PUSH to OPR.

        2.  ENABLE your capabilities.

        3.  Stop timesharing with ^ECEASE.

        4.  Edit   n-CONFIG.CMD   to    have    the    command    DISABLE
            ACCOUNT-VALIDATION.    (See   the   TOPS-20   KL10   Model  B
|           Installation Guide, Chapter 3, to edit n-CONFIG.CMD.)

        5.  Type CTRL/\ and SHUTDOWN.

        6.  Reload the system.

        7.  ATTACH to the operator job 1.

        8.  Type PUSH to OPR.

        9.  Type ENABLE and ^ESET NO LOGINS-ALLOWED ANY.

       10.  Follow Steps 10 through 15 above.

       11.  Edit   n-CONFIG.CMD    to    have    the    command    ENABLE
            ACCOUNT-VALIDATION.

       12.  Type CTRL/\ and SHUTDOWN.

       13.  Reload the system.

   Alternatively, you  may  restore  the  files  by  using  your  current
   account,  that  is,  the account set in your last LOGIN or SET ACCOUNT
   command.  However, all files on the structure have that  account.   To
   restore  the  files,  continue  with  Step 11 at the beginning of this
   section (... type TAPE  MTAn: ...),  but  type  ACCOUNT SYSTEM-DEFAULT
   before the RESTORE command in Step 13.



   1.6  DIAGNOSING YOUR SYSTEM FROM A REMOTE LOCATION VIA KLINIK

   To  allow  a  DIGITAL  Field  Service  Representative  or  a  software
   specialist  to  diagnose  a  problem  in  your  system  from  a remote
   location, you must allow access via the KLINIK link.  First, determine
   with the person doing the diagnosis, the following conditions:

        1.  Usage of the link -- a timesharing terminal or remote CTY

        2.  Password, if use is a remote CTY




                                    1-28
                        ERROR RECOVERY PROCEDURES  


        3.  Time period to access the KLINIK link

        4.  Highest console mode, if usage is a remote CTY.

   Then type:

        1.  <CTRL/\>

        2.  SET KLINIK

        3.  USER or REMOTE

        4.  Password, if you typed REMOTE above

        5.  Access window open date

        6.  Access window open time

        7.  Access window close date

        8.  Access window close time

        9.  Highest console mode, if you typed REMOTE above

       10.  QUIT

                            ----- Example -----

   This example shows the SET KLINIK command used  to  allow  the  KLINIK
   link  to  be  used  as a remote CTY, to establish the password FGH for
   gaining access, to allow access between the current time and 24  hours
   later, and to allow MAINTENANCE as the highest console mode.


        PAR>SET KLINIK<RET>
        KLINIK MODE: REMOTE<RET>
        PASSWORD: FGH<RET>
        ACCESS WINDOW OPEN DATE: 
        ACCESS WINDOW OPEN TIME: 
        ACCESS WINDOW CLOSE DATE: 
        ACCESS WINDOW CLOSE TIME: 
        HIGHEST CONSOLE MODE: MAINTENANCE
         KLINIK INACTIVE
|        ACCESS WINDOW OPEN: 5-MAR-84 12:47
|        ACCESS WINDOW CLOSED: 5-MAR-84 12:47
         KLINIK MODE: REMOTE
         HIGHEST CONSOLE MODE: MAINTENANCE
        PAR>QUIT<RET>

   To terminate an active KLINIK link, type:

        1.  <CTRL/\>

        2.  CLEAR KLINIK

        3.  DISCONNECT

        4.  QUIT








                                    1-29
                        ERROR RECOVERY PROCEDURES  


                            ----- Example -----


        <CTRL/\>
        PAR>CLEAR KLINIK<RET>
         KLINIK DISABLED

        KLD -- KLINIK ACCESS TERMINATED BY OPERATOR

        PAR>DISCONNECT<RET>

        KLD -- KLINIK LINE DISCONNECTED

        PAR>QUIT<RET>

                             ----- Hints -----

   To find out what KLINIK parameters have been set, type WHAT KLINIK  to
   the PARSER.

|  See PARSER COMMANDS in Section 4.4 of  the  RSX-20F  System  Reference
|  Manual  for  more information on CLEAR KLINIK, DISCONNECT, SET KLINIK,
|  and WHAT KLINIK.

                         ----- Error Messages -----

|  See PARSER ERROR  MESSAGES  in  Section  4.5  of  the  RSX-20F  System
|  Reference Manual.

                        ----- KLINIK Messages -----

   KLD -- KLINIK ACCESS TERMINATED BY OPERATOR

          If the KLINIK link is active and the CLEAR  KLINIK  command  is
          given,  this message is output on the CTY and the remote KLINIK
          terminal.  This indicates that the  KLINIK  access  window  has
          been  closed,  the  KLINIK  link  has  been terminated, and the
          KLINIK parameters have been cleared.

   KLD -- KLINIK DISCONNECT

          This message is  output  on  the  CTY  and  the  remote  KLINIK
          terminal after you give the DISCONNECT command to the PARSER to
          terminate KLINIK access and hang up the modem.

   KLR -- KLINIK LINE CONNECTED TO RSX-20F MODE LIMIT c

          This message is output on the CTY  and  on  the  remote  KLINIK
          terminal  when  the  remote KLINIK user specifies REMOTE KLINIK
          MODE during the KLINIK link access procedure.  The MODE LIMIT c
          is  MAINTENANCE,  PROGRAMMER,  or OPERATOR as you specified for
          HIGHEST CONSOLE MODE in the SET KLINIK command.

   KLR -- KLINIK LINE CONNECTED TO TOPS-20

          This message is output on the CTY  and  on  the  remote  KLINIK
          terminal  when a remote KLINIK user is trying to gain access to
          the KLINIK link in USER KLINIK MODE.   You  can  then  use  the
          remote KLINIK terminal for timesharing on TOPS-20.







                                    1-30
                        ERROR RECOVERY PROCEDURES  


   KLR -- KLINIK LOGON TIMEOUT -- LOGON ABORTED
   KLD -- KLINIK LINE DISCONNECTED

          If you specified REMOTE KLINIK MODE  in  the  last  SET  KLINIK
          command  and  the remote KLINIK user can not supply the correct
          password in five attempts within two minutes, this  message  is
          output  on  the CTY and the remote KLINIK terminal.  The remote
          KLINIK user must dial  again  and  go  through  the  validation
          sequence again to try to gain KLINIK access.

   KLR -- KLINIK RING - KLINIK WINDOW CLOSED

          This message is printed  on  the  CTY  and  the  remote  KLINIK
          terminal  when a remote user tries to gain access to the KLINIK
          link but the access window is closed or not defined.

   KLR -- KLINIK RING -- VALIDATING ACCESS

          If you specified REMOTE KLINIK MODE  in  the  last  SET  KLINIK
          command and a remote user has just dialed to try to gain access
          to the KLINIK link, this message is printed on the CTY.

   SAV -- *DIAG* -- KLINIK LINE ACTIVE IN USER MODE

          This message is printed on the CTY and  on  the  remote  KLINIK
          terminal  if  RSX-20F is reloaded and the KLINIK link is active
          in user mode.

   SAV -- *DIAG* -- KLINIK LINE ACTIVE IN REMOTE MODE
   SAV -- *DIAG* -- KLINIK LINE CONNECTED TO SYSTEM CONSOLE

          This message is printed  on  the  CTY  and  the  remote  KLINIK
          terminal  if  RSX-20F is reloaded and the KLINIK link is active
          in remote mode.

   SAV -- *FATAL* -- PROTOCOLS NOT RUNNING

          There may be a serious software or hardware problem.   However,
          first try to reload the system.



   1.7  CORRECTING DISK SPACE WITH CHECKD

   CHECKD is run automatically at system load time when certain  problems
   are found on the public structure.  CHECKD is also run when you answer
   YES to the RUN CHECKD question at system STARTUP time.

|  Type the following commands to run the CHECKD program  during  regular
|  timesharing.

        1.  PUSH to OPR

        2.  ENABLE your capabilities












                                    1-31
                        ERROR RECOVERY PROCEDURES  


        3.  CHECKD

        4.  Commands to CHECKD terminated by a <RET>

        5.  EXIT command to CHECKD

        6.  POP


                                  CAUTION

           Before you run CHECKD on PS:, be sure  that  you  have
           only  one  structure  named  PS:   on the disk drives.
           Otherwise, there can be confusion over which structure
           is used.

           If your system has two structures named PS:   on-line,
           where  one  is  just spinning and the other is already
           recognized by the system,  (that  is  mounted  as  the
           public  structure)  and you want to run CHECKD on PS:,
           CHECKD chooses the structure that  is  just  spinning.
           If  CHECKD does not find a PS:  that is just spinning,
           it uses the already recognized public structure.

   Some CHECKD commands should not be used if there are other users using
   the structure.  These commands are:

        1.  CHECK BITTABLE

        2.  REBUILD

        3.  RECONSTRUCT INDEX-TABLE

        4.  RECONSTRUCT ROOT-DIRECTORY

        5.  SCAN

   If there are other users on the structure and the structure is PS:, do
   a  ^ECEASE  and  wait for the message SHUTDOWN COMPLETE before running
   CHECKD.  If the structure is other than PS:, turn to  Part  V  Section
   3.11.3 before running CHECKD.

   If you do not specify a structure in a  CHECKD  command,  CHECKD  uses
   your  connected  structure.   Note  that  at  any time while CHECKD is
   processing directories, you can type CTRL/A to find out  the  name  of
   the directory currently being checked.

   The following commands can be given to CHECKD.


















                                    1-32
                        ERROR RECOVERY PROCEDURES  


   CHECK BITTABLE (CONSISTENCY OF) str:

                                    NOTE

|          Perform CHECK BITTABLE on PS:  at system startup  time
|          by  answering  YES  to  CHECKD.  Never issue the CHECK
|          BITTABLE command during regular timesharing.

        This command causes the structure's bit  table,  which  indicates
        what  disk  space  is  used, to be checked against the disk space
        that each file  on  the  structure  claims  to  have  used.   Any
        discrepancies  are  listed on your terminal, and the addresses of
        lost pages are written into the file str:<dir>str-LOST-PAGES.BIN,
        where  str  and  dir  are your connected structure and directory.
        This command also executes the CHECK DIRECTORY command to CHECKD.
        (See Part VI Section 1.7.1 for more detail on CHECK BITTABLE.)


                                    NOTE

             If you see in the error report any  messages  with
             MULTIPLY   ASSIGNED   DISK  ADDRESS  (meaning  the
             address is used  by  more  than  one  file),  take
             immediate  action.   Refer  to the SCAN command in
             CHECKD (later in this section),  and  perform  the
             steps discussed there.


   CHECK DIRECTORY (CONSISTENCY OF) str:

        This command checks the validity of certain information  in  each
        directory  on  the  structure.   If  an error occurs, the monitor
        rebuilds  the  symbol  table  on  the  specified  structure   and
        recomputes  the amount of disk space used for directories needing
        such action.  If a symbol table is being rebuilt, CHECKD outputs:

             % REBUILDING SYMBOL TABLE FOR structure:<directory>

        If the rebuild is successful, CHECKD then outputs [OK] at the end
        of the message.  Otherwise, it outputs [FAILED].


   CREATE (NEW FILE SYSTEM FOR) str:

        This command creates the file structure according  to  parameters
        that you specify to the questions asked by CHECKD.


   DISABLE
   ENABLE Enables or disables one of the following features.
















                                    1-33
                        ERROR RECOVERY PROCEDURES  


        AUTOMATIC STARTUP
             Marks the structure  as  the  primary  public  structure  at
             system startup time.  The serial number of the CPU for which
             this is the primary public structure is requested.

        BAT-BLOCK-DELETE
             Allows a verification pass of the  disk  to  delete  entries
             from  the  BAT BLOCKs.  If this feature is disabled, entries
             will only be added.

        ECC-ERROR-MAPPING
             Controls whether ECC errors will be added to the BAT  blocks
             during a verification pass on the disk.  This includes pages
             for which the first attempt to  read  the  page  with  error
             correction  enabled  failed,  but  one  of  the  following 7
             retries was successful.  It is strongly suggested that  this
             switch be ENABLED.

        LARGE DIRECTORIES
             Controls whether directories may  contain  huge  amounts  of
             files  or  not.   Use DISABLE to guarantee that a particular
             structure can be used  on  small  and  large  systems.   Use
             ENABLE  to  allow  directories to grow large on a structure.
             Note that if a directory grows large, the structure will  no
             longer be usable on a small system.

        SOFT-ERROR-MAPPING
             Controls whether soft errors will be added to the BAT blocks
             during  a  verification  pass  on the disk.  Soft errors are
             defined as failure to read the disk without  ECC  correction
             or system error recovery (reading with offset).

        WRITE-VERIFICATION (OF) DATA
             Controls read after write verification of pages  written  to
             the  data space on a disk.  Note that using this feature may
             cause serious performance problems.

        WRITE-VERIFICATION (OF) SWAPPING
             Controls read after write verification of pages  written  to
             the  swapping space on a disk.  Note that using this feature
             may cause serious performance problems.

|       PASSWORD-ENCRYPTION
|            Controls whether passwords are encrypted or not.


   EXIT (TO MONITOR)

        This command returns you to system command level.


   HELP

        This command prints out a help text.












                                    1-34
                        ERROR RECOVERY PROCEDURES  


   LIMIT (NUMBER OF FILES PER DIRECTORY ON) str:

        This command limits the number of  directories  and  files  on  a
        structure.  It also guarantees that if the structure is used on a
        2040S or 2060, it can later be used on a 2040 or 2050.   However,
        the  command  disallows  the 2040S or 2060 feature of adding more
        directories and files than a 2040 or 2050 can support.


   REBUILD (BIT TABLE OF) str:

        This command is for use by your software specialist.  It  is  not
        recommended  for  operator  use.   It causes the bit table on the
        specified structure to be completely rebuilt.


                                    NOTE

                  No one should  be  using  the  structure
                  when   REBUILD  is  used.   Also,  if  a
                  directory   needs   reconstruction,   it
                  should  be  reconstructed before REBUILD
                  is used.


   RECONSTRUCT INDEX-TABLE (OF) str:

        This command is for use by your software specialist.  It  is  not
        recommended  for  operator  use.   This command repairs a damaged
        index  table  file  (str:<ROOT-DIRECTORY>INDEX-TABLE.BIN).   This
        command  cannot  be  used  during timesharing and should never be
        used on your public structure.


   RECONSTRUCT ROOT-DIRECTORY (OF) str:

        This  command  reconstructs  <ROOT-DIRECTORY>  on  the  specified
        structure.

                                      NOTE

                Do  not   use   this   command   to   reconstruct
                <ROOT-DIRECTORY>  on  the public structure.  (See
                Part VI, Section 1.5.3.)

   RELEASE (LOST PAGES FROM) file specification (FOR) str:

        This command allows you to free lost pages while other users  are
        on  the system.  When CHECKD reports lost pages, you should first
        resolve any errors indicated by CHECKD (Part  VI  Section  1.7.1)
        and  run  CHECKD  again  with CHECK BITTABLE to see if errors are
        gone.  Then, run CHECKD under <OPERATOR> and  use  this  command.
        Press  RETURN  for  the  file  specification to indicate the file
        str:<dir>str-LOST-PAGES.BIN.n,  where  str  and  dir   are   your
        connected structure and directory, and n is the latest generation
        of the file.  You may also type the name of the file.

        Then, after you EXIT from CHECKD, type:

   EXPUNGE

        to expunge all generations of the file.




                                    1-35
                        ERROR RECOVERY PROCEDURES  


                                    NOTE

                  If  a  directory  needs  reconstruction,
                  reconstruct   it  and  issue  the  CHECK
                  BITTABLE command  before  you  ever  use
                  RELEASE.

                  Use the RELEASE command  with  only  the
                  most  current  generation  of  the  lost
                  pages file.


   SCAN (FOR DISK ADDRESSES IN) file specification (FOR) str:

        This command scans the structure  for  addresses  listed  in  the
        specified  file.   Instead  of  specifying  a file containing the
        addresses, you can type TTY:<RET>, type  addresses  separated  by
        <RET>,  and  end  with  CTRL/Z.   The  output  from  the  command
        indicates which files contain the disk addresses specified.  This
        command  is  especially  important  if the CHECK BITTABLE command
        outputs  a  message  indicating  that  an  address  is   multiply
        assigned.

        Use the SCAN command  when  there  are  no  other  users  on  the
        structure  involved.  Therefore, whenever CHECKD finds a multiply
        assigned address on PS:, you should do the following as  soon  as
        possible.  (If the structure is not PS:, remove the structure and
        then follow Steps 4 through 6 below.)

        1.  Type PUSH to OPR.

        2.  ENABLE your capabilities.

        3.  Give the ^ECEASE command  to  stop  timesharing  as  soon  as
            possible.

        4.  Run CHECKD.

        5.  Give the SCAN command to  CHECKD  and  specify  the  multiply
            assigned  address/addresses  as indicated above.  When CHECKD
            finds an address for which it  is  searching,  it  outputs  a
            message  like  the  error  report at the beginning of Part VI
            Section 1.7.1.  The error field contains FOUND DISK  ADDRESS.
            For  each file in which CHECKD found an address, it outputs a
            summary line of the form:

                 n SEARCH ADDRESSES FOUND.

        6.  After CHECKD outputs the names of the  files  containing  the
            multiply  assigned address/addresses, try to copy each of the
            files involved to another directory (perhaps  PS:<OPERATOR>).
            (Do  not use RENAME on the original files.)  Then, delete the
            original files, using the FORGET subcommand to  DELETE.   For
            example:

                 $DELETE filespec1,filespec2,<RET>
                 $$FORGET<RET>
                 $$<RET>
                 $







                                    1-36
                        ERROR RECOVERY PROCEDURES  


        7.  Type ^ESET LOGINS ANY.

        8.  Run PTYCON.

        9.  Type GET SYSTEM:PTYCON.ATO.

       10.  Using MAIL or SEND, notify the owners of  the  deleted  files
            and discuss salvaging their files either from the copy, if it
            was successful, or from a DUMPER tape.

   UNLIMIT (NUMBER OF FILES PER DIRECTORY ON) str:

        This command allows a 2040S or 2060 to create on a structure more
        directories  and  files than a non-2060 can support.  The command
        is used to allow this feature on a structure that was  previously
        limited (the LIMIT command was given for the structure).

                             ----- Hints -----

   When CHECKD is run automatically at system load time because  of  disk
   problems  or  when  you  answer YES to the RUN CHECKD question, CHECKD
   performs the CHECK BITTABLE and CHECK DIRECTORY functions.  You should
   answer  YES  to  the  RUN CHECKD question periodically, perhaps once a
   day, and  always  after  a  disastrous  hardware  failure.   When  the
   standard  PTYCON.ATO  file  is used, one of the operator jobs runs the
   CHECK DIRECTORY function of CHECKD immediately  after  the  system  is
   reloaded.

                          ----- Requirement -----

   OPERATOR or WHEEL capability must be enabled and the CTRL/C capability
   set.

                         ----- Error Messages -----

   ERROR:     ?CHECKD:  STRUCTURE NOT FOUND

   Reason:    CHECKD could not find the structure you specified.

   Recovery:  Be sure you have the proper disk packs mounted and  reissue
              the command.


   ERROR:     ?INVALID COMMAND CONFIRMATION

   Reason:    You pressed a character other than the RETURN  key  at  the
              end of the command.

   Recovery:  Reissue the command and execute the command by pressing the
              RETURN key.


   ERROR:     ?JSYS ERROR:  message

   Reason:    A JSYS that CHECKD was executing failed.

   Recovery:  Refer to Appendix A of the TOPS-20 Monitor Calls  Reference
              Manual for the message.


   ERROR:     ?NOT A CHECKD COMMAND

   Reason:    The command that you typed to CHECKD is not a valid  CHECKD
              command.


                                    1-37
                        ERROR RECOVERY PROCEDURES  


   Recovery:  Reissue the correct command.


   ERROR:     WHEEL OR OPERATOR CAPABILITY REQUIRED

   Reason:    You tried to run the CHECKD  program  without  OPERATOR  or
              WHEEL capability.

   Recovery:  If you are a privileged  user,  enable  your  capabilities;
              otherwise,  use  a  job  logged  in  under OPERATOR, (which
              should have operator capability) type ENABLE, and rerun the
              CHECKD program.



   1.7.1  Reports from CHECK BITTABLE

   When CHECKD finds  errors  during  the  CHECK  BITTABLE  function,  it
   outputs error reports in the format:

        error(including address n): page type
        SUMMARY FOR FILE file
        m    error type
        - - - - - - -

   Pay close attention to the error portion of the report, and  take  any
   action indicated in the explanation for that error.  The page-type and
   error-type  information  is  for  your  software  specialist,   System
   Manager, or owner of the file.

   CHECKD first checks special system blocks, then  swapping  space,  and
   finally  file  pages.   If  an  error occurs in checking the first two
   types of disk usage, the error report includes for each  disk  address
   in error only the first line of the error report format.

   The possible errors output in  a  report  are  discussed  first.   The
   following  conventions  are used in the list of those errors and their
   explanations below:

           n = the number of a sector; the sector is a location on a disk
               pack  relative  to  the beginning of a structure (also the
               number to use in the SCAN command to CHECKD)

        page = four consecutive sectors or the  minimum  allocation  unit
               for disk space

                               ----- Error Messages -----

   ERROR:     DISK ADDRESS n MARKED IN BAT BLOCKS

   Reason:    A page used by the TOPS-20 file system is marked in the BAT
              (bad  allocation  table)  blocks.   This means a hard error
              occurred on this page.

   Recovery:  Try to copy the file.   Then  delete  the  file  using  the
              DELETE  command  with  the  FORGET subcommand.  Notify your
              System Manager or the owner of the file that the data in  a
              page  may  have been in error.  If the copy was successful,
              try recovering the file.  Otherwise, recover the file  from
              the most recent backup tape.






                                    1-38
                        ERROR RECOVERY PROCEDURES  


   ERROR:     DISK ADDRESS n NOT IN BIT TABLE

   Reason:    A page used by the file system was not assigned in the  bit
              table.

   Recovery:  CHECKD corrects this error automatically.


   ERROR:     ILLEGAL DISK ADDRESS n

   Reason:    CHECKD found a disk address too large for the size  of  the
              structure.

   Recovery:  Try to copy the file.   Then  type  ENABLE  and  press  the
              RETURN  key.  Delete the file using the DELETE command with
              the FORGET subcommand.  Notify your System Manager  or  the
              owner  of the file that data in the file may have contained
              errors.  If the copy was  successful,  try  recovering  the
              file.   Otherwise,  recover  the  file from the most recent
              backup tape.


   ERROR:     MULTIPLY ASSIGNED DISK ADDRESS n

   Reason:    CHECKD found a page that was already assigned.  This  means
              two or more files are using the same disk address or a file
              is uing a disk address previously  assigned  to  a  special
              file system block or to the swapping space.

   Recovery:  Use the CHECKD command SCAN to indicate which files contain
              the  disk  address  specified.   (Refer to the SCAN command
              Part VI Section 1.7 to resolve this problem.)

   If any of the preceding errors occur, CHECKD also outputs a page type.
   This  indicates  the  usage of the page containing the disk address in
   error.  The page types are:

        FILE PAGE n
        LONG FILE PAGE TABLE
        PAGE TABLE
        SPECIAL SYSTEM BLOCKS
        SWAPPING SPACE

   If CHECKD has reported errors for a file, it then outputs:

        SUMMARY FOR FILE file

   where file is a complete file specification.  CHECKD follows this with
   summary  lines containing each type of error that has occurred for the
   file, and how many times the error occurred.  Note that one error  can
   sometimes  cause  two  summary  lines.  The error types in the summary
   are:

        ASSIGNED PAGES MARKED IN BAT BLOCKS
        DISK READ ERRORS
        FAULTY ADDRESSES IN LONG FILE PAGE TABLE
        FAULTY ADDRESSES IN PAGE TABLE
        FAULTY LONG FILE PAGE TABLE ADDRESSES IN FDB
        FAULTY PAGE TABLE ADDRESSES IN FDB
        FILE ADDRESSES NOT IN BIT TABLE
        ILLEGAL ADDRESSES
        LONG FILE PAGE TABLES UNREADABLE
        MULTIPLY ASSIGNED ADDRESSES
        PAGE TABLES UNREADABLE


                                    1-39
                        ERROR RECOVERY PROCEDURES  


   The last summary line for a file is followed by line of dashes.   Then
   other error reports may follow.

   Once CHECKD has finished checking all the files, it  outputs  a  final
   summary of page counts as follows:

        LOCAL COUNT OF FILE PAGES: i
        LOCAL COUNT OF OVERHEAD PAGES: j
        LOCAL COUNT OF USED PAGES: k

        SYSTEM COUNT BEFORE CHECKD: l
        SYSTEM COUNT AFTER CHECKD: m

   In the above final summary:

        i = number of pages used for data
        j = number of pages used for overhead for the structure; includes
            special system blocks, swapping pages, and overhead pages for
            files
        k = number of pages that CHECKD found to be used
        l = number of pages that the  system  indicated  as  used  before
            CHECKD was run
        m = number of pages that  the  system  indicated  as  used  after
            CHECKD was run

   If there are no errors, i plus j should equal k, and m minus k  should
   equal  lost  pages (discussed later in this section).  If m is greater
   than l, CHECKD found one or more pages that were used but not assigned
   in  the  system  bit  table.   CHECKD assigns them, and m reflects the
   count.

   During the last part of the CHECK BITTABLE function, CHECKD compares a
   bit  table  it  created  with the system bit table for the appropriate
   structure.  CHECKD then compares information in the  two  tables.   If
   page  counts  disagree,  or if the system bit table says a page is not
   used but CHECKD says it is used, CHECKD outputs:

        ?BIT TABLES INCONSISTENT AT CYLINDER n

   Cylinder n is an area on a disk pack.  This message  indicates  either
   an  error  in  CHECKD  or  the monitor or that someone else is running
   CHECKD which they should not be.

   If the system bit table says that a page is used but CHECKD says it is
   not used, CHECKD counts the page as a lost page.  It then outputs:

        THERE ARE n LOST PAGES
        ADDRESSES ARE IN FILE file

   where n is the number of lost pages found and file is the name of  the
   file containing the addresses of those pages.  The file name is of the
   form  str:<dir>str-LOST-PAGES.BIN.n,  where  str  and  dir  are   your
   currently  connected  structure and directory.  If the file is written
   at system load time, it is PS:<OPERATOR>PS-LOST-PAGES.BIN.n.

   If CHECKD reported an illegal disk address or a multiply assigned disk
   address,  it  does  not  write  the lost page addresses in a file.  It
   outputs:

        %SUPPRESSED WRITING OF LOST PAGES FILE , TOO MANY ERRORS

   If you get this message, correct the errors and run  CHECKD  with  the
|  CHECK  BITTABLE function again to get a lost-pages file.  It should be
|  noted that the structure remains mounted with the alias name of CHECKD


                                    1-40
                        ERROR RECOVERY PROCEDURES  


|  even  though  the  SHOW  STATUS  DISK-DRIVES  command  will  show  the
|  structure mounted with its actual name and no indication  that  it  is
|  still mounted as CHECKD.































































                                    1-41
                        ERROR RECOVERY PROCEDURES  


   To regain disk space counted as lost pages, see the RELEASE command to
   CHECKD (Part VI Section 1.7).

   If there are no lost pages, CHECKD outputs:

        THERE ARE NO LOST PAGES

   If CHECKD finds certain directory inconsistencies which  cause  it  to
   try rebuilding a directory symbol table, it outputs:

        % REBUILDING SYMBOL TABLE FOR str:<directory>

   If the rebuild is successful,  CHECKD  outputs  [OK].   Otherwise,  it
   outputs [FAILED].  It is normal for CHECKD to occasionally rebuild the
   symbol table for <ROOT-DIRECTORY> to account for the space used when a
   directory expands by a page.

   If the rebuild fails, you should try to save,  with  DUMPER,  all  the
   files  in  the directory involved.  Then follow the procedures in Part
   VI Sections 1.5.2.1 and 1.5.2.2.  After that,  discuss  salvaging  the
   files with their owners.

   If you get any of the following messages from CHECKD, perform the same
   procedure  as when a rebuild fails.  In the messages, str:<dir> is the
   structure and directory name of the inconsistent directory.

        ACTBAD: ILLEGAL FORMAT FOR ACCOUNT BLOCK IN DIRECTORY str:<dir>

        DR0CHK: ILLEGAL FORMAT FOR PAGE 0 IN DIRECTORY str:<dir>

        EXTBAD: ILLEGAL FORMAT FOR EXTENSION BLOCK IN DIRECTORY str:<dir>

        FDBBAD: ILLEGAL FORMAT FDB IN DIRECTORY str:<dir>

        NAMBAD: ILLEGAL FORMAT FOR NAME BLOCK IN DIRECTORY str:<dir>

        OPENF FAILED ON DIRECTORY str:<dir> - SKIPPED

        RCDIR FAILED ON DIRECTORY str:<dir> - SKIPPED

        UNSBAD: ILLEGAL FORMAT FOR ACCOUNT BLOCK IN DIRECTORY str:<dir>

                            ----- Examples -----

     1. RUN CHECKD? Y<RET>
        [CHECKING FILE CONSISTENCY]

        [WORKING ON STRUCTURE - PS:]

        DISK ADDRESS 4 MARKED IN BAT BLOCKS: SPECIAL SYSTEM BLOCKS
        - - - - - - -
        DISK ADDRESS 443264 MARKED IN BAT BLOCKS: SWAPPING SPACE
        DISK ADDRESS 444574 MARKED IN BAT BLOCKS: SWAPPING SPACE
        - - - - - - -
        DISK ADDRESS 220754 MARKED IN BAT BLOCKS: FILE PAGE 50
        SUMMARY FOR FILE PS:<FIELD-IMAGE>COBOL.EXE.4
        1    ASSIGNED PAGES MARKED IN BAT BLOCKS
        - - - - - - -
        % REBUILDING SYMBOL TABLE FOR PS:<ROOT-DIRECTORY> [OK]
        DISK ADDRESS 1350340 MARKED IN BAT BLOCKS: FILE PAGE 1
        SUMMARY FOR FILE PS:<TOTTON>XPL.PAT.1
        1    ASSIGNED PAGES MARKED IN BAT BLOCKS
        - - - - - - -



                                    1-42
                        ERROR RECOVERY PROCEDURES  


        LOCAL COUNT OF FILE PAGES: 129711
        LOCAL COUNT OF OVERHEAD PAGES: 15858
        LOCAL COUNT OF USED PAGES: 145569

        SYSTEM COUNT BEFORE CHECKD: 146671
        SYSTEM COUNT AFTER CHECKD: 146671

        THERE ARE 1086 LOST PAGES

        ADDRESSES ARE IN FILE PS:<OPERATOR>PS-LOST-PAGES.BIN.1


     2. DISK ADDRESS 220754 MARKED IN BAT BLOCKS: FILE PAGE 50
        SUMMARY FOR FILE PS:<FIELD-IMAGE>COBOL.EXE.4
        1    ASSIGNED PAGES MARKED IN BAT BLOCKS
        - - - - - - -
        MULTIPLY ASSIGNED DISK ADDRESS 1403114: FILE PAGE 2762
        SUMMARY FOR FILE PS:<RMSQA-TEST>FOOREL1..4
        1    FAULTY ADDRESSES IN PAGE TABLE
        1    MULTIPLY ASSIGNED ADDRESSES
        - - - - - - -

        MULTIPLY ASSIGNED DISK ADDRESS 261534: FILE PAGE 52

        SUMMARY FOR FILE PS:<RMSQA-TEST>RMSSYM.UNV.14
        1    FAULTY ADDRESSES IN PAGE TABLE
        1    MULTIPLY ASSIGNED ADDRESSES
        - - - - - - -
        % REBUILDING SYMBOL TABLE FOR PS:<ROOT-DIRECTORY> [OK]
        DISK ADDRESS 1350340 MARKED IN BAT BLOCKS: FILE PAGE 1
        SUMMARY FOR FILE PS:<UNSUPPORTED>TV.EXE.7
        1    ASSIGNED PAGES MARKED IN BAT BLOCKS
        - - - - - - -

        LOCAL COUNT OF FILE PAGES: 125793
        LOCAL COUNT OF OVERHEAD PAGES: 15216
        LOCAL COUNT OF USED PAGES: 141007

        SYSTEM COUNT BEFORE CHECKD: 141149
        SYSTEM COUNT AFTER CHECKD: 141149

        THERE ARE 137 LOST PAGES
        % SUPPRESSED WRITING OF LOST PAGES FILE , TOO MANY ERRORS



   1.8  RESTARTING PROGRAMS UNDER SYSJOB

   When you receive a fatal error message  on  the  CTY  from  a  program
   running under SYSJOB, you must restart it by giving commands to SYSJOB
   via the ^ESPEAK command.  The format of the message follows:

        ** SYSJOB: SUBJOB CRASHED, DATA FOLLOWS: **
          n process state AT m  date time
          Jsys error:message
          FORK ACS:  a  b  c  d

              n = number of the process
        process = name of the process, e.g., INFO
          state = CRASHED or HALTED
              m = PC value
           abcd = content of accumulators 1 to 4




                                    1-43
                        ERROR RECOVERY PROCEDURES  


   Also, if you type the SYSJOB  STATUS  command  via  ^ESPEAK  (see  the
   TOPS-20  Operator's Command Language Reference Manual) and there is no
   entry for a program normally run under SYSJOB, you must  restart  that
   program.

   The following programs run as processes under SYSJOB:

        1.  ORION

        2.  QUASAR

        3.  MOUNTR

        4.  INFO

        5.  MAILER

        6.  MAPPER

        7.  LPTSPL

        8.  CDRIVE

        9.  SPRINT

   To restart a program under SYSJOB, type the following commands:

        1.  PUSH to OPR

        2.  ENABLE your capabilities

        3.  ^ESPEAK

        4.  RUN SYS:program

        5.  CTRL/Z

        6.  POP

                                    NOTE

           Programs running under SYSJOB must be restarted in the
           same order as they are in the SYSJOB.RUN file.

                            ----- Example -----

        OPR>PUSH<RET>
|        TOPS-20 Command Processor 6(514)
        @ENABLE<RET>
        $^ESPEAK<RET>
         [PLEASE TYPE SYSJOB COMMANDS - END WITH ^Z]
        RUN SYS:INFO
        <CTRL/Z>
        $POP<RET>
        OPR>

                             ----- Hints -----

|  If you restart  QUASAR,  you  must  also  restart  all  spoolers,  for
|  example,  MOUNTR,  CDRIVE,  LPTSPL,  BATCON,  and SPRINT (if they were
|  previously running).  To restart ORION, you must restart all OPRs.  To
|  do this simply run OPR and type any OPR command.




                                    1-44
                        ERROR RECOVERY PROCEDURES  


   1.8.1  GALAXY Crash Recovery Procedures

   GALAXY programs may stop performing useful work for one of the reasons
   listed  below.   When  a  program  stops  processing, this stoppage is
   referred to as a "crash".  This section describes how you can  recover
   from a GALAXY program crash.

   Reasons for program crashes are:

        1.  A monitor call (JSYS) that should not fail  takes  the  error
            return and a error occurs.

        2.  An error is  detected  by  the  built-in  consistency  checks
            within the various components of GALAXY and a error occurs.

        3.  An undetected  error  eventually  causes  an  illegal  memory
            reference and a error occurs.

   You should take one of the following steps should a  GALAXY  component
   (program)  crash.   It  is  assumed that GALAXY is running as multiple
   forks under SYSJOB.  All GALAXY components  whose  error  generates  a
   file  in  PS:<SPOOL> which contains the core image of the component at
   the time of the crash.  The filename is XXXXXX-YYY-CRASH.EXE where:

        XXXXXX - is the name of  the  component  that  crashed,  such  as
                 BATCON or ORION.

        YYY - the 3-character error name.


   Table 1-1:  GALAXY Component Crash Recovery Procedures


     Component                             Recovery


     LPTSPL            If LPTSPL crashes, it will  automatically  restart
                       the jobs which were being processed at the time of
                       the crash from the page  number  recorded  in  the
                       last  checkpoint.  At the CTY, issue the following
                       commands:

                       ^ESPEAK
                       STATUS
                       ^Z

                       Now, using the process number specified for LPTSPL
                       in  the  STATUS  display,  kill off all the LPTSPL
                       processes using the SYSJOB PURGE  command.   There
                       is  one  PURGE  command  required  for each LPTSPL
                       process running under SYSJOB.

                       ^ESPEAK
                       PURGE <fork number>
                       PURGE <fork number>
                       ^Z

                       Now, restart all  the  LPTSPL  jobs  under  SYSJOB
                       using  the  SYSJOB  RUN command.  There is one RUN
                       command required for each line printer you want to
                       start.





                                    1-45
                        ERROR RECOVERY PROCEDURES  


   Table 1-1:  GALAXY Component Crash Recovery Procedures (Cont.)


     Component                             Recovery


     LPTSPL (Cont.)    ^ESPEAK
                       RUN SYS:LPTSPL
                       RUN SYS:LPTSPL
                       ^Z

                       The line printer  spooler(s)  is  now  ready  to
                       process   user  requests  again.   If  required,
                       re-issue the OPR START commands to  restart  the
                       LPT processing.


     CDRIVE            If CDRIVE crashes, all jobs currently being read
                       from  the card reader will be lost and will have
                       to be restarted.  To restart CDRIVE,  issue  the
                       following commands:

                       ^ESPEAK
                       KILL CDRIVE
                       RUN SYS:CDRIVE
                       ^Z

                       The card reader spooler is  now  ready  to  read
                       cards  again.   If  required,  re-issue  the OPR
                       START commands to restart the CDR processing.


     SPRINT            If SPRINT crashes, it can be  restarted  without
                       loss  of  data.   To  restart  SPRINT, issue the
                       following commands:

                       ^ESPEAK
                       KILL SPRINT
                       RUN SYS:SPRINT
                       ^Z

                       The card reader  interpreter  is  now  ready  to
                       start  processing  spooled card decks again.  No
                       OPR commands are necessary  (or  available)  for
                       controlling SPRINT.


     SPROUT            If SPROUT  crashes,  all  jobs  currently  being
                       processed  are  restarted  from the beginning of
                       the current file.  To restart SPROUT, issue  the
                       following commands:

                       ^ESPEAK
                       KILL SPROUT
                       RUN SYS:SPROUT
                       ^Z

                       The card punch/plot  spooler  is  now  ready  to
                       start   processing   user  requests  again.   If
                       required, re-issue the  OPR  START  commands  to
                       restart the CDP/PLT processing.





                                    1-46
                        ERROR RECOVERY PROCEDURES  


   Table 1-1:  GALAXY Component Crash Recovery Procedures (Cont.)


     Component                             Recovery


     ORION             If ORION crashes, the only indication of the crash
                       will  be  the  dump which gets printed on the CTY.
                       After ORION is restarted, all OPR programs running
                       at   that   time   will  automatically  reset  the
                       OPR/ORION link with the first command typed to the
                       OPRs.   The  first command that re-establishes the
                       OPR/ORION link will be lost.

                       Any DN60 Termination  remote  stations  should  be
                       shut  down and restarted.  To restart ORION, issue
                       the following commands:

                       ^ESPEAK
                       KILL ORION
                       RUN SYS:ORION
                       ^Z

                       The operator controller program is  now  ready  to
                       process  OPR  commands  and  route messages to the
                       appropriate processors.


     OPR               If OPR crashes, just restart it ($R OPR).


     BATCON            If BATCON crashes, first display the batch  stream
                       status  from  OPR.   For all active batch streams,
                       issue a LOGOUT command for each job running  under
                       batch.   Logging  the jobs off will not delete the
                       queue entry.  The batch job will be restarted when
                       BATCON  is  restarted.  When all active batch jobs
                       have been logged out, issue the following commands
                       to restart it:

                       ^ESPEAK
                       KILL BATCON
                       RUN SYS:BATCON
                       ^Z

                       The batch controller is now ready to process  user
                       requests  again.   If  required,  re-issue the OPR
                       START commands to restart the batch processing.


















                                    1-47
                        ERROR RECOVERY PROCEDURES  


   Table 1-1:  GALAXY Component Crash Recovery Procedures (Cont.)


     Component                             Recovery


     QUASAR            If  QUASAR  crashes,  user  requests   for   queue
                       services  will  not  be  lost.  QUASAR maintains a
                       queue on PS:<SPOOL> which contains copies  of  all
                       outstanding user requests.  Restarting QUASAR is a
                       problem, however.  QUASAR also maintains a list of
                       all  running  GALAXY  processors.   If  QUASAR  is
                       restarted, it no longer knows about  the  rest  of
                       the  GALAXY  spoolers.   To  restart QUASAR, first
                       determine what batch jobs were running at the time
                       of  the  crash  and log them out.  Next, issue the
                       following commands to restart QUASAR:

                       ^ESPEAK
                       KILL QUASAR
                       RUN SYS:QUASAR
                       ^Z

                       The request controller is  now  ready  to  process
                       user  requests  again.  However, since QUASAR does
                       not know  about  any  running  spoolers,  ALL  the
                       spoolers must also be restarted.  In addition, you
                       must  restart   MOUNTR,   the   mountable   device
                       processor.   Follow  the  instructions  above  for
                       restarting  the   following   spoolers:    LPTSPL,
                       BATCON, CDRIVE, SPRINT, SPROUT.

                       Assuming that MOUNTR is also running under SYSJOB,
                       issue the following commands to restart it:

                       ^ESPEAK
                       KILL MOUNTR
                       RUN SYS:MOUNTR
                       ^Z

                       After the spoolers and MOUNTR are  restarted,  you
                       must  run  OPR and give the TAKE command using the
                       SYSTEM.CMD file and any other command  files  used
                       for  system  startup.   This  will  restart normal
                       GALAXY processing.


   If you were trying to run MAIL and you received a message from  SYSJOB
   indicating a problem with MAILER or INFO, restart MAILER or INFO.

















                                    1-48
                        ERROR RECOVERY PROCEDURES  


   1.9  HUNG CONSOLE TERMINAL (LA36)

   If you are trying to type at the CTY and no characters  are  printing,
   do the following:

        1.  Be sure the terminal is plugged in.

        2.  Be sure the CTY has paper.  If it  does  not,  replenish  the
            paper supply.  If you still get no characters printed, switch
            the terminal to LOCAL and then back to line.

        3.  Check the fuse on the vertical panel under the keyboard.

        4.  Try the terminal in LOCAL.

        5.  Be sure it is ON LINE and set for the correct speed.

        6.  If there is a CAPS LOCK key, be sure it is pressed down.

        7.  See if CTRL/\ (control backslash) gets you into  the  console
            processor  command language.  If it does, type QUIT or CTRL/Z
            to return to TOPS-20.

        8.  Check to see if other terminals are working.

   If you try all the above and still fail to get any echo from the  CTY,
   try  reloading  the  system via DISK or FLOPPY.  If that fails, notify
   your DIGITAL Field Service Representative.



   1.10  MEMORY CONFIGURATION FAILED

   When memory is being configured, it is possible  to  receive  a  fatal
   error message in the form of:

        KLI--?FATAL MEMORY CONFIGURATION ERROR-CODE "XXX"
        where "xxx" = the diagnostic error code

   If this error occurs, KLI asks you if you  want  to  configure  memory
   again.   Type  FORCE  and  press  the  RETURN key.  If the error still
   persists, call your DIGITAL Field Service Representative.



   1.11  TOPS-20 MONITOR NOT FOUND

   If you are loading the  system  using  the  KL  bootstrap  that  reads
   TOPS-20  from  disk and, after the message KLI -- BOOTSTRAP LOADED AND
   STARTED, you get:

        ?FIL NOT FND

   the bootstrap was not able to find on disk the  TOPS-20  monitor  that
   you  specified.  Unless you specified a name after a BOOT> prompt, the
   file not found was PS:<SYSTEM>MONITR.EXE.










                                    1-49
                        ERROR RECOVERY PROCEDURES  


   Consider the following:

        1.  If you specified a nondefault monitor name, be sure you typed
            the correct directory name and filename.

        2.  Be sure you have loaded a bootstrap that loads a monitor from
            disk.

        3.  Be sure the appropriate disk packs are mounted and  that  the
            drives are on-line.

        4.  If you wanted the default monitor, you must try  to  load  it
            from  magnetic  tape  (Part IV Section 1.3.2) using your most
            recent system backup tape (Part IV Section 1.1.6.1).   Either
            the file PS:<SYSTEM>MONITR.EXE has been destroyed on the disk
            or some other problem possibly a hardware error, has affected
            the file system.

        5.  If the system comes up for timesharing  after  you  load  the
            monitor from magnetic tape, chances are that only the monitor
            file on disk was bad.  You should restore a good copy of  the
            monitor from a DUMPER tape to PS:<SYSTEM>.

        6.  If the system does not come up for timesharing, it is  likely
            that  there are problems with the file system.  First consult
            your software specialist.  He may  want  to  investigate  the
            situation     before    recommending    reconstructing    the
            ROOT-DIRECTORY or the lengthy procedure  of  re-creating  the
            file system.




   1.12  PS NOT FOUND

   During a system reload, if you see the message:

        PS NOT FOUND. WHAT IS THE NAME OF THE PUBLIC STRUCTURE?

   the system was not able to find a structure named PS:.  You must  then
   type  the  name  of  the  structure  that  is  going  to be the public
   structure.  As long as the TOPS-20  monitor  continues  to  run,  that
   structure  will  be  known  as  PS:.  It will not be recognized by its
   original name that you typed in answer to the question.  Note that the
   public  structure  must  have swapping space, usually a front-end file
   system,  an  appropriately  installed  <SYSTEM>  and   <SUBSYS>,   and
   directories to allow users to log in.

                            ----- Example -----

   To designate the structure 2136: as the public structure when  PS: was
   not found:

        PS NOT FOUND. WHAT IS THE NAME OF THE PUBLIC STRUCTURE? 2136

        [2136 MOUNTED AS PS]










                                    1-50
                        ERROR RECOVERY PROCEDURES  


   1.13  BOOTSTRAP LOAD FAILED

   If the bootstrap failed to load during a  system  reload,  you  should
   zero memory and then try to reload again.  This is sometimes necessary
   after a power failure but should occur infrequently.  If  the  problem
   continues, call your DIGITAL Field Service Representative.

   To zero or clear memory, type the following at the CTY.

        1.  <CTRL/\>

        2.  ABORT

        3.  SET CONSOLE PROGRAMMER

        4.  ZERO 0>address

            where address is the maximum memory address on your system

                            ----- Example -----

        <CTRL/\>
        PAR>ABORT<RET>
        PAR%SET CONSOLE PROGRAMMER<RET>
         CONSOLE MODE: PROGRAMMER
        PAR%ZERO 0>777777<RET>
        PAR%



   1.14  MANUALLY RELOADING THE DX20

   The DX20 is usually started when you load the system.   At  that  time
   the BOOT or MTBOOT program loads and starts the microcode in the DX20.
   However, in  the  following  situations,  you  must  reload  the  DX20
   manually:

        1.  If the DX20 has been taken off-line for maintenance  and  you
            do not want to reload the entire system to reload the DX20

        2.  If you are told to load a specific DX20 microcode  file  that
            is different from the one BOOT or MTBOOT would load

        3.  If you have users complaining that none of  the  TU70  series
            magnetic  tape  drives  or  RP20  disk  drives  on a DX20 are
            working

        4.  If the DX20 loses power

   To manually reload the DX20, type the following commands:

        1.  PUSH to OPR

        2.  ENABLE your capabilities

        3.  DX20LD

        4.  SYS:DXMCA (for tape) or SYS:DXMCE (for RP20 disks)

        5.  /E

        6.  POP

   The above steps reset the DX20, load the microcode file  SYS:DXMCA.ADX
   or  SYS:DXMCE.ADX,  verify  the  microcode,  start  it,  and exit from
   DX20LD.
                                    1-51
                        ERROR RECOVERY PROCEDURES  


                            ----- Example -----

        OPR>PUSH<RET>
|        TOPS-20 Command Processor 6(514)
        @ENABLE<RET>
        $DX20LD<RET>
        FILE: SYS:DXMCA<RET>

        DX20 SELECTED:    RH20=2  DX20=0
                MICROCODE LOADED
                MICROCODE VERIFIED
                MICROCODE VERSION  1 (0)
                DX20 STARTED AT ADDRESS 1
        FILE: /E<RET>
        $POP<RET>
        OPR>

   The preceding steps and example show the most common  use  of  DX20LD.
   However,  there  are switches in DX20LD for specific functions.  After
   FILE:, the DX20LD prompt, you can type a command line in the form of a
   file specification followed by switches and <RET>.

   The file specification for the DX20 microcode is  SYS:DXMCA.ADX.   The
   default  directory  is  your  connected  directory.  Note that neither
   recognition nor the help facility (typing ?) is available in DX20LD.

   After a command line is processed or an error occurs,  DX20LD  prompts
   again for another command line.

   The DX20LD switches and their functions are:

        /C        If you specify a DX20 microcode  file  before  /C,  the
                  DX20  memory  is  cleared  and the microcode is loaded,
                  verified, and started.  If you do not specify  a  file,
                  only DX20 memory is cleared.

        /D:CD     The functions specified are done on RH20 controller  c,
                  DX20  d,  where c and d are octal numbers.  If you omit
                  /D, DX20LD looks for a DX20.  If only one is found,  it
                  is  used.   However,  if more than one is found, DX20LD
                  outputs an error message which says to use /D.

        /E        DX20LD exits to TOPS-20 command level.

        /L        The file specified is loaded into the DX20.

        /R        Specifies DX20 for RP20 disk drives.

        /S:N      The DX20 is started at location  n  in  the  microcode,
                  where  n  is  an  octal  number.   The default starting
                  address is 1.

        /T        Specifies DX20 for TU70 tape drives.

        /V        The DX20 memory is verified against the file specified.
                  Do  this  verification  only  after  loading and before
                  starting the DX20.

   You can use the switches in combination.  However, if you  use  /L  or
   /V,  the  functions  of only the specified switches are performed.  If
   you specify a file and /C or /S without /L or /V, the file  is  loaded
   into  the  DX20  and  verified,  and  the  functions  of the specified
   switches are performed.  If you do not use any switches, the  DX20  is
   reset and the file you specified is loaded, verified, and started.


                                    1-52
                        ERROR RECOVERY PROCEDURES  


                          ----- Requirement -----

   OPERATOR, WHEEL, or MAINTENANCE capability must be enabled


                         ----- Error Messages -----

   ERROR:     ?1ST CHARACTER IN DATALINE WRONG

   Reason:    The first character in the line of data DX20LD  reads  from
              SYS:DXMCA.ADX  must  be  a  semicolon,  a  W,  or a C.  You
              probably entered the wrong filename.  If the  filename  was
              entered correctly, the file is probably corrupted.

   Recovery:  Retype the filename correctly.  If the  error  recurs,  use
              another copy of SYS:DXMCA.ADX.


   ERROR:     ?2ND CHARACTER IN DATALINE WRONG

   Reason:    The character which follows a C or W in the first  position
              in the line of data DX20LD reads from SYS:DXMCS.ADX must be
              a space.  If the file name was entered correctly, the  file
              is probably corrupted.

   Recovery:  Retype the file name.  If the  error  recurs,  use  another
              copy of SYS:DXMCA.ADX.


   ERROR:     ?CHECKSUM ERROR IN DATALINE

   Reason:    The checksum  DX20LD  computed  on  the  line  of  data  in
              SYS:DXMCA.ADX  does not match the checksum in SYS:DXMCA.ADX
              for  that  line  of  data.   The  .ADX  file  is   probably
              corrupted.

   Recovery:  Use another copy of SYS:DXMCA.ADX.


   ERROR:     ?COLON ILLEGAL FOR SWITCH

   Reason:    The switch you specified does not accept a colon.

   Recovery:  Retype the command or file name and switches correctly.


   ERROR:     ?COMMAND STRING TOO LONG

   Reason:    The command line you typed is too long.  It  must  be  less
              than 100 characters.

   Recovery:  Type a command line that is less than 100 characters long.


   ERROR:     ?CRAM PARITY ERROR DURING VERIFICATION

   Reason:    You specified the switch /V and a parity error occurred  in
              the DX-20 during the verification procedure.

   Recovery:  Call your DIGITAL Field Service Representative.






                                    1-53
                        ERROR RECOVERY PROCEDURES  


   ERROR:     ?CRAM VERIFICATION - NO MATCH

   Reason:    You  specified  the  /V  switch,  and  the  disk  file  you
              specified  did  not match the file in the DX20 CRAM memory.
              The filename specified was wrong, or the data in  the  DX20
              is incorrect.

   Recovery:  Retype the correct filename and  switches.   If  the  error
              recurs, use another copy of SYS:DXMCA.ADX.


   ERROR:     ?/D SWITCH REQUIRES AN OCTAL NUMBER

   Reason:    You did not use octal numbers after the /D switch.

   Recovery:  Retype the file name, the /D switch, and the octal  numbers
              of the RH controller and the DX20 you want to use.


   ERROR:     ?FORMAT ERROR IN DATALINE

   Reason:    The data words in the file you specified are  delimited  by
              carriage returns; they should be delimited by commas.

   Recovery:  Retype the file name.  If the  error  recurs,  use  another
              copy of SYS:DXMCA.ADX.


   ERROR:     ?ILLEGAL SWITCH

   Reason:    The switch you specified is not a valid switch for DX20LD.

   Recovery:  Retype the file name and correct switch.


   ERROR:     ?INVALID SWITCH (2ND CHARACTER MUST BE A SPACE OR A COLON)

   Reason:    You must type a space or a colon  after  typing  the  first
              letter  of  the switch.  For example, you cannot use /VE to
              verify; you must use /V.

   Recovery:  Retype the file name and the correct switch.


   ERROR:     ?  JSYS ERROR:  FILE DOES NOT EXIST

   Reason:    The file you specified does not exist.  Perhaps  you  typed
              the  wrong  file  name.  The standard file specification to
              use is SYS:DXMCA.ADX.  If you do not specify a  file  type,
              the default is .ADX.

   Recovery:  Retype the correct file name.


   ERROR:     ?  JSYS ERROR:  WHEEL, OPERATOR, OR MAINTENANCE  CAPABILITY
              REQUIRED

   Reason:    You must have WHEEL, OPERATOR,  or  MAINTENANCE  capability
              enabled to run DX20LD.

   Recovery:  Log  in  to  <OPERATOR>,   which   should   have   OPERATOR
              capability.  Type ENABLE, then run DX20LD.




                                    1-54
                        ERROR RECOVERY PROCEDURES  


   ERROR:     ?MORE THAN ONE DX20 FOUND - USE /D SWITCH

   Reason:    If your system has more than one DX20, you must use the  /D
              switch to specify the DX20 number.

   Recovery:  Retype the file name, the /D switch, and the octal  numbers
              of the RH controller and the DX20 you want to use.


   ERROR:     ?NO DX20 WAS FOUND

   Reason:    DX20LD could not find a DX20.  Either the hardware  is  not
              connected  to the system, or hardware problems exist in the
              DX20 or the RH20.

   Recovery:  If the  error  recurs,  call  your  DIGITAL  Field  Service
              Representative.


   ERROR:     ?SPECIFIED DEVICE IS NOT A DX20

   Reason:    The RH20 you specified does not have a DX20.   Perhaps  you
              typed the wrong controller (RH20) number.

   Recovery:  Retype the file name and  the  /D  switch  with  the  octal
              numbers of the RH controller and DX20 you want to use.


   ERROR:     ?SPECIFIED RH20 DOES NOT EXIST

   Reason:    The RH20 you specified in the /D  switch  does  not  exist.
              Perhaps you typed the wrong controller number.

   Recovery:  Retype the file name and  the  /D  switch  with  the  octal
              numbers  of the RH controller and the DX20 you want to use.
              If the  error  recurs,  call  your  DIGITAL  Field  Service
              Representative.


   ERROR:     ?TOO MANY WORDS IN DATALINE

   Reason:    The data in the .ADX file you specified contains more  than
              32  words.   You  typed the wrong file name, or the file is
              corrupted.

   Recovery:  Retype the file name.  If the  error  recurs,  use  another
              copy of SYS:DXMCA.ADX.


   ERROR:     ?/V OR /L SWITCH WITH NO FILE NAME SPECIFIED

   Reason:    You used a /V or a /L switch and did not specify  the  name
              of  a file.  You must specify the name of an .ADX file when
              you use the /V or /L switches.

   Recovery:  Type the file name and the /V or /L switch.










                                    1-55
                        ERROR RECOVERY PROCEDURES  


   ERROR:     ?WORKING MEMORY VERIFICATION - NO MATCH

   Reason:    You used the /V switch and the file you specified  did  not
              match what was in the working section of DX20 memory.  This
              could happen if you verify the contents of the  DX20  after
              you load the .ADX file and start to execute it.

   Recovery:  Verify the contents of the DX20 after loading the .ADX file
              but before executing it.

























































                                    1-56
                        ERROR RECOVERY PROCEDURES  


   vi
   operator's guide

   1
   1
   2040 error recovery procedures
   2050 error recovery procedures
   2060 error recovery procedures
   automatically reloading the system
   automatically dumping the system
   klerr
   error.sys file
   ps:<system>dump.exe
   dump.cpy
   ps:<system>odump11.bin
   generation number
   boot.exb
   installation logbook
   p 2
   manually reloading the system
   manually dumping the system
   scheduled reloads
   Ecease command
   shutdown complete
   shutdown command
   reloading hung system
   reloading looping system
   p 4
   SPEAR output
   setting correct date
   setting correct time
   Eset command
   Esend command
   daytime command
   Ecease command
   p 5
   error messages
   %problem on device
   device corrective actions
   magnetic tape problems
   card reader problems
   read check
   pick check
   stack check
   card jam
   p 6
   hopper check
   line printer problem
   disk drive problem
   bugchks
   buginfs
   bughlts
   p 7
   power-fail restart
   crash report
   p 8
   kl bootstrap
   home block inconsistencies
   bat block inconsistencies
   bootstrap error messages
   p 9
   home block warning messages
   home block error messages
   p 10


                                    1-57
                        ERROR RECOVERY PROCEDURES  


   bat block warning messages
   p 11
   parity errors
   error.sys file
   p 12
   dx20 error messages
   reaper error messages
   p 13
   tape error messages
   p 15
   bootstrap error messages
   p 18
   recovering the file system
   rebuilding a directory symbol table
   expunge command
   ddt
   ulist
   p 19
   reconstructing a directory
   deleting a directory
   Ecreate command
   p 21
   recreating, and restoring directories
   reconstructing root-directory
   p 24
   re-creating a file system
   re-creating a file file structure
   recreating the public structure
   recreating the front-end file system
   p 25
   recreating other file structures
   p 28
   terminating klinik
   p 29
   klinik messa9000 p 31
   checkd commands
   check bittable command
   rebuild command
   reconstruct index-table command
   reconstruct root-directory command
   scan command
   p 32
   check directory command
   p 33
   limit command
   release command
   p 35
   unlimit command
   checkd error messages
   p 36
   check bittable reports
   check bittable error messages
   p 40
   restarting programs under sysjob
   Espeak command
   p 41
   sysjob status command
   programs under sysjob
   sysjob.run file
   p 42
   hung console
   local switch
   memory configuration failed
   tops-20 monitor not found


                                    1-58
                        ERROR RECOVERY PROCEDURES  


   p 43
   ps not found
   p 44
   bootstrap failed
   clearing memory
   console mode
   manually loading dx20
   dx20 microcode
   dx20 not working
   dx20ld
   sys:dxmca
   sys:dxmca.adx
   p 45
   dx20 switches
   p 46
   dx20 error messages
   p 47
   dx20 error messages
   p 48
   dx20 error messages
   s 2
   1
   2020 error recovery procedures
   automatically reloading the system
   automatically dumping the system
   forced reload
   default monitor
   ps:<system>monitor.exe
   ps:<system>dump.exe
   dump.cpy
   installation logbook
   p 2
   manually reloading the system
   manually dumping the system
   scheduled reloads
   Ecease command
   shutdown complete
   ctrl/ command
   sh command
   _*_*halted_*_* message
   reloading a hung system
   reloading a looping system
   lock switch
   unlock position
   p 3
   Ecease command
   logging reloads
   SPEAR output
   setting the correct date
   setting the correct time
   Eset command
   Esend command
   correcting the date
   correcting the time
   daytime command
   reset command
   exit command
   p 4
   error messages
   device error messages
   device corrective action
   %problem on device
   magnetic tape problem
   line printer problem


                                    1-59
                        ERROR RECOVERY PROCEDURES  


   disk drive problem
   p 5
   card reader problem
   read check
   pick check
   stack check
   hopper check
   bugchks
   buginfs
   bughlts
   p 6
   home block inconsistencies
   bat block inconsistencies
   bootstrap error messages
   p 7
   home block messages
   home block warning messages
   p 8
   home block error messages
   bat block messages
   p 9
   bat block warning messages
   memory parity errors
   mpedev bugchk
   fatmpe bughlt
   error.sys
   p 10
   reaper error messages
   p 11
   tape error messages
   p 12
   recovering the file system
   rebuilding a directory symbol table
   p 13
   ddt
   ulist
   reconstructing a directory
   p 14
   deleting a directory
   Ecreate command
   p 15
   recreating a directory
   restoring files
   dluser
   checkd
   check bittable
   release command
   p 16
   reconstructing root-directory
   recreating the file system
   recreating a structure
   p 17
   recreating the public structure
   p 18
   recreating other structures
   account system-default
   klinik
   remote diagnosis switch
   protect position
   klinik link
   disable position
   p 21
   checkd command
   check bittable command


                                    1-60
                        ERROR RECOVERY PROCEDURES  


   rebuild command
   reconstruct index-table command
   reconstruct root-directory command
   scan command
   p 22
   check bittable command
   checking bit table
   check directory command
   checking directory information
   checkd create command
   checkd exit command
   p 23
   checkd help command
   rebuild command
   reconstruct index-table command
   reconstruct root-directory command
   release command
   p 24
   scan command
   scanning a structure
   scanning for addresses
   p 25
   checkd error messages
   check bittable reports
   number of sector
   check bittable error messages
   p 30
   restarting programs under sysjob
   Espeak command
   p 31
   sysjob status command
   programs under sysjob
   sysjob.run file
   p 32
   hung console
   local switch
   tops-20 monitor not found
   p 33
   ps not found
   bootstrap load failed
   bootstrap failed during a reload
   p 34
   clearing memory























                                    1-61
                        ERROR RECOVERY PROCEDURES  









                                  CONTENTS


                                    NOTE

           The information previously found in Appendixes  A,  B,
           and  C  has been removed.  PARSER information is found
           in the RSX-20F System  Reference  Manual,  Chapter  4.
           KLINIT  information  is  found  in  the RSX-20F System
           Reference Manual,  Chapter  5.   BUGHLT,  BUGINF,  and
           BUGCHK information is found in the BUGHLT Document.

                                      CONTENTS



   APPENDIX A      PARSER


   APPENDIX B      KLINIT


   APPENDIX C      BUGHLT, BUGINF, AND BUGCHK NAMES AND DESCRIPTIONS  

   Appendixes D and E have been deleted.
   INDEX

































                                    1-62
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|                                APPENDIX A
|  
|                                  PARSER
|  
|  
|  
|  The information in this appendix has been removed  from  this  manual.
|  It  can  now  be  found  in  Chapter 4 of the RSX-20F System Reference
|  Manual.
|  
|  This page replaces Appendix A, pages A-1 through A-29.














































                                    A-1
|  




































































                                    B-1
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|                                APPENDIX B
|  
|                                  KLINIT
|  
|  
|  
|  The information in this appendix has been removed  from  this  manual.
|  It  can  now  be  found  in  Chapter 5 of the RSX-20F System Reference
|  Manual.
|  
|  This page replaces Appendix B, pages B-1 through B-26.














































                                    B-1
|  




































































                                    C-1
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|  
|                                APPENDIX C
|  
|           BUGHLT, BUGINF, AND BUGCHK NAMES AND DESCRIPTIONS  
|  
|  
|  
|  The information in this appendix has been removed  from  this  manual.
|  It can now be found in the BUGCHK Document.
|  
|  This page replaces Appendix C, pages C-1 through C-8.















































                                    C-1
|           BUGHLT, BUGINF, AND BUGCHK NAMES AND DESCRIPTIONS  


o                  Appendixes D and E have been deleted.

































































                                    C-2