1 10/25/84 dm_system_shutdown
  2 
  3 Syntax as a command:  dm_system_shutdown {-cargs}
  4 
  5 
  6 Function:  This command schedules a Data Management system (DMS)
  7 shutdown.  The DMS can be specified by the pathname of the its
  8 per-system directory, i.e., the directory in which it resides.  By
  9 default, the DMS which this process is currently using is scheduled to
 10 be shut down.  Processes using the DMS are notified of the scheduled
 11 shutdown via the dm_shutdown_scheduled_ IPS signal.
 12 
 13 
 14 The system shutdown process consists of five events executed at the
 15 following five points in time, usually, but not necessarily, in the
 16 given order:
 17 
 18   1) At user-warning-time:
 19      a warning message is printed in each process using the
 20      DMS as follows:
 21 
 22      DM is shutting down; no new transactions will be allowed
 23      after 9:00.  Please use the dm_user_shutdown_command, or
 24      9:15, a forced shutdown will be done.  Shutdown
 25      reason:  {REASON}
 26 
 27   2) At begin-shutdown-time:
 28      the Data Management daemon puts the DMS in a state wherein
 29      no new transactions can be created.  This is considered the
 30      beginning of the DMS shutdown.
 31 
 32 
 33   3) At user-shutdown-time:
 34      for each user process still using the DMS, a DM user
 35      shutdown is executed in the process.  A message is printed
 36      informing the user, as follows:
 37 
 38      The Data Management system is shutting down; starting DM user
 39      shutdown.  Shutdown reason:  {REASON}
 40 
 41   4) At user-bump-time:
 42      the Data Management daemon bumps each process still using
 43      the DMS.
 44 
 45   5) At daemon-logout-time:
 46      the shutdown is made complete by logging out the Data
 47      Management daemon.
 48 
 49 
 50 The time of each event is determined according to the following rules:
 51 
 52    1) If the time is specified with a control argument ending in
 53       "_time" the event is scheduled to occur at that time.
 54 
 55    2) Starting from each specified time, the times for
 56       subsequent events are calculated using the specified or
 57       default delays, until an event is reached which has a
 58       specified time.
 59 
 60    3) If the first event is not scheduled, then starting from
 61       the first specified time, calculate the times for previous
 62       events using specified or default delays, until the first
 63       event is reached.
 64 
 65 
 66    4) If no times are specified, the user-bump-time defaults to
 67       the scheduled Multics shutdown time, and other times are
 68       calculated from there.
 69 
 70    5) If no times are specified and there is no Multics shutdown
 71       scheduled, an error message is returned.
 72 
 73 
 74 Control arguments:
 75 -dm_system_directory PATH, -dmsd PATH
 76    is the pathname, PATH, of the DM per-system directory in which the
 77    DMS resides.  Several DMSs may reside in the DM per-system
 78    directory.  The one selected is the one for the current bootload at
 79    the AIM authorization of the caller.  If not specified, the default
 80    DMS is the DMS the process is currently using.  If not specified and
 81    the process is not currently using a DMS, an error message is
 82    printed and no action is performed.
 83 -reason STRING
 84    is the reason, STRING, why the DMS is being shut down.  This reason
 85    is ultimately part of the messages received by users of the DMS.  If
 86    not specified, a prompt is issued for the reason.  STRING can be no
 87    longer than 64 characters.  STRING must be quoted if it contains
 88    whitespace.
 89 
 90 
 91 -user_warning_time TIME, -uwtm TIME
 92    specifies the user-warning-time.  TIME may be absolute or relative
 93    to the time at which the dm_system_shutdown command is invoked.
 94    TIME must be acceptable to the convert_date_to_binary_ subroutine.
 95    If no user-warning-time is specified, the default is to use the
 96    config file begin_shutdown_delay to determine the user-warning-time,
 97    calculating backwards in time.
 98 -begin_shutdown_delay DELAY, -bsd DELAY
 99    specifies the time period between the user-warning-time and the
