/* BEGIN INCLUDE FILE linkdcl.incl.pl1 --- last modified 15 Nov 1971 by C Garman */ /* Last Modified (Date and Reason): 6/75 by M.Weaver to add virgin_linkage_header declaration 6/75 by S.Webber to comment existing structures better 9/77 by M. Weaver to add run_depth to link 2/83 by M. Weaver to add linkage header flags and change run_depth precision */ /* format: style3 */ dcl 1 link based aligned, /* link pair in linkage section */ 2 head_ptr bit (18) unal, /* rel pointer to beginning of linkage section */ 2 ringno bit (3) unal, 2 mbz bit (6) unal, 2 run_depth fixed bin (2) unal, /* run unit depth, filled when link is snapped */ 2 ft2 bit (6) unal, /* fault tag. 46(8) if not snapped, 43(8) if snapped */ 2 exp_ptr bit (18) unal, /* pointer (rel to defs) of expression word */ 2 mbz2 bit (12) unal, 2 modifier bit (6) unal; /* modifier to be left in snapped link */ dcl 1 exp_word based aligned, /* expression word in link definition */ 2 type_ptr bit (18) unal, /* pointer (rel to defs) of type pair structure */ 2 exp bit (18) unal; /* constant expression to be added in when snapping link */ dcl 1 type_pair based aligned, /* type pair in link definition */ 2 type bit (18) unal, /* type of link. may be 1,2,3,4,5, or 6 */ 2 trap_ptr bit (18) unal, /* pointer (rel to defs) to the trap word */ 2 seg_ptr bit (18) unal, /* pointer to ACC reference name for segment referenced */ 2 ext_ptr bit (18) unal; /* pointer (rel to defs) of ACC segdef name */ dcl 1 header based aligned, /* linkage block header */ 2 def_ptr ptr, /* pointer to definition section */ 2 symbol_ptr ptr unal, /* pointer to symbol section in object segment */ 2 original_linkage_ptr ptr unal, /* pointer to linkage section in object segment */ 2 unused bit (72), 2 stats, 3 begin_links bit (18) unal, /* offset (rel to this section) of first link */ 3 block_length bit (18) unal, /* number of words in this linkage section */ 3 segment_number bit (18) unal, /* text segment number associated with this section */ 3 static_length bit (18) unal; /* number of words of static for this segment */ dcl 1 linkage_header_flags aligned based, /* overlay of def_ptr for flags */ 2 pad1 bit (28) unaligned, /* flags are in first word */ 2 static_vlas bit (1) unaligned, /* static section "owns" some LA/VLA segments */ 2 perprocess_static bit (1) unaligned, /* 1 copy of static section is used by all tasks/run units */ 2 pad2 bit (6) unaligned; dcl 1 virgin_linkage_header aligned based, /* template for linkage header in object segment */ 2 pad bit (30) unaligned, /* is filled in by linker */ 2 defs_in_link bit (6) unaligned, /* =o20 if defs in linkage (nonstandard) */ 2 def_offset bit (18) unaligned, /* offset of definition section */ 2 first_ref_relp bit (18) unaligned, /* offset of trap-at-first-reference offset array */ 2 filled_in_later bit (144), 2 link_begin bit (18) unaligned, /* offset of first link */ 2 linkage_section_lng bit (18) unaligned, /* length of linkage section */ 2 segno_pad bit (18) unaligned, /* will be segment number of copied linkage */ 2 static_length bit (18) unaligned; /* length of static section */ dcl 1 trap_word based aligned, /* trap word in link definition */ 2 call_ptr bit (18) unal, /* pointer (rel to link) of link to trap procedure */ 2 arg_ptr bit (18) unal; /* pointer (rel to link) of link to arg info for trap proc */ dcl 1 name based aligned, /* storage of ASCII names in definitions */ 2 nchars bit (9) unaligned, /* number of characters in name */ 2 char_string char (31) unaligned; /* 31-character name */ /* END INCLUDE FILE linkdcl.incl.pl1 */ */ ----------------------------------------------------------- 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 */