/* BEGIN: dsatm_negotiate_info.incl.pl1 * * * * * */ /****^ HISTORY COMMENTS: 1) change(84-06-01,Negaret), approve(87-07-23,MCR7742), audit(87-07-23,GDixon), install(87-08-04,MR12.1-1056): Created. END HISTORY COMMENTS */ /*^*************************************************************************^*/ /* */ /* Here are all the information involved in the negotiation phase of a */ /* connection. */ /* dsatm_neg_info (Negotiation information) */ /* dsatm_presentation (Negotiation about the presentation control layer)*/ /* dsatm_station (Negotiation about the station) */ /* dsatm_device (Negotiation about each device of the station) */ /* dsatm_network (Information about the secondary network) */ /* dsatm_sw_dev_info (Switch in the device negotiated information) */ /* */ /* neg = negotiation, ctl = control, ptcl = protocol */ /* dev = device, rec = record */ /* */ /* This include uses the following include file: */ /* dsatm_attn_fcn_info.incl.pl1 */ /* */ /* Written by Roger Negaret in June 1984 */ /*^*************************************************************************^*/ /* format: style3,dclind5,idind32,insnl,delnl */ /*****************************************************************************/ /* */ /* describes all the options to be negotiated (input) or already */ /* negotiated (output) for a session between the Terminal Manager */ /* Correspondent (TMC) and the front-end Terminal Manager (TM). */ /* Some parameters may be set with several values; the current value */ /* is the first one in the array of values; The others can be selected */ /* during the life of the session by the corresponding switch order; */ /* (Now, only the switch_logical_device order is implemented). */ /* The newly selected value becomes current and is put in the first */ /* position of the array of values, switching its place with the previous */ /* current value. */ /* The default values, for the TM protocol and for Multics are defined in: */ /* o dsatm_data_ */ /* o the TTF for overriding the device negotiation parameters. */ /*****************************************************************************/ dcl dsatm_data_$max_logical_devices fixed bin ext; dcl dsatm_data_$max_networks fixed bin ext; dcl dsatm_max_logical_devices fixed bin; dcl dsatm_max_networks fixed bin; /* dsatm_neg_info: all the information for the negotiation of a TM session */ dcl dsatmnip ptr; dcl 1 dsatm_neg_info based (dsatmnip) aligned, 2 version char (8), 2 tws_session bit (1), 2 max_letter_size fixed bin (16) uns aligned, 2 presentation like dsatm_presentation aligned, 2 station like dsatm_station aligned, 2 n_networks fixed bin, /* number of networks */ 2 device (dsatm_max_logical_devices refer (dsatm_neg_info.station.n_devices)) like dsatm_device aligned, /* the actual number of devices is in */ /* station.n_devices. */ 2 network (dsatm_max_networks refer (dsatm_neg_info.n_networks)) like dsatm_network aligned; /* dsatm_presentation: presentation layer information */ dcl dsatmprep ptr; dcl 1 dsatm_presentation based (dsatmprep) aligned, 2 pc_level, /* presentation_control protocol level */ 3 ptcl_level bit (8) unal, 3 pl_rejected bit (1) unal, 2 dfd, /* data_format_description */ 3 char_encoding (8) fixed bin, 3 char_set (14) fixed bin, 3 char_subset (4) fixed bin, 3 nat_lang (4) fixed bin, 3 compression (4) fixed bin, 3 max_rec_size fixed bin (16) uns, 3 repetitive_parm_nb, /* number of current values */ /* for each repetitive parameter */ 4 ce_nb fixed bin, 4 cs_nb fixed bin, 4 css_nb fixed bin, 4 nl_nb fixed bin, 4 ca_nb fixed bin, 3 parm_rejected, 4 ce_rejected bit (1) unal, 4 cs_rejected bit (1) unal, 4 css_rejected bit (1) unal, 4 nl_rejected bit (1) unal, 4 ca_rejected bit (1) unal, 4 mrs_rejected bit (1) unal, 2 ptcl_id, /* protocol_id */ 3 ptcl_name fixed bin, 3 ptcl_level bit (8) unal, 3 tm_version fixed bin, 3 pid_rejected bit (1) unal, 2 init_corr, /* initial correspondent */ 3 string char (32) var; /* dsatm_station: information shared by all the logical devices */ /* of the terminal station. */ dcl dsatmstap ptr; dcl 1 dsatm_station based (dsatmstap) aligned, 2 init_accept_confg fixed bin, 2 ctl_ptcl (4) fixed bin, 2 options, 3 sec_net_reconnection bit (1) unal, 3 remote_form_storage bit (1) unal, 3 badge_reader_option bit (1) unal, 3 renegotiation bit (1) unal, 3 reserved bit (4) unal, 2 n_devices fixed bin (16) uns, 2 dev_id_for_data_att fixed bin (16) uns, 2 max_sec_net_dis_time fixed bin (16) uns, 2 repetitive_parm_nb, 3 cp_nb fixed bin, 2 parm_rejected, 3 cp_rejected bit (1) unal, 3 opt_rejected bit (1) unal, 3 ndev_rejected bit (1) unal; /* dsatm_device: information specific to a logical device of the station */ dcl dsatmdevp ptr; dcl 1 dsatm_device based (dsatmdevp) aligned, 2 init_accept_confg fixed bin, 2 dpp (4) fixed bin, 2 sdp_dpp, /* sdp protocol */ 3 version fixed bin, 3 sdp_class (4) fixed bin, 2 real_dpp, /* real protocol */ 3 version fixed bin, 3 real_class (16) fixed bin, 3 real_model char (12) var, 2 trans_dpp, /* transparent protocol */ 3 version fixed bin, 2 dev_id fixed bin (16) uns, 2 dev_type fixed bin, 2 attribute, 3 shareability fixed bin, 3 alloc_unit bit (8), 2 line_length fixed bin (8) uns, 2 page_length fixed bin (8) uns, 2 line_overflow fixed bin, 2 page_overflow fixed bin, 2 char_encoding (8) fixed bin, 2 char_set (14) fixed bin, 2 char_subset (4) fixed bin, 2 nat_lang (4) fixed bin, 2 compression (4) fixed bin, 2 char_font (6) fixed bin, 2 terminal_type char (12) var, 2 ete_ack_level fixed bin, 2 max_rec_size fixed bin (16) uns, 2 attentions like attention_fcn aligned, 2 stc_available bit (1), 2 repetitive_parm_nb, 3 dpp_nb fixed bin, 3 sc_nb fixed bin, 3 rc_nb fixed bin, 3 ce_nb fixed bin, 3 cs_nb fixed bin, 3 css_nb fixed bin, 3 cf_nb fixed bin, 3 nl_nb fixed bin, 3 ca_nb fixed bin, 2 parm_rejected, 3 dpp_rejected bit (1) unal, 3 attr_rejected bit (1) unal, 3 ce_rejected bit (1) unal, 3 cs_rejected bit (1) unal, 3 css_rejected bit (1) unal, 3 cf_rejected bit (1) unal, 3 nl_rejected bit (1) unal, 3 ca_rejected bit (1) unal, 3 mrs_rejected bit (1) unal; /* dsatm_network: addressing information to establish a session */ /* through the secondary network. */ dcl dsatmnetp ptr; dcl 1 dsatm_network based (dsatmnetp) aligned, 2 sec_link_ptcl fixed bin, 2 na_nb fixed bin, 2 na_rejected bit (1) unal, 2 net_addr (4), /* in the order of the networks */ 3 net_type fixed bin, 3 addr_str char (32) var, 2 add_info char (32) var; /* additional info network specific */ dcl DSATM_NEG_INFO_V1 char (8) int static options (constant) init ("TMNI_V1"); /* dsatm_sw_dev_info: give the current or new value of the switchable */ /* parameters for a given logical device. */ dcl dsatmsdip ptr; dcl 1 dsatm_sw_dev_info based (dsatmsdip) aligned, 2 version char (8), 2 set, 3 dpp bit (1) unal, 3 ce bit (1) unal, 3 cs bit (1) unal, 3 css bit (1) unal, 3 cf bit (1) unal, 3 nl bit (1) unal, 3 ca bit (1) unal, 2 value, 3 dpp fixed bin, 3 sdp_dpp, 4 version fixed bin, 4 sdp_class fixed bin, 3 real_dpp, 4 version fixed bin, 4 real_class fixed bin, 4 real_model char (12) var, 3 trans_dpp, 4 version fixed bin, 3 dev_id fixed bin (16) uns, 3 char_encoding fixed bin, 3 char_set fixed bin, 3 char_subset fixed bin, 3 char_font fixed bin, 3 nat_lang fixed bin, 3 compression fixed bin; dcl DSATM_SW_DEV_INFO_V1 char (8) int static init ("TMSDI_V1"); /* presentation control level */ dcl PC_LEVEL_DSA300 bit (8) int static options (constant) init ("00000001"b); /* character encoding: indexes in arrays, names array, values array */ dcl CE_ISO_7BITS fixed bin int static options (constant) init (1); dcl CE_ISO_8BITS fixed bin int static options (constant) init (2); dcl CE_EBCDIC fixed bin int static options (constant) init (3); dcl CE_TELETEX fixed bin int static options (constant) init (4); dcl CE_BINARY_8BITS fixed bin int static options (constant) init (5); dcl CE_NAME (0:8) char (12) int static options (constant) init ("UNDEFINED", "ISO_7BITS", "ISO_8BITS", "EBCDIC", "TELETEX", "BINARY_8BITS", (3) ("")); dcl CE_VALUE (0:8) fixed bin (8) uns int static options (constant) init (0, 1, 2, 3, 4, 5, (3) (0)); /* character set: indexes in arrays, names array, values array */ dcl CS_ISO fixed bin int static options (constant) init (1); dcl CS_ASCII fixed bin int static options (constant) init (2); dcl CS_UK fixed bin int static options (constant) init (3); dcl CS_NORWEGIAN_DANISH fixed bin int static options (constant) init (4); dcl CS_SWEDISH_FINISH fixed bin int static options (constant) init (5); dcl CS_PORTUGUESE fixed bin int static options (constant) init (6); dcl CS_FRENCH fixed bin int static options (constant) init (7); dcl CS_GREEK fixed bin int static options (constant) init (8); dcl CS_SPANISH fixed bin int static options (constant) init (9); dcl CS_GERMAN fixed bin int static options (constant) init (10); dcl CS_PSEUDO_GRAPHIC fixed bin int static options (constant) init (11); dcl CS_NAME (0:14) char (16) int static options (constant) init ("UNDEFINED", "ISO", "ASCII", "UK", "NORWEGIAN_DANISH", "SWEDISH_FINISH", "PORTUGUESE", "FRENCH", "GREEK", "SPANISH", "GERMAN", "PSEUDO_GRAPHIC", (3) ("")); dcl CS_VALUE (0:14) bit (8) int static options (constant) init ("00000000"b, "01000000"b /* 4/0 */, "01000010"b /* 4/2 */, "01000001"b /* 4/1 */, "01000011"b /* 4/3 */, "01001000"b /* 4/8 */, "01001100"b /* 4/12 */, "01010010"b /* 5/2 */, "01010101"b /* 5/5 */, "01011010"b /* 5/10 */, "01011011"b /* 5/11 */, "00110001"b /* 3/1 */, (3) ("00000000"b)); /* character subset: indexes in arrays, names array, values array */ dcl CSS_UPPER_CASE fixed bin int static options (constant) init (1); dcl CSS_UPPER_LOWER_CASE fixed bin int static options (constant) init (2); dcl CSS_NAME (0:4) char (16) int static options (constant) init ("UNDEFINED", "UPPER_CASE", "UPPER_LOWER_CASE", (2) ("")); dcl CSS_VALUE (0:4) fixed bin (8) uns int static options (constant) init (0, 1, 2, (2) (0)); /* national language: indexes in arrays, names array, values array */ /* FFS */ dcl NL_FFS fixed bin int static options (constant) init (1); dcl NL_NAME (0:4) char (9) int static options (constant) init ("UNDEFINED", "FFS", (3) ("")); dcl NL_VALUE (0:4) fixed bin (8) uns int static options (constant) init (0, 1, (3) (0)); /* compression algorithm: indexes in arrays, names array, values array */ dcl CA_NO_COMPRESSION fixed bin int static options (constant) init (1); dcl CA_NAME (0:4) char (16) int static options (constant) init ("NO_COMPRESSION", "NO_COMPRESSION", (3) ("")); dcl CA_VALUE (0:4) fixed bin (8) uns int static options (constant) init (0, 0, (3) (0)); /* protocol id */ /* protocol name */ dcl PN_TM fixed bin int static options (constant) init (1); dcl PN_NAME (0:1) char (9) int static options (constant) init ("UNDEFINED", "TM"); dcl PN_VALUE (0:1) fixed bin (8) uns int static options (constant) init (0, 128); /* protocol level */ dcl TM_LEVEL_DSA300 bit (8) int static options (constant) init ("00000001"b); /* protocol version */ dcl PV_TM_NO_STC fixed bin int static options (constant) init (1); dcl PV_TM_FULL_STC fixed bin int static options (constant) init (2); dcl PV_NAME (0:2) char (12) int static options (constant) init ("UNDEFINED", "TM_NO_STC", "TM_FULL_STC"); dcl PV_VALUE (0:2) fixed bin int static options (constant) init (0, 1, 2); /* initiator/acceptor: indexes in arrays, names array, values array */ dcl IA_INITIATOR fixed bin int static options (constant) init (1); dcl IA_ACCEPTOR fixed bin int static options (constant) init (2); dcl IA_NAME (0:2) char (12) int static options (constant) init ("UNDEFINED", "INITIATOR", "ACCEPTOR"); dcl IA_VALUE (0:2) fixed bin (8) uns int static options (constant) init (0, 1, 2); /* control protocol: indexes in arrays, names array, values array */ dcl CP_STANDARD fixed bin int static options (constant) init (1); dcl CP_NO_CONTROL fixed bin int static options (constant) init (2); dcl CP_NAME (0:4) char (12) int static options (constant) init ("NO_CONTROL", "STANDARD", "NO_CONTROL", (2) ("")); dcl CP_VALUE (0:4) bit (8) int static options (constant) init ("00000000"b, "10000000"b, "00000000"b, (2) ("00000000"b)); /* data presentation protocol: indexes in arrays, names array, values array */ dcl DPP_SDP fixed bin int static options (constant) init (1); dcl DPP_REAL fixed bin int static options (constant) init (2); dcl DPP_TRANSPARENT fixed bin int static options (constant) init (3); dcl DPP_NAME (0:4) char (12) int static options (constant) init ("UNDEFINED", "SDP", "REAL", "TRANSPARENT", ("")); dcl DPP_VALUE (0:4) fixed bin (8) uns int static options (constant) init (0, 1, 2, 3, 0); /* sdp class: indexes in arrays, names array, values array */ dcl SC_MANDATORY fixed bin int static options (constant) init (1); dcl SC_NAME (0:4) char (12) int static options (constant) init ("UNDEFINED", "MANDATORY", (3) ("")); dcl SC_VALUE (0:4) fixed bin (8) uns int static options (constant) init (0, 128, (3) (0)); /* real class: indexes in arrays, names array, values array */ dcl RC_UNDEFINED fixed bin int static options (constant) init (0); dcl RC_VIP77XX fixed bin int static options (constant) init (1); dcl RC_VIP78XX fixed bin int static options (constant) init (2); dcl RC_327X fixed bin int static options (constant) init (3); dcl RC_TTY fixed bin int static options (constant) init (4); dcl RC_BATCH_RCI fixed bin int static options (constant) init (5); dcl RC_TMMVU fixed bin int static options (constant) init (6); dcl RC_2780 fixed bin int static options (constant) init (7); dcl RC_UNSPECIFIED fixed bin int static options (constant) init (8); dcl RC_TMMRB fixed bin int static options (constant) init (9); dcl RC_2780_3780_RJE fixed bin int static options (constant) init (10); dcl RC_NAME (0:16) char (16) int static options (constant) init ("UNDEFINED", "VIP77XX", "VIP78XX", "327X", "TTY", "BATCH_RCI", "TMMVU", "2780", "UNSPECIFIED", "TMMRB", "2780_3780_RJE", (6) ("")); dcl RC_VALUE (0:16) fixed bin (8) uns int static options (constant) init (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, (6) (0)); /* device types: indexes in arrays, names array, values array */ dcl DT_UNDEFINED fixed bin int static options (constant) init (0); dcl DT_DISPLAY fixed bin int static options (constant) init (1); dcl DT_KEYBOARD fixed bin int static options (constant) init (2); dcl DT_RO_PRINTER fixed bin int static options (constant) init (3); dcl DT_KEYBOARD_PRINTER fixed bin int static options (constant) init (4); dcl DT_KEYBOARD_DISPLAY fixed bin int static options (constant) init (5); dcl DT_CARD_READER fixed bin int static options (constant) init (6); dcl DT_PAPER_TAPE_READER fixed bin int static options (constant) init (7); dcl DT_BADGE_READER fixed bin int static options (constant) init (8); dcl DT_RFE fixed bin int static options (constant) init (9); dcl DT_CASSETTE fixed bin int static options (constant) init (10); dcl DT_DISKETTE fixed bin int static options (constant) init (11); dcl DT_CARD_PUNCH fixed bin int static options (constant) init (12); dcl DT_PAPER_TAPE_PUNCH fixed bin int static options (constant) init (13); dcl DT_NAME (0:16) char (20) int static options (constant) init ("UNDEFINED", "DISPLAY", "KEYBOARD", "RO_PRINTER", "KEYBOARD_PRINTER", "KEYBOARD_DISPLAY", "CARD_READER", "PAPER_TAPE_READER", "BADGE_READER", "RFE", "CASSETTE", "DISKETTE", "CARD_PUNCH", "PAPER_TAPE_PUNCH", (3) ("")); dcl DT_VALUE (0:16) fixed bin (8) uns int static options (constant) init (0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, (3) (0)); /* device resource attributes: indexes in arrays, names array, values array */ dcl SH_DEDICATED fixed bin int static options (constant) init (1); dcl SH_DEDICATED_OR_SHAREABLE fixed bin int static options (constant) init (2); dcl SH_EXCLUSIVELY_SHAREABLE fixed bin int static options (constant) init (3); dcl SH_NAME (0:4) char (24) int static options (constant) init ("UNDEFINED", "DEDICATED", "DEDICATED_OR_SHAREABLE", "EXCLUSIVELY_SHAREABLE", ""); dcl SH_VALUE (0:4) bit (2) int static options (constant) init ("00"b, "01"b, "10"b, "11"b, "00"b); dcl AU_END_OF_RECORD fixed bin int static options (constant) init (1); dcl AU_END_OF_QUARANTINE_UNIT fixed bin int static options (constant) init (2); dcl AU_END_OF_INTERACTION_UNIT fixed bin int static options (constant) init (3); dcl AU_END_OF_SESSION fixed bin int static options (constant) init (4); dcl AU_REPORT_UNIT fixed bin int static options (constant) init (5); dcl AU_ACKNOWLEDGMENT_UNIT fixed bin int static options (constant) init (6); dcl AU_USER_DEFINED_UNIT fixed bin int static options (constant) init (7); dcl AU_RFU fixed bin int static options (constant) init (8); dcl AU_NAME (0:8) char (16) int static options (constant) init ("UNDEFINED", "RECORD", "QUARANTINE_UNIT", "INTERACTION_UNIT", "SESSION", "RFU_REPORT_UNIT", "RFU_ACK_UNIT", "RFU_USER", "RFU"); dcl AU_VALUE (0:8) bit (8) int static options (constant) init ("00000000"b, "10000000"b, "01000000"b, "00100000"b, "00010000"b, "00001000"b, "00000100"b, "00000010"b, "00000001"b); /* line overflow condition: indexes in arrays, names array, values array */ dcl LO_TRUNCATION fixed bin int static options (constant) init (1); dcl LO_FOLDING fixed bin int static options (constant) init (2); dcl LO_NO_FOLDING fixed bin int static options (constant) init (3); dcl LO_NAME (0:3) char (12) int static options (constant) init ("TRUNCATION", "TRUNCATION", "FOLDING", "NO_FOLDING"); dcl LO_VALUE (0:3) fixed bin (8) uns int static options (constant) init (0, 0, 1, 2); /* page overflow condition: indexes in arrays, names array, values array */ dcl PO_TRUNCATION fixed bin int static options (constant) init (1); dcl PO_CLEAR fixed bin int static options (constant) init (2); dcl PO_SCROLL fixed bin int static options (constant) init (3); dcl PO_NO_PAGING fixed bin int static options (constant) init (4); dcl PO_NAME (0:4) char (12) int static options (constant) init ("TRUNCATION", "TRUNCATION", "CLEAR", "SCROLL", "NO_PAGING"); dcl PO_VALUE (0:4) fixed bin (8) uns int static options (constant) init (0, 0, 1, 2, 3); /* character font: indexes in arrays, names array, values array */ dcl CF_ANY fixed bin int static options (constant) init (1); dcl CF_ITALICS fixed bin int static options (constant) init (2); dcl CF_ELITE fixed bin int static options (constant) init (3); dcl CF_PICA fixed bin int static options (constant) init (4); dcl CF_NAME (0:6) char (9) int static options (constant) init ("UNDEFINED", "ANY", "ITALICS", "ELITE", "PICA", (2) ("")); dcl CF_VALUE (0:6) fixed bin (8) uns int static options (constant) init (0, 1, 2, 3, 4, (2) (0)); /* end_to_end acknowledgment support: indexes in arrays, names array, */ /* values array. */ dcl EAL_IO_TM fixed bin int static options (constant) init (1); dcl EAL_DATA_ACK fixed bin int static options (constant) init (2); dcl EAL_FCN_COMPLETE fixed bin int static options (constant) init (3); dcl EAL_RFU fixed bin int static options (constant) init (4); dcl EAL_NAME (0:4) char (12) int static options (constant) init ("IO_TM", "IO_TM", "DATA_ACK", "FCN_COMPLETE", "RFU"); dcl EAL_VALUE (0:4) fixed bin (16) uns int static options (constant) init (0, 0, 1, 2, 3); /* Secondary Link Protocol */ dcl SLP_ASYNCHRONOUS fixed bin int static options (constant) init (1); dcl SLP_VIP_MULTIPOINT fixed bin int static options (constant) init (2); dcl SLP_TMMVU_MULTIPOINT fixed bin int static options (constant) init (3); dcl SLP_TMMRB_MULTIPOINT fixed bin int static options (constant) init (4); dcl SLP_BSC_MULTIPOINT fixed bin int static options (constant) init (5); dcl SLP_BSC_POINT_TO_POINT fixed bin int static options (constant) init (6); dcl SLP_RCI_POINT_TO_POINT fixed bin int static options (constant) init (7); dcl SLP_HDLC_MULTIPOINT fixed bin int static options (constant) init (8); dcl SLP_HDLC_POINT_TO_POINT fixed bin int static options (constant) init (9); dcl SLP_NAME (0:12) char (20) int static options (constant) init ("UNDEFINED", "ASYNCHRONOUS", "VIP_MULTIPOINT", "TMMVU_MULTIPOINT", "TMMRB_MULTIPOINT", "BSC_MULTIPOINT", "BSC_POINT_TO_POINT", "RCI_POINT_TO_POINT", "HDLC_MULTIPOINT", "HDLC_POINT_TO_POINT", (3) ("")); dcl SLP_VALUE (0:12) fixed bin (8) uns int static options (constant) init (0, 1, 2, 3, 4, 5, 6, 7, 10, 11, (3) (0)); /* Type of Network */ dcl NT_SWITCHED fixed bin int static options (constant) init (1); dcl NT_X21 fixed bin int static options (constant) init (2); dcl NT_X25 fixed bin int static options (constant) init (3); dcl NT_NAME (0:4) char (9) int static options (constant) init ("UNDEFINED", "SWITCHED", "X21", "X25", ""); dcl NT_VALUE (0:4) fixed bin (8) uns int static options (constant) init (0, 1, 2, 3, 0); /* miscellaneous */ dcl TM_OFFER fixed bin int static options (constant) init (1); dcl TM_ACCEPT fixed bin int static options (constant) init (2); dcl TM_REJECT fixed bin int static options (constant) init (3); dcl TM_SWITCH fixed bin int static options (constant) init (4); /* END OF: dsatm_negotiate_info.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 */