1 04/25/86  dump
  2 
  3 Syntax as a command:
  4    dump {macro_keyword} {-process_group segment_option
  5    {...segment_options}} {-control_args}
  6 
  7 
  8 Function: produces a diagnostic dump of system memory and tables after
  9 a hardware or software failure, for later analysis.  The dump is
 10 produced by copying binary images of segments and directories into the
 11 DUMP partition of the disk described by the part dump config card.
 12 Arguments to the dump command specify which processes are to be
 13 examined and which segments from those processes are to be dumped.
 14 (See "Notes" for a general purpose command line.)  This command is
 15 valid at all BCE command levels.
 16 
 17 
 18 Arguments:
 19 macro_keyword
 20    specifies one of the following default group of processes and
 21    segments to dump.
 22    -brief, -bf
 23       is equivalent to -run hc pp moddir.
 24    -long, -lg
 25       is equivalent to -all wrt.
 26    -standard, -std
 27       is equivalent to -run hc pp moddir -elig hc stk -inzr hc stk.
 28 
 29 
 30 process_group
 31    specifies a group of processes to be considered for dumping.  The
 32    segments that get dumped for processes in this group are specified
 33    by segment options that follow the process group keyword.  Allowed
 34    groups are:
 35    -all
 36       all processes
 37    -eligible, -elig
 38       all running and eligible processes (processes being considered
 39       for running)
 40    -initializer, -inzr
 41       the initializer process (first apte entry)
 42    -running, -run
 43       processes running on a processor (apte.state = running or
 44       stopped)
 45 
 46 
 47 segment_option
 48    specifies a class of segments to be dumped for the group of
 49    processes specified by the process group keyword.  Segment classes
 50    are:
 51    directories, dir
 52       directory segments (aste.dirsw = "1"b)
 53    hardcore, hc
 54       the pds, kst, dseg and ring 0 stack for the process(es).  If a
 55       process is running, this also dumps the prds for the processor in
 56       question.
 57    modifying_dirs, moddir
 58       directory segments (aste.dirsw = "1"b) which were being modified
 59       at the time of the crash (dir.modify ^= "0"b)
 60 
 61 
 62    per_process, pp
 63       the segments contained within the process directory of the
 64       process(es) (aste.per_process = "1"b)
 65    stacks, stk
 66       all stack segments in the process(es) not already dumped by the
 67       hc or pp keywords.
 68    writeable, wrt
 69       all segments to which the process(es) have write access.  This
 70       keyword produces a very large dump.
 71 
 72 
 73    Writable ring zero segments (system data bases) other than
 74    directories are dumped regardless of what keywords are specified.
 75 
 76    Prefixing a segment option with a circumflex (^) reverts an earlier
 77    occurence of the given segment option.  Thus, you can turn on a
 78    macro_keyword and turn off a specific segment option within it.
 79 
 80 
 81 Control arguments:
 82 -bce
 83    dumps BCE itself (the dumper).
 84 -crash
 85    specifies that BCE is to dump the saved Multics image.
 86 -drive, -dv drive_name
 87    places the dump into the dump partition of the specified drive
 88    instead of the drive listed on the PART DUMP card.
 89 -dump #
 90    changes the dump number to a desired value.  By default, dumps are
 91    assigned numbers sequentially.
 92 
 93 
 94 -force, -fc
 95    places the dump into the DUMP partition without querying you first,
 96    even if this means that an existing dump which hasn't been copied
 97    will be overwritten.  If this control argument is not used, the dump
 98    command asks you if the existing dump should really be overwritten
 99    before it overwrites it.
100 -no_sstnt
101    disables sst_names_ generation.  If sst_names_ generation is enabled
102    for the system ( by the astk parm in the config deck), this control
103    argument has no effect.
104 
105 
106 -sstnt
107    causes the segment sst_names_ (the sst name table) to be filled in
108    and included in the dump.  The segment sst_names_ provides a name
109    for each ASTE in the system.  This information is of use to dump
110    analysis programs.  If sst_names_ generation is enabled for the
111    system (by the astk parm in the config deck), this control argument
112    has no effect.  This is the default.
113 
114 
115 Notes: For general purpose dump analysis, the command line
116    dump -std
117 which is equivalent to
118    dump -run hc pp moddir -elig hc stk -inzr hc stk
119 should give the user all of the useful processes and segments (to
120 produce a smaller dump, remove the "moddir" keyword).  For simplicity,
121 and to remove the possibility of operator error, this command line
122 should be placed into a BCE exec_com, either by itself or in a site
123 supplied crash exec_com.
124 
125 
126 The dump command examines the active process table entries (apte)
127 within the specified image.  For each entry, the criteria specified
128 through the keywords are used to decide if any segments from this
129 process are to be dumped.  If any segments are to be dumped, the
130 segment options are applied to each segment active within that process
131 to decide whether or not they should be dumped.  As each process is
132 dumped, the dump command will produce an output line showing the apte
133 number and the dbr value for the process.  After scanning all apte
134 entries, if the process in control when Multics crashed was not one of
135 the processes dumped, it is dumped with a status line showing an apte
136 number of zero.  This process is dumped with the running and
137 initializer segment options.
138 
139 
140 A counter and a valid flag are kept within the DUMP partition.  When a
141 dump is placed into the partition, the valid flag is set.  It is reset
142 when the dump is copied out during Multics service (by the copy_dump
143 exec command).  If the dump in the partition has not been copied, the
144 dump command will ask you if it should be overwritten.  You can avoid
145 this query by specifying the -force (-fc) control argument.
146 The dump command provides a severity indicator, indicating the
147 successful of its operation.  This indicator may be obtained with the
148 severity command/active function.  The interpretation of the severity
149 status is:
150    3 - the dump request was never called.
151    2 - the dump request was entered, but never completed.
152    1 - the dump was aborted because the DUMP partition contains
153           an older dump.
154    0 - the dump was successfully generated.