COMPILATION LISTING OF SEGMENT display_pvolog Compiled by: Multics PL/I Compiler, Release 32f, of October 9, 1989 Compiled at: Bull HN, Phoenix AZ, System-M Compiled on: 10/10/89 1420.6 mst Tue Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) BULL HN Information Systems Inc., 1989 * 4* * * 5* * Copyright, (C) Honeywell Bull Inc., 1988 * 6* * * 7* * Copyright, (C) Honeywell Information Systems Inc., 1982 * 8* * * 9* * Copyright (c) 1972 by Massachusetts Institute of * 10* * Technology and Honeywell Information Systems, Inc. * 11* * * 12* *********************************************************** */ 13 14 15 /****^ HISTORY COMMENTS: 16* 1) change(88-03-30,GWMay), approve(89-10-03,MCR8135), 17* audit(89-10-04,Beattie), install(89-10-10,MR12.3-1089): 18* Changes display to columnize output to save wasted space. 19* Changed to add the -header option. 20* END HISTORY COMMENTS */ 21 22 23 display_pvolog: proc; 24 25 /* This command displays the data in the specified output log. This data consists 26* of the names and number of times cycled through of the physical volumes on this output volume. 27* A special entry is provided to unlock 28* a output log that has been left locked. */ 29 30 31 myname = "display_pvolog"; 32 go to COMMON; 33 34 dpvl: entry; 35 36 myname = "dpvl"; 37 38 COMMON: 39 /* init control variables */ 40 col_count = 0; 41 header_sw = "1"b; 42 lock = "0"b; 43 force_unlock = "0"b; 44 type = 0; 45 pvname = ""; 46 pvlp = null; 47 goto common; 48 49 unlock_pvolog: entry; 50 51 lock = "0"b; 52 pvlp = null; 53 pvname = ""; 54 force_unlock = "1"b; 55 56 common: 57 system_dir = ">daemon_dir_dir>volume_backup"; 58 call cu_$arg_ptr (1, argp, argl, code); 59 if code ^= 0 then do; 60 argerr: call com_err_ (error_table_$noarg, myname, " 61 Usage:^10t^a pvolog {-control_args} 62 ^10tcontrol_args:^25t^a^-^a^/^25t^a^-^a", 63 myname, "-working_dir, -wd", "-header, -he", 64 "-no_header, -nhe", "-pvname name, -pv name"); 65 return; 66 end; 67 if substr (arg, 1, 1) = "-" then goto argerr; 68 /* convert name to pathname */ 69 call suffixed_name_$make (arg, "pvolog", pvolog_name, code); 70 if code ^= 0 then do; 71 call com_err_ (code, myname, "Unable to construct pvolog name"); 72 goto finish; 73 end; 74 75 call cu_$arg_count (narg); 76 ac = 2; 77 do while (ac <= narg); 78 call cu_$arg_ptr (ac, argp, argl, code); 79 if code ^= 0 then do; 80 call com_err_ (code, myname, "error on arg after ^a", arg); 81 goto finish; 82 end; 83 if arg = "-working_dir" | arg = "-wd" then system_dir = get_wdir_ (); 84 else if arg = "-nhe" | arg = "-no_header" then header_sw = "0"b; 85 else if arg = "-he" | arg = "-header" then header_sw = "1"b; 86 else if arg = "-pv" | arg = "-pvname" then do; 87 ac = ac + 1; 88 call cu_$arg_ptr (ac, argp, argl, code); 89 if code ^= 0 then do; 90 call com_err_ (code, myname, "Unable to pickup pvname"); 91 goto finish; 92 end; 93 pvname = arg; 94 type = -1; 95 end; 96 else do; 97 call com_err_ (error_table_$badopt, myname, "^a", arg); 98 goto finish; 99 end; 100 ac = ac + 1; 101 end; 102 103 on cleanup go to finish; 104 /* pick up name of volume log */ 105 /* get pointer to volume log */ 106 call hcs_$initiate (rtrim(system_dir) || ">pvolog", pvolog_name, "", 0, 0, pvlp, code); 107 if pvlp = null then do; 108 call com_err_ (code, myname, "Unable to get pointer to pvolog ^a>pvolog>^a", system_dir, pvolog_name); 109 goto finish; 110 end; 111 112 if force_unlock then do; 113 lock = "1"b; /* fake it */ 114 goto finish; 115 end; 116 /* pick up control args */ 117 /* print header if requested */ 118 /* lock log before printing */ 119 call set_lock_$lock (pvolog.lock, -1, code); 120 if code ^= 0 then do; 121 if code = error_table_$invalid_lock_reset then code = 0; 122 else do; 123 call com_err_ (code, myname, "Unable to lock pvolog"); 124 goto finish; 125 end; 126 end; 127 lock = "1"b; 128 129 if header_sw then do; 130 call ioa_ (" 131 ^-Output Volume Log for Physical Volume ^a 132 ^-^a volume dump started at ^a 133 ^-in_use: ^d^-max_used: ^d 134 ^/^[^;count pvname^]^[^23tcount pvname^]^[^45tcount pvname^]", 135 before (pvolog_name, "."), 136 ascii_type (pvolog.dump_type), 137 time_string_ (pvolog.mount_time), 138 pvolog.in_use, pvolog.next, 139 pvolog.next < 1, 140 pvolog.next > 1, 141 pvolog.next > 2); 142 end; 143 /* Examine each entry in the log and print as requested */ 144 do i = pvolog.next to 1 by -1; 145 pvlep = addr (pvolog.array (i)); 146 if (pvname ^= "" & pvname = pvle.pvname) 147 | pvname = "" then 148 if pvle.invocation_count ^= 0 then do; 149 if col_count = 3 | length (rtrim(pvle.pvname)) > 15 then col_count = 0; 150 col_count = col_count + 1; 151 152 call ioa_$nnl ("^3d^3x^a^[^/^;^23t^]^[^/^]", 153 pvle.invocation_count, 154 pvle.pvname, 155 col_count = 3, 156 i = 1); 157 end; 158 end; 159 160 finish: /* cleanup - unlock and terminate */ 161 call finish_; 162 return; 163 164 165 time_string_: proc (time) returns (char (20)); 166 167 /* This proc returns a time string suitable for printing */ 168 169 dcl time fixed bin (71); 170 dcl time_string char (20); 171 call date_time_ (time, time_string); 172 return (substr (time_string, 1, 16)); 173 end time_string_; 174 175 finish_: proc; 176 if lock & pvlp ^= null then call set_lock_$unlock (pvolog.lock, ignore); 177 if pvlp ^= null then call hcs_$terminate_noname (pvlp, ignore); 178 179 end finish_; 180 181 dcl pvolog_name char (32); 182 dcl narg fixed bin; 183 dcl system_dir char (168); 184 dcl arg char (argl) based (argp); 185 dcl argl fixed bin; 186 dcl argp ptr; 187 dcl col_count fixed bin; 188 dcl i fixed bin; 189 dcl ac fixed bin; 190 dcl pvname char (32); 191 dcl lock bit (1); 192 dcl force_unlock bit (1); 193 dcl code fixed bin (35); 194 dcl ignore fixed bin (35); 195 dcl type fixed bin; 196 dcl header_sw bit (1); 197 198 dcl ascii_type (3) char (32) var int static init ("incremental", "consolidated", "complete"); 199 dcl myname char (32) var; 200 201 dcl suffixed_name_$make entry (char (*), char (*), char (*), fixed bin (35)); 202 dcl get_wdir_ entry returns (char (168)); 203 dcl cu_$arg_ptr entry (fixed bin, ptr, fixed bin, fixed bin (35)); 204 dcl com_err_ entry options (variable); 205 dcl hcs_$initiate entry (char (*), char (*), char (*), fixed bin, fixed bin, ptr, fixed bin (35)); 206 dcl hcs_$terminate_noname entry (ptr, fixed bin (35)); 207 dcl ioa_ entry options (variable); 208 dcl ioa_$nnl entry() options(variable); 209 dcl date_time_ entry (fixed bin (71), char (*)); 210 dcl set_lock_$lock entry (bit (36) aligned, fixed bin, fixed bin (35)); 211 dcl set_lock_$unlock entry (bit (36) aligned, fixed bin (35)); 212 dcl cu_$arg_count entry (fixed bin); 213 214 dcl error_table_$badopt ext fixed bin (35); 215 dcl error_table_$invalid_lock_reset ext fixed bin (35); 216 dcl error_table_$noarg fixed bin(35) ext static; 217 218 dcl (before, length, rtrim, substr) builtin; 219 dcl null builtin; 220 dcl addr builtin; 221 dcl cleanup condition; 222 1 1 /* BEGIN INCLUDE FILE ... pvolog.incl.pl1 9/76 */ 1 2 1 3 dcl pvlp ptr; 1 4 dcl pvlep ptr; 1 5 1 6 dcl pvolog_version_1 fixed bin int static init (1) options (constant); 1 7 1 8 dcl 1 pvolog aligned based (pvlp), 1 9 2 lock bit (36), 1 10 2 version fixed bin, 1 11 2 dump_type fixed bin, 1 12 2 mount_time fixed bin (71), 1 13 2 volid bit (36), 1 14 2 next fixed bin, 1 15 2 in_use fixed bin, 1 16 2 array (1:1 refer (pvolog.next)) like pvle aligned; 1 17 1 18 dcl 1 pvle based (pvlep) aligned, 1 19 2 pvname char (32), 1 20 2 invocation_count fixed bin; 1 21 1 22 /* END INCLUDE FILE ... pvolog.incl.pl1 */ 223 2 1 /* BEGIN INCLUDE FILE ... backup_pvol_info.incl.pl1 */ 2 2 2 3 dcl bpvip ptr; 2 4 2 5 dcl 1 backup_pvol_info based (bpvip) aligned, 2 6 2 label like label aligned, 2 7 2 n_vtoce fixed bin, 2 8 2 n_free_vtoce fixed bin, 2 9 2 n_rec fixed bin, 2 10 2 baseadd fixed bin, 2 11 2 n_free_rec fixed bin; 2 12 2 13 /* END INCLUDE FILE ... backup_pvol_info.incl.pl1 */ 224 3 1 /* BEGIN INCLUDE FILE ... fs_vol_label.incl.pl1 .. last modified January 1982 for new volume map format */ 3 2 3 3 /****^ HISTORY COMMENTS: 3 4* 1) change(86-04-10,Fawcett), approve(86-04-10,MCR7383), 3 5* audit(86-05-12,Coppola), install(86-07-18,MR12.0-1098): 3 6* Add the subvolume info. 3 7* 2) change(88-05-27,GWMay), approve(88-05-27,MCR7883), 3 8* audit(88-06-14,Beattie), install(88-07-19,MR12.2-1061): 3 9* Added inconsistent_dbm bit used to determine consistency of volume 3 10* dumper bit maps. 3 11* END HISTORY COMMENTS */ 3 12 3 13 /* This is the label at fixed location of each physical volume. Length 1 page */ 3 14 /* Note: fsout_vol clears pad fields before writing the label */ 3 15 3 16 dcl labelp ptr; 3 17 3 18 dcl 1 label based (labelp) aligned, 3 19 3 20 /* First comes data not used by Multics.. for compatibility with GCOS */ 3 21 3 22 2 gcos (5*64) fixed bin, 3 23 3 24 /* Now we have the Multics label */ 3 25 3 26 2 Multics char (32) init ("Multics Storage System Volume"), /* Identifier */ 3 27 2 version fixed bin, /* Version 1 */ 3 28 2 mfg_serial char (32), /* Manufacturer's serial number */ 3 29 2 pv_name char (32), /* Physical volume name. */ 3 30 2 lv_name char (32), /* Name of logical volume for pack */ 3 31 2 pvid bit (36), /* Unique ID of this pack */ 3 32 2 lvid bit (36), /* unique ID of its logical vol */ 3 33 2 root_pvid bit (36), /* unique ID of the pack containing the root. everybody must agree. */ 3 34 2 time_registered fixed bin (71), /* time imported to system */ 3 35 2 n_pv_in_lv fixed bin, /* # phys volumes in logical */ 3 36 2 vol_size fixed bin, /* total size of volume, in records */ 3 37 2 vtoc_size fixed bin, /* number of recs in fixed area + vtoc */ 3 38 2 not_used bit (1) unal, /* used to be multiple_class */ 3 39 2 private bit (1) unal, /* TRUE if was registered as private */ 3 40 2 inconsistent_dbm bit (1) unal, /* TRUE if ESD-less crash */ 3 41 2 flagpad bit (33) unal, 3 42 2 max_access_class bit (72), /* Maximum access class for stuff on volume */ 3 43 2 min_access_class bit (72), /* Minimum access class for stuff on volume */ 3 44 2 password bit (72), /* not yet used */ 3 45 2 number_of_sv fixed bin, /* if = 0 not a subvolume else the number of svs */ 3 46 2 this_sv fixed bin, /* what subvolume number it is */ 3 47 2 sub_vol_name char (1), /* what subvolume name (a b c d) it is */ 3 48 2 pad1 (13) fixed bin, 3 49 2 time_mounted fixed bin (71), /* time mounted */ 3 50 2 time_map_updated fixed bin (71), /* time vmap known good */ 3 51 3 52 /* The next two words overlay time_unmounted on pre-MR10 systems. This 3 53* forces a salvage if an MR10 pack is mounted on an earlier system. 3 54* */ 3 55 2 volmap_version fixed bin, /* version of volume map (currently 1) */ 3 56 2 pad6 fixed bin, 3 57 3 58 2 time_salvaged fixed bin (71), /* time salvaged */ 3 59 2 time_of_boot fixed bin (71), /* time of last bootload */ 3 60 2 time_unmounted fixed bin (71), /* time unmounted cleanly */ 3 61 2 last_pvtx fixed bin, /* pvtx in that PDMAP */ 3 62 2 pad1a (2) fixed bin, 3 63 2 err_hist_size fixed bin, /* size of pack error history */ 3 64 2 time_last_dmp (3) fixed bin (71), /* time last completed dump pass started */ 3 65 2 time_last_reloaded fixed bin (71), /* what it says */ 3 66 2 pad2 (40) fixed bin, 3 67 2 root, 3 68 3 here bit (1), /* TRUE if the root is on this pack */ 3 69 3 root_vtocx fixed bin (35), /* VTOC index of root, if it is here */ 3 70 3 shutdown_state fixed bin, /* Status of hierarchy */ 3 71 3 pad7 bit (1) aligned, 3 72 3 disk_table_vtocx fixed bin, /* VTOC index of disk table on RPV */ 3 73 3 disk_table_uid bit (36) aligned, /* UID of disk table */ 3 74 3 esd_state fixed bin, /* State of esd */ 3 75 2 volmap_record fixed bin, /* Begin record of volume map */ 3 76 2 size_of_volmap fixed bin, /* Number of records in volume map */ 3 77 2 vtoc_map_record fixed bin, /* Begin record of VTOC map */ 3 78 2 size_of_vtoc_map fixed bin, /* Number of records in VTOC map */ 3 79 2 volmap_unit_size fixed bin, /* Number of words per volume map section */ 3 80 2 vtoc_origin_record fixed bin, /* Begin record of VTOC */ 3 81 2 dumper_bit_map_record fixed bin, /* Begin record of dumper bit-map */ 3 82 2 vol_trouble_count fixed bin, /* Count of inconsistencies found since salvage */ 3 83 2 pad3 (52) fixed bin, 3 84 2 nparts fixed bin, /* Number of special partitions on pack */ 3 85 2 parts (47), 3 86 3 part char (4), /* Name of partition */ 3 87 3 frec fixed bin, /* First record */ 3 88 3 nrec fixed bin, /* Number of records */ 3 89 3 pad5 fixed bin, 3 90 2 pad4 (5*64) fixed bin; 3 91 3 92 dcl Multics_ID_String char (32) init ("Multics Storage System Volume") static; 3 93 3 94 /* END INCLUDE FILE fs_vol_label.incl.pl1 */ 225 4 1 /* BEGIN INCLUDE FILE ... backup_volume_header ... Feb 1976 */ 4 2 4 3 dcl hdp ptr; /* ptr to header */ 4 4 4 5 dcl 1 backup_volume_header based (hdp) aligned, 4 6 2 pattern1 bit (36), /* unique word 1 */ 4 7 2 rec1_type fixed bin, /* record 1 type */ 4 8 2 rec1_len fixed bin, /* length in chars */ 4 9 2 pattern2 bit (36), /* unique word 2 */ 4 10 2 rec2_type fixed bin, /* record 2 type */ 4 11 2 rec2_len fixed bin, /* length in chars */ 4 12 2 pattern3 bit (36), /* unique word 3 */ 4 13 2 time_dumped bit (36); /* dump time of this record */ 4 14 4 15 dcl vtoce_type fixed bin static init (1) options (constant); /* type code for vtoce */ 4 16 dcl dir_type fixed bin static init (2) options (constant); /* type code for directory */ 4 17 dcl seg_type fixed bin static init (3) options (constant); /* type code for segment */ 4 18 dcl null_type fixed bin static init (4) options (constant); /* type code for null record */ 4 19 dcl volume_log_type fixed bin static init (5) options (constant); /* type code for volume log */ 4 20 dcl prev_output_log_type fixed bin static init (6) options (constant); /* type code for prev output log */ 4 21 dcl contents_type fixed bin static init (7) options (constant); /* type code for contents segment of previous volume */ 4 22 dcl info_type fixed bin static init (8) options (constant); /* type code for info structure */ 4 23 4 24 dcl pattern1 bit (36) int static init ("110111000011001100011101101010100101"b) options (constant); 4 25 dcl pattern2 bit (36) int static init ("101001010101101110001100110000111011"b) options (constant); 4 26 dcl pattern3 bit (36) int static init ("001000111100110011100010010101011010"b) options (constant); 4 27 4 28 /* END INCLUDE FILE ... backup_volume_header */ 226 5 1 /* BEGIN INCLUDE FILE ... backup_static_variables.incl.pl1 ... March 1976 */ 5 2 5 3 5 4 dcl incr fixed bin init (1) internal static options (constant); /* incremental dump mode */ 5 5 dcl cons fixed bin init (2) internal static options (constant); /* consolidated dump mode */ 5 6 dcl comp fixed bin init (3) internal static options (constant); /* complete dump mode */ 5 7 dcl backup_version_1 fixed bin init (1) static internal options (constant); /* backup_version_1 of input/output structures */ 5 8 5 9 5 10 5 11 /* END INCLUDE FILE ... backup_static_variables.incl.pl1 */ 227 228 229 end display_pvolog; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 10/10/89 1359.2 display_pvolog.pl1 >special_ldd>install>MR12.3-1089>display_pvolog.pl1 223 1 03/26/81 1320.5 pvolog.incl.pl1 >ldd>include>pvolog.incl.pl1 224 2 06/07/77 1233.6 backup_pvol_info.incl.pl1 >ldd>include>backup_pvol_info.incl.pl1 225 3 07/21/88 2036.0 fs_vol_label.incl.pl1 >ldd>include>fs_vol_label.incl.pl1 226 4 09/05/80 1136.5 backup_volume_header.incl.pl1 >ldd>include>backup_volume_header.incl.pl1 227 5 09/05/80 1136.5 backup_static_variables.incl.pl1 >ldd>include>backup_static_variables.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. ac 000170 automatic fixed bin(17,0) dcl 189 set ref 76* 77 78* 87* 87 88* 100* 100 addr builtin function dcl 220 ref 145 arg based char packed unaligned dcl 184 set ref 67 69* 80* 83 83 84 84 85 85 86 86 93 97* argl 000163 automatic fixed bin(17,0) dcl 185 set ref 58* 67 69 69 78* 80 80 83 83 84 84 85 85 86 86 88* 93 97 97 argp 000164 automatic pointer dcl 186 set ref 58* 67 69 78* 80 83 83 84 84 85 85 86 86 88* 93 97 array 11 based structure array level 2 dcl 1-8 set ref 145 ascii_type 000010 internal static varying char(32) initial array dcl 198 set ref 130* before builtin function dcl 218 ref 130 130 cleanup 000220 stack reference condition dcl 221 ref 103 code 000203 automatic fixed bin(35,0) dcl 193 set ref 58* 59 69* 70 71* 78* 79 80* 88* 89 90* 106* 108* 119* 120 121 121* 123* col_count 000166 automatic fixed bin(17,0) dcl 187 set ref 38* 149 149* 150* 150 152 com_err_ 000052 constant entry external dcl 204 ref 60 71 80 90 97 108 123 cu_$arg_count 000072 constant entry external dcl 212 ref 75 cu_$arg_ptr 000050 constant entry external dcl 203 ref 58 78 88 date_time_ 000064 constant entry external dcl 209 ref 171 dump_type 2 based fixed bin(17,0) level 2 dcl 1-8 ref 130 error_table_$badopt 000074 external static fixed bin(35,0) dcl 214 set ref 97* error_table_$invalid_lock_reset 000076 external static fixed bin(35,0) dcl 215 ref 121 error_table_$noarg 000100 external static fixed bin(35,0) dcl 216 set ref 60* force_unlock 000202 automatic bit(1) packed unaligned dcl 192 set ref 43* 54* 112 get_wdir_ 000046 constant entry external dcl 202 ref 83 hcs_$initiate 000054 constant entry external dcl 205 ref 106 hcs_$terminate_noname 000056 constant entry external dcl 206 ref 177 header_sw 000206 automatic bit(1) packed unaligned dcl 196 set ref 41* 84* 85* 129 i 000167 automatic fixed bin(17,0) dcl 188 set ref 144* 145 152* ignore 000204 automatic fixed bin(35,0) dcl 194 set ref 176* 177* in_use 10 based fixed bin(17,0) level 2 dcl 1-8 set ref 130* invocation_count 10 based fixed bin(17,0) level 2 dcl 1-18 set ref 146 152* ioa_ 000060 constant entry external dcl 207 ref 130 ioa_$nnl 000062 constant entry external dcl 208 ref 152 label based structure level 1 dcl 3-18 length builtin function dcl 218 ref 149 lock 000201 automatic bit(1) packed unaligned dcl 191 in procedure "display_pvolog" set ref 42* 51* 113* 127* 176 lock based bit(36) level 2 in structure "pvolog" dcl 1-8 in procedure "display_pvolog" set ref 119* 176* mount_time 4 based fixed bin(71,0) level 2 dcl 1-8 set ref 130* 130* myname 000207 automatic varying char(32) dcl 199 set ref 31* 36* 60* 60* 71* 80* 90* 97* 108* 123* narg 000110 automatic fixed bin(17,0) dcl 182 set ref 75* 77 next 7 based fixed bin(17,0) level 2 dcl 1-8 set ref 130* 130 130 130 144 null builtin function dcl 219 ref 46 52 107 176 177 pvle based structure level 1 dcl 1-18 pvlep 000230 automatic pointer dcl 1-4 set ref 145* 146 146 149 152 152 pvlp 000226 automatic pointer dcl 1-3 set ref 46* 52* 106* 107 119 130 130 130 130 130 130 130 130 144 145 176 176 177 177* pvname based char(32) level 2 in structure "pvle" dcl 1-18 in procedure "display_pvolog" set ref 146 149 152* pvname 000171 automatic char(32) packed unaligned dcl 190 in procedure "display_pvolog" set ref 45* 53* 93* 146 146 146 pvolog based structure level 1 dcl 1-8 pvolog_name 000100 automatic char(32) packed unaligned dcl 181 set ref 69* 106* 108* 130 130 rtrim builtin function dcl 218 ref 106 149 set_lock_$lock 000066 constant entry external dcl 210 ref 119 set_lock_$unlock 000070 constant entry external dcl 211 ref 176 substr builtin function dcl 218 ref 67 172 suffixed_name_$make 000044 constant entry external dcl 201 ref 69 system_dir 000111 automatic char(168) packed unaligned dcl 183 set ref 56* 83* 106 108* time parameter fixed bin(71,0) dcl 169 set ref 165 171* time_string 000100 automatic char(20) packed unaligned dcl 170 set ref 171* 172 type 000205 automatic fixed bin(17,0) dcl 195 set ref 44* 94* NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. Multics_ID_String internal static char(32) initial packed unaligned dcl 3-92 backup_pvol_info based structure level 1 dcl 2-5 backup_version_1 internal static fixed bin(17,0) initial dcl 5-7 backup_volume_header based structure level 1 dcl 4-5 bpvip automatic pointer dcl 2-3 comp internal static fixed bin(17,0) initial dcl 5-6 cons internal static fixed bin(17,0) initial dcl 5-5 contents_type internal static fixed bin(17,0) initial dcl 4-21 dir_type internal static fixed bin(17,0) initial dcl 4-16 hdp automatic pointer dcl 4-3 incr internal static fixed bin(17,0) initial dcl 5-4 info_type internal static fixed bin(17,0) initial dcl 4-22 labelp automatic pointer dcl 3-16 null_type internal static fixed bin(17,0) initial dcl 4-18 pattern1 internal static bit(36) initial packed unaligned dcl 4-24 pattern2 internal static bit(36) initial packed unaligned dcl 4-25 pattern3 internal static bit(36) initial packed unaligned dcl 4-26 prev_output_log_type internal static fixed bin(17,0) initial dcl 4-20 pvolog_version_1 internal static fixed bin(17,0) initial dcl 1-6 seg_type internal static fixed bin(17,0) initial dcl 4-17 volume_log_type internal static fixed bin(17,0) initial dcl 4-19 vtoce_type internal static fixed bin(17,0) initial dcl 4-15 NAMES DECLARED BY EXPLICIT CONTEXT. COMMON 000316 constant label dcl 38 ref 32 argerr 000374 constant label dcl 60 ref 67 common 000350 constant label dcl 56 ref 47 display_pvolog 000271 constant entry external dcl 23 dpvl 000305 constant entry external dcl 34 finish 001524 constant label dcl 160 ref 72 81 91 98 103 109 114 124 finish_ 001557 constant entry internal dcl 175 ref 160 time_string_ 001527 constant entry internal dcl 165 ref 130 130 unlock_pvolog 000333 constant entry external dcl 49 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 2040 2142 1616 2050 Length 2456 1616 102 300 221 34 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME display_pvolog 332 external procedure is an external procedure. on unit on line 103 64 on unit time_string_ 80 internal procedure is called during a stack extension. finish_ internal procedure shares stack frame of external procedure display_pvolog. STORAGE FOR INTERNAL STATIC VARIABLES. LOC IDENTIFIER BLOCK NAME 000010 ascii_type display_pvolog STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME display_pvolog 000100 pvolog_name display_pvolog 000110 narg display_pvolog 000111 system_dir display_pvolog 000163 argl display_pvolog 000164 argp display_pvolog 000166 col_count display_pvolog 000167 i display_pvolog 000170 ac display_pvolog 000171 pvname display_pvolog 000201 lock display_pvolog 000202 force_unlock display_pvolog 000203 code display_pvolog 000204 ignore display_pvolog 000205 type display_pvolog 000206 header_sw display_pvolog 000207 myname display_pvolog 000226 pvlp display_pvolog 000230 pvlep display_pvolog time_string_ 000100 time_string time_string_ THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. r_l_a r_g_a r_e_as alloc_char_temp call_ext_out_desc call_ext_out call_int_this return_mac tra_ext_1 enable_op shorten_stack ext_entry int_entry THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. com_err_ cu_$arg_count cu_$arg_ptr date_time_ get_wdir_ hcs_$initiate hcs_$terminate_noname ioa_ ioa_$nnl set_lock_$lock set_lock_$unlock suffixed_name_$make THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$badopt error_table_$invalid_lock_reset error_table_$noarg LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 23 000270 31 000276 32 000303 34 000304 36 000312 38 000316 41 000317 42 000321 43 000322 44 000323 45 000324 46 000327 47 000331 49 000332 51 000340 52 000341 53 000343 54 000346 56 000350 58 000353 59 000372 60 000374 65 000465 67 000466 69 000473 70 000525 71 000527 72 000553 75 000554 76 000563 77 000565 78 000571 79 000606 80 000610 81 000643 83 000644 84 000666 85 000700 86 000713 87 000723 88 000724 89 000741 90 000743 91 000767 93 000770 94 000775 95 000777 97 001000 98 001032 100 001033 101 001034 103 001035 106 001054 107 001144 108 001151 109 001205 112 001206 113 001210 114 001212 119 001213 120 001230 121 001232 123 001237 124 001262 127 001263 129 001265 130 001267 142 001406 144 001407 145 001415 146 001420 149 001436 150 001455 152 001456 158 001521 160 001524 162 001525 165 001526 171 001534 172 001551 175 001557 176 001560 177 001577 179 001614 ----------------------------------------------------------- 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