COMPILATION LISTING OF SEGMENT !BBBJZjXjgcbBXM Compiled by: Multics PL/I Compiler, Release 32f, of October 9, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 11/11/89 1006.6 mst Sat Options: table map 1 /* *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 6* * * 7* *********************************************************** */ 8 /* format: style1 */ 9 pvt: proc (); 10 11 /* This creates the PVT data base. No initialization is done here, 12* as it is done during system initialization. 13* 14* Written February 1982 by J. Bongiovanni */ 15 16 dcl code fixed bin (35); 17 dcl 1 cdsa like cds_args aligned; 18 dcl 1 pvt_auto aligned like pvt automatic; 19 20 dcl create_data_segment_ entry (ptr, fixed bin (35)); 21 dcl com_err_ entry options (variable); 22 23 24 dcl MYNAME char (3) int static options (constant) init ("pvt"); 25 dcl EXCLUDE_ARRAY (1) char (32) int static options (constant) init ("pad*"); 26 27 dcl addr builtin; 28 dcl dimension builtin; 29 dcl size builtin; 30 dcl unspec builtin; 31 32 33 34 pvtp = addr (pvt_auto); 35 unspec (pvt) = ""b; 36 37 unspec (cdsa) = ""b; 38 cdsa.have_text = "1"b; 39 cdsa.p (1) = pvtp; 40 cdsa.len (1) = size (pvt); 41 cdsa.struct_name (1) = "pvt"; 42 43 44 cdsa.seg_name = MYNAME; 45 cdsa.num_exclude_names = dimension (EXCLUDE_ARRAY, 1); 46 cdsa.exclude_array_ptr = addr (EXCLUDE_ARRAY); 47 48 call create_data_segment_ (addr (cdsa), code); 49 50 if code ^= 0 then 51 call com_err_ (code, MYNAME); 52 53 return; 54 55 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 */ 56 57 2 1 /* BEGIN INCLUDE FILE ... pvt.incl.pl1 ... last modified January 1982 */ 2 2 2 3 2 4 /* The physical volume table (PVT) is a wired-down table. 2 5* It has one entry for each spindle present, be it for 2 6* Storage System or "I/O" use. 2 7**/ 2 8 2 9 dcl pvt$ ext, 2 10 pvtp ptr; 2 11 2 12 2 13 dcl 1 pvt based (pvtp) aligned, 2 14 2 15 2 n_entries fixed bin (17), /* number of PVT entries */ 2 16 2 max_n_entries fixed bin (17), /* max number of PVT entries */ 2 17 2 n_in_use fixed bin (17), /* number of PVT entries in use */ 2 18 2 rwun_pvtx fixed bin, /* rewind_unloading pvtx */ 2 19 2 shutdown_state fixed bin, /* state of previous shutdown */ 2 20 2 esd_state fixed bin, /* state of ESD, >0 iff in ESD */ 2 21 2 prev_shutdown_state fixed bin, /* shutdown state of previous bootload */ 2 22 2 prev_esd_state fixed bin, /* ESD state of previous bootload */ 2 23 2 24 2 time_of_bootload fixed bin (71), /* Time of bootload */ 2 25 2 root_lvid bit (36) aligned, /* Logical volume ID of Root Logical Volume (RLV) */ 2 26 2 root_pvid bit (36) aligned, /* Physical volume ID of Root Physical Volume (RPV) */ 2 27 2 root_pvtx fixed bin, /* Index to PVTE for Root Physical Volume (RPV) */ 2 28 2 root_vtocx fixed bin, /* VTOCE index for root (>) */ 2 29 2 disk_table_vtocx fixed bin, /* VTOCE index for disk table on RPV */ 2 30 2 disk_table_uid bit (36) aligned, /* File System UID for disk_table */ 2 31 2 32 2 rpvs_requested bit (1) aligned, /* RPVS keyword given on BOOT */ 2 33 2 rpv_needs_salv bit (1) aligned, /* RPV required (not requested) salvage */ 2 34 2 rlv_needs_salv bit (1) aligned, /* RLV required (not requested) salvage */ 2 35 2 volmap_lock_wait_constant bit (36) aligned,/* For constructing wait event: OR pvte_rel into lower */ 2 36 2 volmap_idle_wait_constant bit (36) aligned,/* For constructing wait event: OR pvte_rel into lower */ 2 37 2 vtoc_map_lock_wait_constant bit (36) aligned, /* For constructing wait event: OR pvte_rel into lower */ 2 38 2 n_volmap_locks_held fixed bin (17), /* Current number of volmap locks held */ 2 39 2 n_vtoc_map_locks_held fixed bin (17), /* Current number of VTOC Map locks held */ 2 40 2 41 2 last_volmap_time fixed bin (71), /* Time a volmap was last locked/unlocked */ 2 42 2 last_vtoc_map_time fixed bin (71), /* Time a VTOC Map was last locked/unlocked */ 2 43 2 total_volmap_lock_time fixed bin (71), /* Total time volmap's were locked (integral) */ 2 44 2 total_vtoc_map_lock_time fixed bin (71), /* Total time VTOC Maps were locked (integral) */ 2 45 2 46 2 n_volmap_locks fixed bin (35), /* Number times a volmap was locked */ 2 47 2 n_vtoc_map_locks fixed bin (35), /* Number times a vtoc_map was locked */ 2 48 2 volmap_lock_nowait_calls fixed bin (35), /* Number calls to lock volmap, no wait */ 2 49 2 volmap_lock_nowait_fails fixed bin (35), /* Number times lock failed */ 2 50 2 volmap_lock_wait_calls fixed bin (35), /* Number calls to lock volmap, wait */ 2 51 2 volmap_lock_wait_fails fixed bin (35), /* Number times lock failed */ 2 52 2 pad (2) bit (36) aligned, 2 53 2 54 2 array fixed bin (71); /* Array of PVTE's -- must be double-word aligned */ 2 55 2 56 2 57 2 58 /* END INCLUDE FILE ...pvt.incl.pl1 */ 58 59 60 end pvt; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/11/89 0859.9 !BBBJZjXjgcbBXM.pl1 >spec>install>1115>pvt.cds 56 1 04/01/76 2209.5 cds_args.incl.pl1 >ldd>include>cds_args.incl.pl1 58 2 05/27/82 1525.8 pvt.incl.pl1 >ldd>include>pvt.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 000000 constant char(32) initial array packed unaligned dcl 25 set ref 45 46 MYNAME 000012 constant char(3) initial packed unaligned dcl 24 set ref 44 50* addr builtin function dcl 27 ref 34 46 48 48 cds_args based structure level 1 dcl 1-3 cdsa 000102 automatic structure level 1 dcl 17 set ref 37* 48 48 code 000100 automatic fixed bin(35,0) dcl 16 set ref 48* 50 50* com_err_ 000014 constant entry external dcl 21 ref 50 create_data_segment_ 000012 constant entry external dcl 20 ref 48 dimension builtin function dcl 28 ref 45 exclude_array_ptr 42 000102 automatic pointer level 2 dcl 17 set ref 46* have_text 44(02) 000102 automatic bit(1) level 3 packed packed unaligned dcl 17 set ref 38* len 2 000102 automatic fixed bin(18,0) array level 3 dcl 17 set ref 40* num_exclude_names 40 000102 automatic fixed bin(17,0) level 2 dcl 17 set ref 45* p 000102 automatic pointer array level 3 dcl 17 set ref 39* pvt based structure level 1 dcl 2-13 set ref 35* 40 pvt_auto 000150 automatic structure level 1 dcl 18 set ref 34 pvtp 000222 automatic pointer dcl 2-9 set ref 34* 35 39 40 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 2-13 sections 000102 automatic structure array level 2 dcl 17 seg_name 30 000102 automatic char(32) level 2 dcl 17 set ref 44* size builtin function dcl 29 ref 40 struct_name 3 000102 automatic char(32) array level 3 dcl 17 set ref 41* switches 44 000102 automatic structure level 2 dcl 17 unspec builtin function dcl 30 set ref 35* 37* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. exclude_names based char(32) array packed unaligned dcl 1-18 pvt$ 000016 external static fixed bin(17,0) dcl 2-9 NAME DECLARED BY EXPLICIT CONTEXT. pvt 000014 constant entry external dcl 9 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 156 176 102 166 Length 2330 102 20 2115 53 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME pvt 166 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME pvt 000100 code pvt 000102 cdsa pvt 000150 pvt_auto pvt 000222 pvtp pvt THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out_desc call_ext_out return_mac 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 9 000013 34 000021 35 000023 37 000026 38 000031 39 000033 40 000034 41 000036 44 000041 45 000044 46 000046 48 000050 50 000062 53 000101 Object Segment >spec>install>1115>pvt Created on 11/11/89 1006.7 mst Sat by Hirneisen.SysMaint.a using create_data_segment_, Version II of Thursday, November 20, 1986 Object Text Defs Link Symb Static Start 0 0 52 476 506 506 Length 722 52 424 10 200 0 36 Definitions: segname: pvt text|50 array text|17 disk_table_uid text|16 disk_table_vtocx text|5 esd_state text|30 last_volmap_time text|32 last_vtoc_map_time text|1 max_n_entries text|0 n_entries text|2 n_in_use text|40 n_volmap_locks text|26 n_volmap_locks_held text|41 n_vtoc_map_locks text|27 n_vtoc_map_locks_held text|7 prev_esd_state text|6 prev_shutdown_state text|22 rlv_needs_salv text|12 root_lvid text|13 root_pvid text|14 root_pvtx text|15 root_vtocx text|21 rpv_needs_salv text|20 rpvs_requested text|3 rwun_pvtx text|4 shutdown_state symb|0 symbol_table text|10 time_of_bootload text|34 total_volmap_lock_time text|36 total_vtoc_map_lock_time text|24 volmap_idle_wait_constant text|42 volmap_lock_nowait_calls text|43 volmap_lock_nowait_fails text|44 volmap_lock_wait_calls text|23 volmap_lock_wait_constant text|45 volmap_lock_wait_fails text|25 vtoc_map_lock_wait_constant 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