100    begin-shutdown-time.  DELAY must be in a form acceptable to the
101    convert_date_to_binary_ subroutine.  If no begin-shutdown-time is
102    specified, the default is to use the config file
103    begin_shutdown_delay to determine the begin-shutdown-time.
104 
105 
106 -begin_shutdown_time TIME, -bstm TIME
107    specifies the begin-shutdown-time.  TIME may be absolute or relative
108    to the time at which the dm_system_shutdown command is invoked.
109    TIME must be acceptable to the convert_date_to_binary_ subroutine.
110    If no begin-shutdown-time is specified, the default is to use the
111    config file begin_shutdown_delay to determine the
112    begin-shutdown-time.
113 -user_shutdown_delay DELAY, -usd DELAY
114    specifies the time period between the begin-shutdown-time and the
115    user-shutdown-time.  DELAY must be in a form acceptable to the
116    convert_date_to_binary_ subroutine.  If no user-shutdown-time is
117    specified, the default is to use the config file user_shutdown_delay
118    to determine the user-shutdown-time.
119 
120 
121 -user_shutdown_time TIME, -ustm TIME
122    specifies the user-shutdown-time.  TIME may be absolute or relative
123    to the time at which the dm_system_shutdown command is invoked.
124    TIME must be acceptable to the convert_date_to_binary_ subroutine.
125    If no user-shutdown-time is specified, the default is to use the
126    config file user_shutdown_delay to determine the user-shutdown-time.
127 -user_bump_delay DELAY, -ubd DELAY
128    specifies the time period between the user-shutdown-time and the
129    user-bump-time.  DELAY must be in a form acceptable to the
130    convert_date_to_binary_ subroutine.  If no user-bump-time is
131    specified, the default is to use the config file user_bump_delay to
132    determine the user-bump-time.
133 -user_bump_time TIME, -ubtm TIME
134    specifies the user-bump-time.  TIME may be absolute or relative to
135    the time at which the dm_system_shutdown command is invoked.  TIME
136    must be acceptable to the convert_date_to_binary_ subroutine.  If no
137    times are specified via a -..._time control argument, the
138    user-bump-time defaults to the scheduled Multics shutdown time.  If
139    a time other than the user-bump-time is specified, the default is to
140    use the config file user_bump_delay to determine the user-bump-time.
141 
142 
143 -daemon_logout_delay DELAY, -dld DELAY
144    specifies the time period between the user-bump-time and the
145    daemon-logout-time.  DELAY must be in a form acceptable to the
146    convert_date_to_binary_ subroutine.  If no daemon-logout-time is
147    specified, the default is to use the config file daemon_logout_delay
148    to determine the daemon-logout-time.
149 -daemon_logout_time TIME, -dltm TIME
150    specifies the daemon-logout-time.  TIME may be absolute or relative
151    to the time at which the dm_system_shutdown command is invoked.
152    TIME must be acceptable to the convert_date_to_binary_ subroutine.
153    If no daemon-logout-time is specified, the default is to use the
154    config file daemon_logout_delay to determine the daemon-logout-time.
155 
156 
157    Access required:
158    're' permission to dm_admin_gate_ is required to execute this
159    command.
160 
161 
162    Examples:
163 
164      Given:
165         Multics shutdown scheduled for 8:00.
166         All default delays are five minutes.
167 
168    dm_system_shutdown -bsd 20min
169 
170         Schedules shutdown with following times:
171           user-warning:  7:30 (specified delay)
172           begin-shutdown:  7:50 (default delay)
173           user-shutdown:  7:55 (default delay)
174           user-bump:  8:00 (default time)
175           daemon-logout:  8:05 (default delay)
176 
177    dm_system_shutdown -uwtm 5:00 -ustm 6:10 -ubtm 6:00
178 
179         Schedules shutdown with following times:
180           user-warning:  5:00 (specified time)
181           begin-shutdown:  5:05 (default delay)
182           user-shutdown:  6:10 (specified time)
183           user-bump:  6:00 (specified time)
184           daemon-logout:  6:05 (default delay)