COMPILATION LISTING OF SEGMENT !BBBJPZwfXCzlwc Compiled by: Multics PL/I Compiler, Release 28e, of February 14, 1985 Compiled at: Honeywell Multics Op. - System M Compiled on: 03/05/85 0838.1 mst Tue Options: table map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Information Systems Inc., 1983 * 4* * * 5* *********************************************************** */ 6 7 /* DESCRIPTION: 8* 9* This is is the system wide table of requests that can be used to signal 10* the DMS caretaker Daemon. The values of actions are sparse to enable 11* grouping of similar functions; as a new function is added, it can be 12* conceptually placed with other actions of the same type. 13**/ 14 15 /* HISTORY: 16* Written by Mike Pandolf, 10/28/82. 17* Modified: 18* 11/04/82 by M. Pandolf: to add bury_dead_process action. 19* 11/19/82 by M. Pandolf: to add new_proc action. 20* 01/25/83 by M. Pandolf: to add adjust_tdt_entry action and 21* to rename bury to adjust_process_id. 22* 03/11/83 by M. Pandolf: to add group VI actions. 23* 06/07/83 by M. Pandolf: to add flush_journals. 24* 07/26/83 by M. Pandolf: to add process_command. 25* 09/27/84 by Lee A. Newcomb: added new_process_notificaitons and used DMS 26* standard format. 27* 12/05/84 by R. Michael Tague: removed noop, flush_journals, list_ref_names, 28* terminate_segno, and process_command. 29* 01/22/85 by R. Michael Tague: Added kill_txn. 30**/ 31 32 /* format: style5 */ 33 dm_request_action_: 34 procedure (); 35 36 /* START OF DECLARATIONS */ 37 38 /* Parameter */ 39 /* Automatic */ 40 dcl ( 41 code fixed bin (35), 42 1 local_cds_args aligned like cds_args 43 ) automatic, 44 1 request_actions aligned automatic, 45 2 (shutdown, new_proc, adjust_tdt, adjust_txn, 46 adjust_tdt_entry, kill_txn, adjust_process_id, 47 new_process_notifications) 48 fixed bin (17); 49 50 /* Builtin */ 51 dcl (addr, hbound, size, unspec) 52 builtin; 53 54 /* Constant */ 55 dcl ( 56 EXCLUDE_ARRAY (1) char (32) init ("pad*"), 57 MYNAME char (32) init ("dm_request_action_") 58 ) int static options (constant); 59 60 /* Entry */ 61 dcl ( 62 com_err_ entry options (variable), 63 create_data_segment_ entry (ptr, fixed bin (35)) 64 ); 65 66 /* END OF DECLARATIONS */ 67 68 /* Group I - system action wakeup types */ 69 70 request_actions.shutdown = 102; 71 request_actions.new_proc = 103; 72 73 /* Group II - transaction specific action wakeup types */ 74 75 request_actions.adjust_tdt = 201; 76 request_actions.adjust_txn = 202; 77 request_actions.adjust_tdt_entry = 203; 78 request_actions.kill_txn = 204; 79 80 /* Group III - before journal specific action wakeup types */ 81 82 /* Group IV - data management file specific action wakeup types */ 83 84 /* Group V - general process cleanup & new process interfaces */ 85 86 request_actions.adjust_process_id = 501; 87 request_actions.new_process_notifications = 502; 88 89 /* Group VI - special wakeup types */ 90 91 /* Initialize cds structure */ 92 93 unspec (local_cds_args) = ""b; 94 95 local_cds_args.sections (1).p = addr (request_actions); 96 local_cds_args.sections (1).len = size (request_actions); 97 local_cds_args.sections (1).struct_name = "request_actions"; 98 local_cds_args.seg_name = MYNAME; 99 local_cds_args.exclude_array_ptr = addr (EXCLUDE_ARRAY); 100 local_cds_args.num_exclude_names = hbound (EXCLUDE_ARRAY, 1); 101 local_cds_args.switches.have_text = "1"b; 102 103 /* Call CDS to make the segment */ 104 105 call create_data_segment_ (addr (local_cds_args), code); 106 if code ^= 0 then 107 call com_err_ (code, MYNAME); 108 109 return; 110 111 /* end of dm_request_action_; */ 112 1 1 /* BEGIN INCLUDE FILE cds_args.incl.pl1 */ 1 2 1 3 dcl 1 cds_args based aligned, 1 4 2 sections (2), 1 5 3 p ptr, /* pointer to data for text/static section */ 1 6 3 len fixed bin (18), /* size of text/static section */ 1 7 3 struct_name char (32), /* name of declared structure for this section */ 1 8 2 seg_name char (32), /* name to create segment by */ 1 9 2 num_exclude_names fixed bin, /* number of names in exclude array */ 1 10 2 exclude_array_ptr ptr, /* pointer to array of exclude names */ 1 11 2 switches, /* control switches */ 1 12 3 defs_in_link bit (1) unal, /* says put defs in linkage */ 1 13 3 separate_static bit (1) unal, /* says separate static section is wanted */ 1 14 3 have_text bit (1) unal, /* ON if text section given */ 1 15 3 have_static bit (1) unal, /* ON if static section given */ 1 16 3 pad bit (32) unal; 1 17 1 18 dcl exclude_names (1) char (32) based; /* pointed to be cds_args.exclude_array_ptr */ 1 19 1 20 /* END INCLUDE FILE cds_args.incl.pl1 */ 113 114 115 116 end dm_request_action_; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 03/05/85 0755.9 !BBBJPZwfXCzlwc.pl1 >spec>on>7138.pbf>dm_request_action_.cds 113 1 04/01/76 2209.5 cds_args.incl.pl1 >ldd>include>cds_args.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. EXCLUDE_ARRAY 000010 constant char(32) initial array unaligned dcl 55 set ref 99 100 MYNAME 000000 constant char(32) initial unaligned dcl 55 set ref 98 106* addr builtin function dcl 51 ref 95 99 105 105 adjust_process_id 6 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 86* adjust_tdt 2 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 75* adjust_tdt_entry 4 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 77* adjust_txn 3 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 76* cds_args based structure level 1 dcl 1-3 code 000100 automatic fixed bin(35,0) dcl 40 set ref 105* 106 106* com_err_ 000012 constant entry external dcl 61 ref 106 create_data_segment_ 000014 constant entry external dcl 61 ref 105 exclude_array_ptr 42 000102 automatic pointer level 2 dcl 40 set ref 99* have_text 44(02) 000102 automatic bit(1) level 3 packed unaligned dcl 40 set ref 101* hbound builtin function dcl 51 ref 100 kill_txn 5 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 78* len 2 000102 automatic fixed bin(18,0) array level 3 dcl 40 set ref 96* local_cds_args 000102 automatic structure level 1 dcl 40 set ref 93* 105 105 new_proc 1 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 71* new_process_notifications 7 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 87* num_exclude_names 40 000102 automatic fixed bin(17,0) level 2 dcl 40 set ref 100* p 000102 automatic pointer array level 3 dcl 40 set ref 95* request_actions 000147 automatic structure level 1 dcl 40 set ref 95 96 sections 000102 automatic structure array level 2 dcl 40 seg_name 30 000102 automatic char(32) level 2 dcl 40 set ref 98* shutdown 000147 automatic fixed bin(17,0) level 2 dcl 40 set ref 70* size builtin function dcl 51 ref 96 struct_name 3 000102 automatic char(32) array level 3 dcl 40 set ref 97* switches 44 000102 automatic structure level 2 dcl 40 unspec builtin function dcl 51 set ref 93* NAME DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. exclude_names based char(32) array unaligned dcl 1-18 NAME DECLARED BY EXPLICIT CONTEXT. dm_request_action_ 000027 constant entry external dcl 33 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 206 224 131 216 Length 1330 131 16 1067 54 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME dm_request_action_ 130 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME dm_request_action_ 000100 code dm_request_action_ 000102 local_cds_args dm_request_action_ 000147 request_actions dm_request_action_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ create_data_segment_ NO EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 33 000026 70 000034 71 000036 75 000040 76 000042 77 000044 78 000046 86 000050 87 000052 93 000054 95 000057 96 000061 97 000063 98 000066 99 000071 100 000073 101 000075 105 000077 106 000111 109 000130 Object Segment >spec>on>7138.pbf>dm_request_action_ Created on 03/05/85 0838.1 mst Tue by GJohnson.SysMaint.m using create_data_segment_, Version II of Friday, November 30, 1984 Object Text Defs Link Symb Static Start 0 0 10 122 132 132 Length 303 10 112 10 135 0 10 Definitions: segname: dm_request_action_ text|6 adjust_process_id text|2 adjust_tdt text|4 adjust_tdt_entry text|3 adjust_txn text|5 kill_txn text|1 new_proc text|7 new_process_notifications text|0 shutdown symb|0 symbol_table No Links. ----------------------------------------------------------- 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