COMPILATION LISTING OF SEGMENT cmcs_fillin_hdr_ Compiled by: Multics PL/I Compiler, Release 31b, of April 24, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 05/24/89 1023.5 mst Wed Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) BULL HN Information Systems Inc., 1989 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1981 * 6* * * 7* *********************************************************** */ 8 9 10 11 12 /****^ HISTORY COMMENTS: 13* 1) change(89-04-23,Zimmerman), approve(89-04-23,MCR8060), 14* audit(89-05-05,RWaters), install(89-05-24,MR12.3-1048): 15* MCR8060 cmcs_fillin_hdr_.pl1 Reformatted code to new Cobol standard. 16* END HISTORY COMMENTS */ 17 18 19 /* Modified since Version 4.3 */ 20 21 /* format: style3 */ 22 cmcs_fillin_hdr_: 23 proc (a_hdr_ptr, a_hdr_version, a_hdr_len, a_entry_len, a_code); 24 25 /* This COBOL MCS subroutine is used to fill in the standard infoirmation in all CMCS control headers */ 26 27 /* Bob May, 5/31/77 */ 28 29 dcl a_hdr_ptr ptr, 30 a_hdr_version fixed bin, 31 a_hdr_len fixed bin, 32 a_entry_len fixed bin, 33 a_code fixed bin (35); 34 1 1 /* BEGIN INCLUDE FILE... cmcs_control_hdr.incl.pl1 */ 1 2 1 3 /* This include file is the 1st part of all cobol_mcs tables */ 1 4 1 5 /* Bob May, 4/30/77 */ 1 6 1 7 dcl control_hdr_len fixed bin int static options (constant) init (32); 1 8 1 9 dcl control_hdr_ptr ptr; 1 10 1 11 dcl 1 control_hdr aligned based (control_hdr_ptr), 1 12 2 lockword bit (36) aligned, /* for process_id */ 1 13 2 version fixed bin, 1 14 2 clock_created fixed bin (71), 1 15 2 author aligned, 1 16 3 group_id char (32), /* person.proj.tag */ 1 17 3 process_id bit (36), 1 18 2 max_size fixed bin (18), /* maximum number of entries seg can hold */ 1 19 2 current_size fixed bin (18), /* index of last active entry */ 1 20 2 entry_count fixed bin (18), /* number of active entries */ 1 21 2 cmcs_control_hdr_filler (16) fixed bin; /* words (17-32) for later expansion */ 1 22 1 23 /* END INCLUDE FILE... cmcs_control_hdr.incl.pl1 */ 35 36 37 dcl sys_info$max_seg_size 38 fixed bin (18) external; 39 40 dcl divide builtin; 41 42 dcl clock_ entry () returns (fixed bin (71)), 43 get_group_id_$tag_star 44 entry () returns (char (32)), 45 get_process_id_ entry () returns (bit (36)); 46 47 /* */ 48 49 control_hdr_ptr = a_hdr_ptr; 50 51 control_hdr.version = a_hdr_version; 52 control_hdr.clock_created = clock_ (); 53 control_hdr.group_id = get_group_id_$tag_star (); 54 control_hdr.process_id = get_process_id_ (); 55 56 if a_entry_len ^= 0 /* don't hiccup for structures with no entries */ 57 then control_hdr.max_size = 58 divide ((sys_info$max_seg_size - (control_hdr_len + a_hdr_len)), a_entry_len, 18, 0); 59 else control_hdr.max_size = 0; 60 61 control_hdr.current_size, control_hdr.entry_count = 0; 62 63 a_code = 0; 64 return; 65 66 end /* cmcs_fillin_hdr_ */; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 05/24/89 0836.6 cmcs_fillin_hdr_.pl1 >spec>install>MR12.3-1048>cmcs_fillin_hdr_.pl1 35 1 03/27/82 0439.5 cmcs_control_hdr.incl.pl1 >ldd>include>cmcs_control_hdr.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. a_code parameter fixed bin(35,0) dcl 29 set ref 22 63* a_entry_len parameter fixed bin(17,0) dcl 29 ref 22 56 56 a_hdr_len parameter fixed bin(17,0) dcl 29 ref 22 56 a_hdr_ptr parameter pointer dcl 29 ref 22 49 a_hdr_version parameter fixed bin(17,0) dcl 29 ref 22 51 author 4 based structure level 2 dcl 1-11 clock_ 000012 constant entry external dcl 42 ref 52 clock_created 2 based fixed bin(71,0) level 2 dcl 1-11 set ref 52* control_hdr based structure level 1 dcl 1-11 control_hdr_len constant fixed bin(17,0) initial dcl 1-7 ref 56 control_hdr_ptr 000100 automatic pointer dcl 1-9 set ref 49* 51 52 53 54 56 59 61 61 current_size 16 based fixed bin(18,0) level 2 dcl 1-11 set ref 61* divide builtin function dcl 40 ref 56 entry_count 17 based fixed bin(18,0) level 2 dcl 1-11 set ref 61* get_group_id_$tag_star 000014 constant entry external dcl 42 ref 53 get_process_id_ 000016 constant entry external dcl 42 ref 54 group_id 4 based char(32) level 3 dcl 1-11 set ref 53* max_size 15 based fixed bin(18,0) level 2 dcl 1-11 set ref 56* 59* process_id 14 based bit(36) level 3 dcl 1-11 set ref 54* sys_info$max_seg_size 000010 external static fixed bin(18,0) dcl 37 ref 56 version 1 based fixed bin(17,0) level 2 dcl 1-11 set ref 51* NAME DECLARED BY EXPLICIT CONTEXT. cmcs_fillin_hdr_ 000013 constant entry external dcl 22 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 170 210 102 200 Length 400 102 20 154 66 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME cmcs_fillin_hdr_ 79 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME cmcs_fillin_hdr_ 000100 control_hdr_ptr cmcs_fillin_hdr_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out return_mac ext_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. clock_ get_group_id_$tag_star get_process_id_ THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. sys_info$max_seg_size LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 22 000006 49 000020 51 000024 52 000026 53 000034 54 000047 56 000061 59 000075 61 000076 63 000100 64 000101 ----------------------------------------------------------- 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