THIS FILE IS DAMAGED COMPILATION LISTING OF SEGMENT dm_fast_lock_meters Compiled by: Multics PL/I Compiler, Release 28e, of February 14, 1985 Compiled at: Honeywell Multics Op. - System M Compiled on: 05/06/86 1314.0 mst Tue Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1986 * 4* * * 5* *********************************************************** */ 6 7 8 9 /****^ HISTORY COMMENTS: 10* 1) change(86-02-27,Pierret), approve(86-02-27,MCR7340), 11* audit(86-04-28,Newcomb), install(86-05-06,MR12.0-1054): 12* Made to convert seconds into minutes instead of hours. 13* END HISTORY COMMENTS */ 14 15 16 /* DESCRIPTION: 17* 18*This command displays metering information about Data Management fast locking. 19**/ 20 21 /* HISTORY: 22* 23*Written by Stanford S. Cox, 03/28/85. 24*Modified: 25*05/12/85 by S. Cox: Moved metering delta calculations into ioa_ call. 26**/ 27 /* format: style2,^inddcls,ifthenstmt,ifthendo,^indnoniterdo,^inditerdo,ind3,idind32 */ 28 29 dm_fast_lock_meters: 30 proc (); 31 32 /* START OF DECLARATIONS */ 33 /* Automatic */ 34 35 dcl accept_control_argument bit (1) aligned init ("0"b); 36 dcl arg_idx fixed bin; 37 dcl arg_len fixed bin (21); 38 dcl arg_list_ptr ptr init (null); 39 dcl arg_ptr ptr; 40 dcl code fixed bin (35); 41 dcl control_argument_idx fixed bin; 42 dcl current_time fixed bin (71); 43 dcl force_interpretation_as_argument 44 bit (1) aligned init (NO); 45 dcl is_active_function bit (1) aligned init (NO); 46 dcl 1 local_lock_list_meters aligned like lock_list_meters; 47 dcl number_of_args fixed bin; 48 dcl report_current_meters bit (1) aligned init (YES); 49 dcl reset_saved_meters bit (1) aligned init (NO); 50 dcl sci_ptr ptr init (null); 51 dcl this_is_a_standalone_invocation bit (1) aligned init (YES); 52 53 /* Based */ 54 55 dcl arg char (arg_len) based (arg_ptr); 56 dcl 1 saved_lock_list_meters aligned like lock_list_meters based (saved_lock_list_meters_ptr); 57 dcl system_area area based (get_system_free_area_ ()); 58 59 /* Builtin */ 60 61 dcl (addr, clock, divide, hbound, index, mod, null, substr, unspec) 62 builtin; 63 dcl (cleanup, dm_not_available_) condition; 64 65 /* Constant */ 66 67 dcl ( 68 YES init ("1"b), 69 NO init ("0"b) 70 ) bit (1) aligned internal static options (constant); 71 dcl myname init ("dm_fast_lock_meters") char (19) internal static options (constant); 72 73 dcl ( 74 MICROSECONDS_PER_SECOND init (1e6), 75 MINUTES_PER_HOUR init (60), 76 SECONDS_PER_HOUR init (3600), 77 SECONDS_PER_MINUTE init (60) 78 ) fixed bin (35) internal static options (constant); 79 80 dcl ARGUMENT_TYPE (4) internal static options (constant) char (64) varying init ("", "", "", ""); 81 dcl CONTROL_ARGUMENT (4) internal static options (constant) char (64) varying 82 init ("-reset", "-rs", "-report_reset", "-rr"); 83 84 /* Static */ 85 86 dcl ( 87 saved_lock_list_meters_ptr ptr init (null ()), 88 saved_time fixed bin (71) 89 ) internal static; 90 91 /* Entry */ 92 93 dcl cu_$arg_list_ptr entry (ptr); 94 dcl dm_misc_util_$get_initialization_time 95 entry () returns (fixed bin (71)); 96 dcl get_system_free_area_ entry () returns (ptr); 97 dcl ioa_ entry () options (variable); 98 dcl lock_manager_$copy_fast_data entry (ptr, ptr, fixed bin (35)); 99 dcl ssu_$abort_line entry () options (variable); 100 dcl ssu_$arg_ptr entry (ptr, fixed bin, ptr, fixed bin (21)); 101 dcl ssu_$arg_count entry (ptr, fixed bin); 102 dcl ssu_$destroy_invocation entry (ptr); 103 dcl ssu_$standalone_invocation entry (ptr, char (*), char (*), ptr, entry, fixed bin (35)); 104 dcl sub_err_ entry () options (variable); 105 106 /* External */ 107 108 dcl ( 109 dm_error_$system_not_initialized, 110 error_table_$action_not_performed, 111 error_table_$bad_arg, 112 error_table_$badopt, 113 error_table_$noarg, 114 error_table_$unimplemented_version 115 ) fixed bin (35) external; 116 117 call cu_$arg_list_ptr (arg_list_ptr); 118 call ssu_$standalone_invocation (sci_ptr, myname, "", arg_list_ptr, ABORT_ENTRY, code); 119 120 on dm_not_available_ call ERROR_RETURN (dm_error_$system_not_initialized, ""); 121 on cleanup call CLEANUP (); 122 123 call ssu_$arg_count (sci_ptr, number_of_args); 124 125 accept_control_argument = YES; 126 control_argument_idx = -1; 127 128 ARG_PROCESSING_LOOP: 129 do arg_idx = 1 to number_of_args; 130 call ssu_$arg_ptr (sci_ptr, arg_idx, arg_ptr, arg_len); 131 if index (arg, "-") ^= 1 | force_interpretation_as_argument = YES 132 then call PROCESS_ARGUMENT (arg, control_argument_idx, accept_control_argument); 133 else if accept_control_argument = YES 134 then call PROCESS_CONTROL_ARGUMENT (arg, control_argument_idx, accept_control_argument, 135 force_interpretation_as_argument); 136 else call REPORT_MISSING_ARGUMENT (control_argument_idx); 137 end ARG_PROCESSING_LOOP; 138 139 if control_argument_idx >= 0 & accept_control_argument = NO 140 then call REPORT_MISSING_ARGUMENT (control_argument_idx); 141 142 call lock_manager_$copy_fast_data (null (), addr (local_lock_list_meters), code); 143 if code = error_table_$action_not_performed then call ERROR_RETURN (code, "Fast locks are not being metered"); 144 else if code ^= 0 then call ERROR_RETURN (code, "Getting temporary segment to hold lock data"); 145 call CHECK_VERSION (LOCK_LIST_METERS_VERSION_1, local_lock_list_meters.version, "lock_list_meters"); 146 147 current_time = clock (); 148 149 if saved_lock_list_meters_ptr = null () then do; 150 allocate saved_lock_list_meters in (system_area); 151 unspec (saved_lock_list_meters) = "0"b; 152 saved_time = dm_misc_util_$get_initialization_time (); 153 end; 154 155 if report_current_meters then do; 156 call DISPLAY_TOTAL_METERING_TIME (current_time - saved_time); 157 call ioa_ ( 158 "Fast lock or waiter block:^/thread in calls / steps^5xthread out calls / steps^/^9x^6d^2x^6d^15x^6d^2x^6d", 159 local_lock_list_meters.thrdin_calls - saved_lock_list_meters.thrdin_calls, 160 local_lock_list_meters.thrdin_steps - saved_lock_list_meters.thrdin_steps, 161 local_lock_list_meters.thrdout_calls - saved_lock_list_meters.thrdout_calls, 162 local_lock_list_meters.thrdout_steps - saved_lock_list_meters.thrdout_steps); 163 end; 164 165 *@Lz*@L*@Ln&Ho  Paforms HJ R>fPa~2r`?IFP*N>*@VF0*@^Nz*@fVl*@^P*@&qvQ][vvPanHuen.profile qvQ΂1G2.$Pa90`?IP*qvP*qv*qvL*qv*qv*qvz*@qv*qv.n&qETPa6robs.sue qE1G`H $&Pa.@`?Irobs.ec qstarts.ec qP*q&z*@q*ql&qET66Pa.s.abbrev qE4G2O$TdPaƴ`?I\P*qdTz*@q\*q.&qETttPalstart_up.mail qEyGA$Pa `?IP*qz*@q*ql&qETPastartr.ec qE{G2$Pa `?IP*qz*@q*q&q4)Pa$work q@c>udd>ft>Huen>t17947`?I4&q5mY]PaMHuen.phone q@c>udd>m>Gray>Gray.phone`?I|Hq5<<Pa4start_up.emacs.old q@c.>user_dir_dir>Multics>Huen>start_up.emacs.lisp`?I4&q9uPa|zzz q@c">user_dir_dir>Multics>Huen>ted>zzz`?I|&qETPaHuen.force qRoG2$Pa`?IP*qz*@q*q&qKrPaHuen.mbx qRoGIPa`?I*@qz*@(q*@q\&qK1&&Pa)Huen.memo qK1;G$DTPae`?ILP*qTDz*@qL*q&qRtddPa\Huen.value qRL G2 C$Pa]`?IP*q*@qz*@q*q\&!%LjnPastart_up.ec !%LG $Pa`?IP*!%*@!%z*@!%*!%<&&"PwPagHuen.calendar &"Pwation_as_argument = NO; 265 266 go to CONTROL_ARGUMENT (pca_p_control_argument_idx); 267 268 CONTROL_ARGUMENT (-1): /* not a control argument */ 269 call ssu_$abort_line (sci_ptr, error_table_$badopt, pca_p_arg); 270 271 CONTROL_ARGUMENT (1): /* -reset */ 272 CONTROL_ARGUMENT (2): /* -rs */ 273 reset_saved_meters = YES; 274 report_current_meters = NO; 275 276 pca_p_control_argument_idx = -1; 277 pca_p_accept_control_argument = YES; 278 return; 279 280 281 CONTROL_ARGUMENT (3): /* -report_reset */ 282 CONTROL_ARGUMENT (4): /* -rr */ 283 reset_saved_meters = YES; 284 report_current_meters = YES; 285 286 pca_p_control_argument_idx = -1; 287 pca_p_accept_control_argument = YES; 288 return; 289 290 291 end PROCESS_CONTROL_ARGUMENT; 292 293 294 CONTROL_ARGUMENT_INDEX: 295 proc (cai_p_arg) returns (fixed bin); 296 297 dcl cai_p_arg char (*); 298 dcl cai_control_argument_idx fixed bin; 299 300 do cai_control_argument_idx = 1 to hbound (CONTROL_ARGUMENT, 1) 301 while (CONTROL_ARGUMENT (cai_control_argument_idx) ^= cai_p_arg); 302 end; 303 if cai_control_argument_idx > hbound (CONTROL_ARGUMENT, 1) 304 then return (-1); 305 else return (cai_control_argument_idx); 306 307 end CONTROL_ARGUMENT_INDEX; 308 309 REPORT_MISSING_ARGUMENT: 310 proc (rma_p_control_argument_idx); 311 dcl rma_p_control_argument_idx fixed bin parm; 312 313 call ssu_$abort_line (sci_ptr, error_table_$noarg, "^a must be followed by a^[n^] ^a.", 314 CONTROL_ARGUMENT (rma_p_control_argument_idx), 315 (index ("aeiouh", substr (ARGUMENT_TYPE (rma_p_control_argument_idx), 1, 1)) > 0), 316 ARGUMENT_TYPE (rma_p_control_argument_idx)); 317 end REPORT_MISSING_ARGUMENT; 318 1 1 /* START OF: dm_lock_list_strucs_.incl.pl1 June 1982 * * * * * * * * * * * * * * * * */ 1 2 1 3 /* DESCRIPTION: 1 4* fast_lock_data.free_list_head is lock_list_head. fast_lock_data.list is the 1 5* first two words of lock_list_block. Other lock_list_block's are threaded 1 6* to make a list. block_data is large enough to contain 1 7* fast_lock_wakeup_block (largest fast lock block type). 1 8**/ 1 9 1 10 /* HISTORY: 1 11*Written by John Bongiovanni, 06/15/82. 1 12*Modified: 1 13*10/12/84 by Stanford S. Cox: Added version constants. 1 14*11/14/84 by Stanford S. Cox: Removed lock_list_head.version as fast_lock_data 1 15* has a version. 1 16**/ 1 17 1 18 /* format: style2,^inddcls,ifthenstmt,ifthendo,^indnoniterdo,^inditerdo,ind3,idind32 */ 1 19 dcl lock_list_head_ptr ptr; 1 20 dcl lock_list_block_ptr ptr; 1 21 dcl lock_list_meters_ptr ptr; 1 22 1 23 dcl lock_list_block_words fixed bin; 1 24 1 25 dcl LOCK_LIST_METERS_VERSION_1 char (8) aligned init ("lklsmt 1") int static options (constant); 1 26 1 27 dcl 1 lock_list_head aligned based (lock_list_head_ptr), 1 28 2 firstp bit (18) unal, 1 29 2 mbz bit (18) unal; 1 30 1 31 dcl 1 lock_list_block aligned based (lock_list_block_ptr), 1 32 2 nextp bit (18) unal, 1 33 2 mbz bit (18) unal, 1 34 2 block_words fixed bin (17) unal, 1 35 2 pad bit (18) unal, 1 36 2 block_data (lock_list_block_words refer (lock_list_block.block_words)) bit (36) aligned; 1 37 1 38 dcl 1 lock_list_meters aligned based (lock_list_meters_ptr), 1 39 2 version char (8) aligned, 1 40 2 thrdout_calls fixed bin (35), 1 41 2 thrdin_calls fixed bin (35), 1 42 2 thrdout_steps fixed bin (35), 1 43 2 thrdin_steps fixed bin (35); 1 44 1 45 1 46 /* END OF: dm_lock_list_strucs_.incl.pl1 * * * * * * * * * * * * * * * * */ 319 320 2 1 /* BEGIN INCLUDE FILE sub_err_flags.incl.pl1 BIM 11/81 */ 2 2 /* format: style3 */ 2 3 2 4 /* These constants are to be used for the flags argument of sub_err_ */ 2 5 /* They are just "string (condition_info_header.action_flags)" */ 2 6 2 7 declare ( 2 8 ACTION_CAN_RESTART init (""b), 2 9 ACTION_CANT_RESTART init ("1"b), 2 10 ACTION_DEFAULT_RESTART 2 11 init ("01"b), 2 12 ACTION_QUIET_RESTART 2 13 init ("001"b), 2 14 ACTION_SUPPORT_SIGNAL 2 15 init ("0001"b) 2 16 ) bit (36) aligned internal static options (constant); 2 17 2 18 /* End include file */ 321 322 end dm_fast_lock_meters; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 05/06/86 1313.4 dm_fast_lock_meters.pl1 >spec>install>1054>dm_fast_lock_meters.pl1 319 1 01/07/85 0859.2 dm_lock_list_strucs.incl.pl1 >ldd>include>dm_lock_list_strucs.incl.pl1 321 2 04/16/82 0958.1 sub_err_flags.incl.pl1 >ldd>include>sub_err_flags.incl.pl1 NAMES DECLARED IN THIS COMPILATION. IDENTIFIER OFFSET LOC STORAGE CLASS DATA TYPE ATTRIBUTES AND REFERENCES (* indicates a set context) NAMES DECLARED BY DECLARE STATEMENT. ACTION_CANT_RESTART 000230 constant bit(36) initial dcl 2-7 set ref 229* ARGUMENT_TYPE 000116 constant varying char(64) initial array dcl 80 set ref 313 313* CONTROL_ARGUMENT 000012 constant varying char(64) initial array dcl 81 set ref 300 300 303 313* LOCK_LIST_METERS_VERSION_1 000010 constant char(8) initial dcl 1-25 set ref 145* MICROSECONDS_PER_SECOND 000222 constant fixed bin(35,0) initial dcl 73 ref 212 MINUTES_PER_HOUR 002030 constant fixed bin(35,0) initial dcl 73 ref 214 NO constant bit(1) initial dcl 67 ref 43 45 49 139 264 274 SECONDS_PER_HOUR 002031 constant fixed bin(35,0) initial dcl 73 ref 215 SECONDS_PER_MINUTE 002030 constant fixed bin(35,0) initial dcl 73 ref 213 214 YES 000230 constant bit(1) initial dcl 67 ref 48 51 125 131 133 263 271 277 281 284 287 accept_control_argument 000100 automatic bit(1) initial dcl 35 set ref 35* 125* 131* 133 133* 139 addr builtin function dcl 61 ref 142 142 arg based char unaligned dcl 55 set ref 131 131* 133* 247* arg_idx 000101 automatic fixed bin(17,0) dcl 36 set ref 128* 130* arg_len 000102 automatic fixed bin(21,0) dcl 37 set ref 130* 131 131 131 133 133 247 247 arg_list_ptr 000104 automatic pointer initial dcl 38 set ref 38* 117* 118* arg_ptr 000106 automatic pointer dcl 39 set ref 130* 131 131 133 247 cai_control_argument_idx 000222 automatic fixed bin(17,0) dcl 298 set ref 300* 300* 303 305 cai_p_arg parameter char unaligned dcl 297 ref 294 300 cleanup 000134 stack reference condition dcl 63 ref 121 clock builtin function dcl 61 ref 147 code 000110 automatic fixed bin(35,0) dcl 40 set ref 118* 142* 143 143* 144 144* control_argument_idx 000111 automatic fixed bin(17,0) dcl 41 set ref 126* 131* 133* 136* 139 139* cu_$arg_list_ptr 000014 constant entry external dcl 93 ref 117 current_time 000112 automatic fixed bin(71,0) dcl 42 set ref 147* 156 167 cv_p_expected_version parameter char(8) dcl 225 set ref 222 229 229* cv_p_received_version parameter char(8) dcl 226 set ref 222 229 229* cv_p_structure_name parameter char(32) dcl 227 set ref 222 229* divide builtin function dcl 61 ref 212 214 215 dm_error_$system_not_initialized 000042 external static fixed bin(35,0) dcl 108 set ref 120* dm_misc_util_$get_initialization_time 000016 constant entry external dcl 94 ref 152 dm_not_available_ 000142 stack reference condition dcl 63 ref 120 dmt_duration_in_seconds 000160 automatic fixed bin(71,0) dcl 207 set ref 212* 213 214 215 dmt_hours 000162 automatic fixed bin(71,0) dcl 208 set ref 215* 217* dmt_minutes 000164 automatic fixed bin(71,0) dcl 209 set ref 214* 217 217* dmt_p_duration_in_microseconds parameter fixed bin(71,0) dcl 206 ref 203 212 dmt_seconds 000166 automatic fixed bin(71,0) dcl 210 set ref 213* 217 217* er_code parameter fixed bin(35,0) dcl 179 set ref 175 182* er_message parameter char unaligned dcl 180 set ref 175 182* error_table_$action_not_performed 000044 external static fixed bin(35,0) dcl 108 ref 143 error_table_$bad_arg 000046 external static fixed bin(35,0) dcl 108 set ref 247* error_table_$badopt 000050 external static fixed bin(35,0) dcl 108 set ref 268* error_table_$noarg 000052 external static fixed bin(35,0) dcl 108 set ref 313* error_table_$unimplemented_version 000054 external static fixed bin(35,0) dcl 108 set ref 229* force_interpretation_as_argument 000114 automatic bit(1) initial dcl 43 set ref 43* 131 133* get_system_free_area_ 000020 constant entry external dcl 96 ref 150 hbound builtin function dcl 61 ref 300 303 index builtin function dcl 61 ref 131 313 ioa_ 000022 constant entry external dcl 97 ref 157 217 is_active_function 000115 automatic bit(1) initial dcl 45 set ref 45* local_lock_list_meters 000116 automatic structure level 1 dcl 46 set ref 142 142 166 lock_list_meters based structure level 1 dcl 1-38 lock_manager_$copy_fast_data 000024 constant entry external dcl 98 ref 142 mod builtin function dcl 61 ref 213 214 myname 000223 constant char(19) initial unaligned dcl 71 set ref 118* 229* null builtin function dcl 61 ref 38 50 142 142 149 229 229 number_of_args 000124 automatic fixed bin(17,0) dcl 47 set ref 123* 128 pa_code 000204 automatic fixed bin(35,0) dcl 242 set ref 244* pa_p_accept_control_argument parameter bit(1) ? *? J &ET  Pa bound_full_cp_.bind EGL$ 2 BPa`?I :P* B 2z*@ :* & ET R RPa Jdfi.mail EGQ 8$ p Pa;_`?I xP*@ pz*@ x* J&]ϗET Pa P033.mail ]ϗEGw$ Pa`?I P*@]ϗ z*@]ϗ *]ϗ  &bF Pa p035.mail bFGQ $ Pa`?I P*@b z*@b *b B &0ET Pa report.fix 0E/G$ * :Pa`?I 2P*@0 : *z*@0 2*0 &~vET J JPa B@info.09/20/90 ~vEG$ h xPa`?I pP*@~v x hz*@~v p*~v B&jET Pa ladc.dial_out jEG ]$ Pa `?I P*j *j *@j z*@j *j  &g:Ho Pa }paper g:H_2 Pa~2r`?I P*g: z*g: B &kET Pa >rat.ec kE,G$ * :Pa`?I 2P*@k : *z*@k 2*k &7UET J JPa Bpl1.tr 7UEG8$ h xPaμ`?I pP*@7U x hz*@7U p*7U B&7@ET Pa pl1.mail 7@EG`H d$ Pa9`?I P*@7@ z*@7@ *7@ &}Ho" Pa doc12.5 }H@2 Pa~2r`?I P*} z*} * &}Ho$ Pa Huen.mlsys }H4   "Pa~2r`?I "*} z*} h &ĺ%ET 2 2Pa *ymar.mail ĺ%EG $ P `Pa`?I XP*@ĺ% ` Pz*@ĺ% X*ĺ% *&GHob p pPa hfd GHG  Pa~2r`?I P*@G P*@G z*@G h&Hoe Pa gls HM f Pa~2r`?I P* z*  & ET Pa MCR8104 EyGL $  Pa`?I P*@  z*@ * X & ET " "Pa 0m8104 EG ?$ @ PPa$`?I HP*@ P @z*@ H* &#ET ` `Pa XDnewpay.mail #EGw $ ~ Pag`?I P*@# ~z*@# *# X&GG Pa mcalendar.4 GGQ$ Pa`?I P*@ z*@ *  &:(\ET Pa -apr4.fgl :(\EG $ Pa(`?I P*@:(\ z*@:(\ *:(\ P &:(TK  Pa sv.activities :(TK|_Gw$ 8 HPaM`?I @P*:(T H 8z*@:(T @*:(T &>(ET X XPa Pkapr15 >(EG`H$ v Pa'`?I ~P*@>( vz*@>( ~*>( P&Hou Pa unix_mig HoŸz Z Pa~2r`?I P* z*  &D \zz \ 6FSSS.activities :%MK|EG$ j Pa`?I > 6sh.act :%M rP*:%M z j*:%M rz*@:%M z*:%M 6&]OR Pa  $activities_new_day.ec ]ORG $ PaT`?I  Oacts_new_day.ec ]O  Anew_day.ec ]O  a_nd.ec ]O  wdave.ec ]O P*]O z*@]O *]Oy several nonquick procedures. ABORT_ENTRY 64 internal procedure is assigned to an entry variable. CLEANUP 64 internal procedure is called by several nonquick procedures. FINISH 68 internal procedure is called by several nonquick procedures. DISPLAY_TOTAL_METERING_TIME internal procedure shares stack frame of external procedure dm_fast_lock_meters. CHECK_VERSION internal procedure shares stack frame of external procedure dm_fast_lock_meters. PROCESS_ARGUMENT internal procedure shares stack frame of external procedure dm_fast_lock_meters. PROCESS_CONTROL_ARGUMENT internal procedure shares stack frame of external procedure dm_fast_lock_meters. CONTROL_ARGUMENT_INDEX internal procedure shares stack frame of external procedure dm_fast_lock_meters. REPORT_MISSING_ARGUMENT internal procedure shares stack frame of external procedure dm_fast_lock_meters. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 saved_lock_list_meters_ptr dm_fast_lock_meters 000012 saved_time dm_fast_lock_meters STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME dm_fast_lock_meters 000100 accept_control_argument dm_fast_lock_meters 000101 arg_idx dm_fast_lock_meters 000102 arg_len dm_fast_lock_meters 000104 arg_list_ptr dm_fast_lock_meters 000106 arg_ptr dm_fast_lock_meters 000110 code dm_fast_lock_meters 000111 control_argument_idx dm_fast_lock_meters 000112 current_time dm_fast_lock_meters 000114 force_interpretation_as_argument dm_fast_lock_meters 000115 is_active_function dm_fast_lock_meters 000116 local_lock_list_meters dm_fast_lock_meters 000124 number_of_args dm_fast_lock_meters 000125 report_current_meters dm_fast_lock_meters 000126 reset_saved_meters dm_fast_lock_meters 000130 sci_ptr dm_fast_lock_meters 000132 this_is_a_standalone_invocation dm_fast_lock_meters 000160 dmt_duration_in_seconds DISPLAY_TOTAL_METERING_TIME 000162 dmt_hours DISPLAY_TOTAL_METERING_TIME 000164 dmt_minutes DISPLAY_TOTAL_METERING_TIME 000166 dmt_seconds DISPLAY_TOTAL_METERING_TIME 000204 pa_code PROCESS_ARGUMENT 000222 cai_control_argument_idx CONTROL_ARGUMENT_INDEX THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_g_a call_ext_out_desc call_ext_out call_int_this_desc call_int_this call_int_other_desc call_int_other return tra_ext mod_fx3 enable ext_entry int_entry int_entry_desc divide_fx3 alloc_based clock THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. cu_$arg_list_ptr dm_misc_util_$get_initialization_time get_system_free_area_ ioa_ lock_manager_$copy_fast_data ssu_$abort_line ssu_$arg_count ssu_$arg_ptr ssu_$destroy_invocation ssu_$standalone_invocation sub_err_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. dm_error_$system_not_initialized error_table_$action_not_performed error_table_$bad_arg error_table_$badopt error_table_$noarg error_table_$unimplemented_version LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 29 000435 35 000443 38 000444 43 000446 45 000447 48 000450 49 000452 50 000453 51 000455 117 000457 118 000465 120 000524 121 000556 123 000600 125 000611 126 000613 128 000615 130 000625 131 000642 133 000706 136 000741 137 000743 139 000745 142 000754 143 000773 144 001017 145 001040 147 001045 149 001047 150 001054 151 001071 152 001074 155 001102 156 001104 157 001112 165 001174 166 001176 167 001203 170 001205 172 001211 175 001212 182 001226 183 001250 185 001251 187 001257 188 001264 193 001267 195 001275 196 001302 198 001303 200 001311 201 001320 203 001321 212 001323 213 001330 214 001335 215 001345 217 001352 220 001421 222 001422 229 001424 233 001513 235 001514 244 001525 246 001526 247 001531 249 001564 252 001565 262 001576 263 001614 264 001617 266 001620 268 001622 271 001644 274 001646 276 001647 277 001652 278 001653 281 001654 284 001655 286 001656 287 001660 288 001661 294 001662 300 001673 302 001713 303 001715 305 001724 309 001727 313 001731 317 002006 ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved