COMPILATION LISTING OF SEGMENT find_partition 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 1004.2 mst Sat Options: optimize map 1 /****^ *********************************************************** 2* * * 3* * Copyright, (C) Honeywell Bull Inc., 1987 * 4* * * 5* * Copyright, (C) Honeywell Information Systems Inc., 1985 * 6* * * 7* *********************************************************** */ 8 9 10 /****^ HISTORY COMMENTS: 11* 1) change(86-01-17,Fawcett), approve(86-04-11,MCR7383), 12* audit(86-05-13,Coppola), install(86-07-17,MR12.0-1097): 13* Changed for part card change, and call disk_name_pvtx, subvolume 14* support. 15* END HISTORY COMMENTS */ 16 17 18 find_partition: proc (a_part_name, a_pvtx, a_pvid, a_first_record, a_n_records, a_code); 19 20 /* Find the pvtx, etc. of a partition given its name, and, optionally, a disk 21*drive. Taken from partition_io by Keith Loepere, January 1985. */ 22 23 /* format: style2 */ 24 25 dcl ( 26 a_code fixed bin (35), 27 a_drive_name char (*), /* drive no in subsystem */ 28 a_first_record fixed bin (18), /* First record of partition */ 29 a_n_records fixed bin (18), /* Number of records in partition */ 30 a_part_name char (*), /* Name of partition */ 31 a_pvid bit (36) aligned, /* PVID of volume with partition */ 32 a_pvtx fixed bin, /* PVTE index */ 33 a_subsystem char (4) /* as in dska */ 34 ) parameter; 35 36 dcl code fixed bin (35); 37 dcl drive_name char (4); 38 dcl part_idx fixed bin; 39 dcl part_name char (4) aligned; 40 dcl part_pvtx fixed bin (8); 41 dcl pvtx fixed bin (17); 42 dcl record_buffer (1024) bit (36) aligned; 43 dcl subsys char (4); 44 dcl system_initializing bit (1); 45 46 dcl error_table_$nopart fixed bin (35) external static; 47 dcl pvt$n_entries fixed bin external static; 48 dcl pvt$root_pvtx fixed bin external static; 49 50 dcl disk_name_pvtx$subsys_dev 51 entry (char (4), char (4), fixed bin (17), fixed bin (35)); 52 dcl config_$find_2 entry (char (4) aligned, char (4) aligned, ptr); 53 dcl read_disk entry (fixed bin (8), fixed bin (18), pointer, fixed bin (35)); 54 55 dcl (addr, null) builtin; 56 57 a_code = 0; 58 59 part_name = a_part_name; 60 call config_$find_2 ("part", part_name, part_cardp); 61 if part_cardp = null () 62 then do; 63 NO_PART: 64 a_code = error_table_$nopart; 65 return; 66 end; 67 subsys = part_card.subsystem; 68 drive_name = part_card.drive; 69 goto find_pvtx; 70 71 given_drive: 72 entry (a_part_name, a_subsystem, a_drive_name, a_pvtx, a_pvid, a_first_record, a_n_records, a_code); 73 74 a_code = 0; 75 76 part_name = a_part_name; 77 drive_name = a_drive_name; 78 subsys = a_subsystem; 79 80 81 find_pvtx: 82 pvt_arrayp = addr (pvt$array); 83 system_initializing = ^pvt_array (pvt$root_pvtx).used; 84 85 call disk_name_pvtx$subsys_dev (subsys, drive_name, pvtx, code); 86 if code ^= 0 87 then do; 88 a_code = code; 89 return; 90 end; 91 92 pvtep = addr (pvt_array (pvtx)); 93 if ^(pvte.used | system_initializing) 94 then goto NO_PART; 95 part_pvtx = pvtx; 96 97 98 labelp = addr (record_buffer); 99 100 call read_disk (part_pvtx, 0, labelp, code); 101 if code ^= 0 102 then do; 103 a_code = code; 104 return; 105 end; 106 107 do part_idx = 1 to label.nparts; 108 if label.parts (part_idx).part = part_name 109 then do; 110 a_pvtx = part_pvtx; 111 a_pvid = pvte.pvid; 112 a_first_record = label.parts (part_idx).frec; 113 a_n_records = label.parts (part_idx).nrec; 114 return; 115 end; 116 end; 117 118 a_code = error_table_$nopart; 119 return; 120 1 1 /* BEGIN INCLUDE FILE ... config_part_card.incl.pl1 ... 11/27/80 W. Olin Sibert */ 1 2 1 3 1 4 1 5 /****^ HISTORY COMMENTS: 1 6* 1) change(86-01-14,Fawcett), approve(86-05-13,MCR7383), 1 7* audit(86-05-14,LJAdams), install(86-07-18,MR12.0-1098): 1 8* Change the drive dcl from fixed bin to char (4) for subvolume support. 1 9* 2) change(87-05-07,Fawcett), approve(87-05-07,MCR7676), 1 10* audit(87-05-11,Beattie), install(87-07-15,MR12.1-1041): 1 11* Change drive element in cold_part_card from fixed bin to char (4), this 1 12* was an oversight in MCR7383. 1 13* END HISTORY COMMENTS */ 1 14 1 15 1 16 dcl part_cardp pointer; /* pointer to PART card */ 1 17 1 18 dcl 1 part_card aligned based (part_cardp), /* PART card declaration */ 1 19 2 word char (4), /* "part" */ 1 20 2 name char (4), /* Name of partition */ 1 21 2 subsystem char (4), /* Disk subsystem name */ 1 22 2 drive char (4), /* Drive number / subvol */ 1 23 2 real_name char (4), /* Real name of partition on volume (optional) */ 1 24 1 25 2 pad (10) bit (36) aligned, /* Pad to 15 fields */ 1 26 1 27 2 type_word aligned, 1 28 3 field_type (14) bit (2) unaligned, /* type of each field; see config_deck.incl.pl1 */ 1 29 3 pad1 bit (4) unaligned, 1 30 3 n_fields fixed bin (4) unsigned unaligned; /* number of fields used on card */ 1 31 1 32 dcl 1 cold_part_card aligned based (part_cardp), /* PART card declaration for cold boot */ 1 33 2 word char (4), /* "part" */ 1 34 2 name char (4), /* Name of partition */ 1 35 2 subsystem char (4), /* Disk subsystem name */ 1 36 2 drive char (4), /* Drive number */ 1 37 2 highlow char (4), /* Where to put it: "high" or "low" */ 1 38 2 nrec fixed bin, /* Number of records to be allocated */ 1 39 1 40 2 pad (9) bit (36) aligned, /* Pad to 15 fields */ 1 41 1 42 2 type_word aligned, 1 43 3 field_type (14) bit (2) unaligned, /* type of each field; see config_deck.incl.pl1 */ 1 44 3 pad1 bit (4) unaligned, 1 45 3 n_fields fixed bin (4) unsigned unaligned; /* number of fields used on card */ 1 46 1 47 dcl PART_CARD_WORD char (4) aligned internal static options (constant) init ("part"); 1 48 1 49 /* END INCLUDE FILE ... config_part_card.incl.pl1 */ 121 122 2 1 /* BEGIN INCLUDE FILE ... fs_vol_label.incl.pl1 .. last modified January 1982 for new volume map format */ 2 2 2 3 /****^ HISTORY COMMENTS: 2 4* 1) change(86-04-10,Fawcett), approve(86-04-10,MCR7383), 2 5* audit(86-05-12,Coppola), install(86-07-18,MR12.0-1098): 2 6* Add the subvolume info. 2 7* 2) change(88-05-27,GWMay), approve(88-05-27,MCR7883), 2 8* audit(88-06-14,Beattie), install(88-07-19,MR12.2-1061): 2 9* Added inconsistent_dbm bit used to determine consistency of volume 2 10* dumper bit maps. 2 11* END HISTORY COMMENTS */ 2 12 2 13 /* This is the label at fixed location of each physical volume. Length 1 page */ 2 14 /* Note: fsout_vol clears pad fields before writing the label */ 2 15 2 16 dcl labelp ptr; 2 17 2 18 dcl 1 label based (labelp) aligned, 2 19 2 20 /* First comes data not used by Multics.. for compatibility with GCOS */ 2 21 2 22 2 gcos (5*64) fixed bin, 2 23 2 24 /* Now we have the Multics label */ 2 25 2 26 2 Multics char (32) init ("Multics Storage System Volume"), /* Identifier */ 2 27 2 version fixed bin, /* Version 1 */ 2 28 2 mfg_serial char (32), /* Manufacturer's serial number */ 2 29 2 pv_name char (32), /* Physical volume name. */ 2 30 2 lv_name char (32), /* Name of logical volume for pack */ 2 31 2 pvid bit (36), /* Unique ID of this pack */ 2 32 2 lvid bit (36), /* unique ID of its logical vol */ 2 33 2 root_pvid bit (36), /* unique ID of the pack containing the root. everybody must agree. */ 2 34 2 time_registered fixed bin (71), /* time imported to system */ 2 35 2 n_pv_in_lv fixed bin, /* # phys volumes in logical */ 2 36 2 vol_size fixed bin, /* total size of volume, in records */ 2 37 2 vtoc_size fixed bin, /* number of recs in fixed area + vtoc */ 2 38 2 not_used bit (1) unal, /* used to be multiple_class */ 2 39 2 private bit (1) unal, /* TRUE if was registered as private */ 2 40 2 inconsistent_dbm bit (1) unal, /* TRUE if ESD-less crash */ 2 41 2 flagpad bit (33) unal, 2 42 2 max_access_class bit (72), /* Maximum access class for stuff on volume */ 2 43 2 min_access_class bit (72), /* Minimum access class for stuff on volume */ 2 44 2 password bit (72), /* not yet used */ 2 45 2 number_of_sv fixed bin, /* if = 0 not a subvolume else the number of svs */ 2 46 2 this_sv fixed bin, /* what subvolume number it is */ 2 47 2 sub_vol_name char (1), /* what subvolume name (a b c d) it is */ 2 48 2 pad1 (13) fixed bin, 2 49 2 time_mounted fixed bin (71), /* time mounted */ 2 50 2 time_map_updated fixed bin (71), /* time vmap known good */ 2 51 2 52 /* The next two words overlay time_unmounted on pre-MR10 systems. This 2 53* forces a salvage if an MR10 pack is mounted on an earlier system. 2 54* */ 2 55 2 volmap_version fixed bin, /* version of volume map (currently 1) */ 2 56 2 pad6 fixed bin, 2 57 2 58 2 time_salvaged fixed bin (71), /* time salvaged */ 2 59 2 time_of_boot fixed bin (71), /* time of last bootload */ 2 60 2 time_unmounted fixed bin (71), /* time unmounted cleanly */ 2 61 2 last_pvtx fixed bin, /* pvtx in that PDMAP */ 2 62 2 pad1a (2) fixed bin, 2 63 2 err_hist_size fixed bin, /* size of pack error history */ 2 64 2 time_last_dmp (3) fixed bin (71), /* time last completed dump pass started */ 2 65 2 time_last_reloaded fixed bin (71), /* what it says */ 2 66 2 pad2 (40) fixed bin, 2 67 2 root, 2 68 3 here bit (1), /* TRUE if the root is on this pack */ 2 69 3 root_vtocx fixed bin (35), /* VTOC index of root, if it is here */ 2 70 3 shutdown_state fixed bin, /* Status of hierarchy */ 2 71 3 pad7 bit (1) aligned, 2 72 3 disk_table_vtocx fixed bin, /* VTOC index of disk table on RPV */ 2 73 3 disk_table_uid bit (36) aligned, /* UID of disk table */ 2 74 3 esd_state fixed bin, /* State of esd */ 2 75 2 volmap_record fixed bin, /* Begin record of volume map */ 2 76 2 size_of_volmap fixed bin, /* Number of records in volume map */ 2 77 2 vtoc_map_record fixed bin, /* Begin record of VTOC map */ 2 78 2 size_of_vtoc_map fixed bin, /* Number of records in VTOC map */ 2 79 2 volmap_unit_size fixed bin, /* Number of words per volume map section */ 2 80 2 vtoc_origin_record fixed bin, /* Begin record of VTOC */ 2 81 2 dumper_bit_map_record fixed bin, /* Begin record of dumper bit-map */ 2 82 2 vol_trouble_count fixed bin, /* Count of inconsistencies found since salvage */ 2 83 2 pad3 (52) fixed bin, 2 84 2 nparts fixed bin, /* Number of special partitions on pack */ 2 85 2 parts (47), 2 86 3 part char (4), /* Name of partition */ 2 87 3 frec fixed bin, /* First record */ 2 88 3 nrec fixed bin, /* Number of records */ 2 89 3 pad5 fixed bin, 2 90 2 pad4 (5*64) fixed bin; 2 91 2 92 dcl Multics_ID_String char (32) init ("Multics Storage System Volume") static; 2 93 2 94 /* END INCLUDE FILE fs_vol_label.incl.pl1 */ 123 124 3 1 /* START OF: pvte.incl.pl1 July 1982 * * * * * * * * * * * * * * * * */ 3 2 3 3 /* Added pc_vacating, Benson Margulies 84-10-17 */ 3 4 3 5 /****^ HISTORY COMMENTS: 3 6* 1) change(86-04-11,Fawcett), approve(86-04-11,MCR7383), 3 7* audit(86-05-29,GDixon), install(86-07-18,MR12.0-1098): 3 8* Add the support for subvolumes 3 9* 2) change(86-04-11,Lippard), approve(86-04-11,MCR7309), 3 10* audit(86-05-29,GDixon), install(86-07-18,MR12.0-1098): 3 11* Add root_lv flag to mount RLVs that do not have hardcore partitions. 3 12* 3) change(88-05-27,GWMay), approve(88-05-27,MCR7883), 3 13* audit(88-06-14,Beattie), install(88-07-19,MR12.2-1061): 3 14* Added inconsistent_dbm bit for determining the status of volume 3 15* dumper bit maps. 3 16* END HISTORY COMMENTS */ 3 17 3 18 dcl pvt$array aligned external; 3 19 dcl pvt$max_n_entries fixed bin external; 3 20 3 21 dcl pvt_arrayp ptr; 3 22 dcl pvtep ptr; 3 23 3 24 dcl 1 pvt_array (pvt$max_n_entries) aligned like pvte based (pvt_arrayp); 3 25 3 26 dcl 1 pvte based (pvtep) aligned, 3 27 3 28 2 pvid bit (36), /* physical volume ID */ 3 29 3 30 2 lvid bit (36), /* logical volume ID */ 3 31 3 32 2 dmpr_in_use (3) bit (1) unaligned, /* physical volume dumper interlock */ 3 33 2 is_sv bit (1) unaligned, /* true if this entry defines a subvolume */ 3 34 2 root_lv bit (1) unaligned, /* true if this is on the root LV */ 3 35 2 removable_pack bit (1) unaligned, /* true if packs are eremoveable */ 3 36 2 inconsistent_dbm bit (1) unaligned, /* true if trouble count is incremented */ 3 37 2 pad3 bit (2) unaligned, 3 38 2 brother_pvtx fixed bin (8) unaligned,/* next pvte in lv chain */ 3 39 2 skip_queue_count fixed bin (18) unsigned unaligned, /* number of times this pv skipped for per-proc allocation due to saturation */ 3 40 3 41 3 42 3 43 2 devname char (4), /* device name */ 3 44 3 45 (2 device_type fixed bin (8), /* device type */ 3 46 2 logical_area_number fixed bin (8), /* disk drive number */ 3 47 2 used bit (1), /* TRUE if this entry is used */ 3 48 2 storage_system bit (1), /* TRUE for storage system (vs io disk) */ 3 49 2 permanent bit (1), /* TRUE if cannot be demounted */ 3 50 2 testing bit (1), /* Protocol bit for read_disk$test */ 3 51 2 being_mounted bit (1), /* TRUE if the physical volume is being mounted */ 3 52 2 being_demounted bit (1), /* TRUE if the pysical volume is being demounted */ 3 53 2 check_read_incomplete bit (1), /* page control should check read incomplete */ 3 54 2 device_inoperative bit (1), /* TRUE if disk_control decides dev busted */ 3 55 2 rpv bit (1), /* TRUE if this is the root physical volume */ 3 56 2 scav_check_address 3 57 bit (1), /* TRUE is page control should check deposits/withdrawals against scavenger table */ 3 58 2 deposit_to_volmap bit (1), /* TRUE if deposits should got to volume map, not stock */ 3 59 2 being_demounted2 bit (1), /* No more vtoc I/O during demount */ 3 60 2 pc_vacating bit (1), /* No more withdraws from this volume -- for debugging */ 3 61 2 vacating bit (1), /* don't put new segs on this vol */ 3 62 2 hc_part_used bit (1), /* HC part set up by init_pvt */ 3 63 2 volmap_lock_notify bit (1) unal, /* TRUE if notify required when volmap lock is unlocked */ 3 64 2 volmap_idle_notify bit (1) unal, /* TRUE if notify required when volmap state is idle */ 3 65 2 vtoc_map_lock_notify bit (1) unal, /* TRUE if notify required when vtoc map lock is unlocked */ 3 66 3 67 3 68 2 n_free_vtoce fixed bin (17), /* number of free VTOC entries */ 3 69 2 vtoc_size fixed bin (17), /* size of the VTOC part of the disk - in records */ 3 70 3 71 2 dbmrp (2) bit (18), /* rel ptr to dumber bit maps for this volume */ 3 72 3 73 2 nleft fixed bin (17), /* number of records left */ 3 74 2 totrec fixed bin (17)) unaligned, /* Total records in this map */ 3 75 3 76 2 dim_info bit (36), /* Information peculiar to DIM */ 3 77 2 sv_num fixed bin, /* the number of this subvolume starting at 0 */ 3 78 2 num_of_svs fixed bin, /* number of subvolumes for this device */ 3 79 2 records_per_cyl fixed bin, 3 80 2 record_factor fixed bin, /* the record factor for logical to real seek calculation */ 3 81 2 sv_name char (2) aligned, 3 82 2 curn_dmpr_vtocx (3) fixed bin unaligned,/* current vtocx being dumped */ 3 83 2 n_vtoce fixed bin unaligned, /* number of vtoce on this volume */ 3 84 3 85 2 baseadd fixed bin (18) uns unaligned, /* Base of paging region */ 3 86 2 pad2 bit (18) unaligned, 3 87 3 88 2 pad_for_mod_2 fixed bin (35), /* Make volmap_seg_sdw double word aligned */ 3 89 3 90 2 volmap_seg_sdw fixed bin (71), /* SDW describing volmap_seg */ 3 91 3 92 2 volmap_astep ptr unal, /* Packed pointer to ASTE for volmap_seg */ 3 93 3 94 2 volmap_offset bit (18) unal, /* Offset in volmap_seg of volume map */ 3 95 2 vtoc_map_offset bit (18) unal, /* Offset in volmap_seg of VTOC map */ 3 96 3 97 3 98 2 volmap_lock bit (36) aligned, /* Lock on volume map operations */ 3 99 3 100 2 vtoc_map_lock bit (36) aligned, /* Lock on VTOC map operations */ 3 101 3 102 2 volmap_stock_ptr ptr unal, /* Packed pointer to record stock */ 3 103 3 104 2 vtoc_map_stock_ptr ptr unal, /* Packed pointer to VTOCE stock */ 3 105 3 106 2 volmap_async_state fixed bin (17) unaligned, /* Asynchronous update state of Volume Map */ 3 107 2 volmap_async_page fixed bin (17) unaligned, /* Page number for asynchronous update */ 3 108 3 109 2 vol_trouble_count fixed bin (17) unaligned, /* Count of inconsistencies since last salvage */ 3 110 2 scavenger_block_rel bit (18) unaligned; /* Offset to scavenger block, ^0 => scavenging */ 3 111 3 112 3 113 dcl (VOLMAP_ASYNC_IDLE init (0), /* for volmap_async_state */ 3 114 VOLMAP_ASYNC_READ init (1), 3 115 VOLMAP_ASYNC_WRITE init (2)) fixed bin int static options (constant); 3 116 3 117 3 118 /* END OF: pvte.incl.pl1 * * * * * * * * * * * * * * * * */ 125 126 127 /* %include fs_dev_types; */ 128 end; SOURCE FILES USED IN THIS COMPILATION. LINE NUMBER DATE MODIFIED NAME PATHNAME 0 11/11/89 0839.5 find_partition.pl1 >special_ldd>install>MR12.3-1114>find_partition.pl1 121 1 07/17/87 0546.8 config_part_card.incl.pl1 >ldd>include>config_part_card.incl.pl1 123 2 07/21/88 2036.0 fs_vol_label.incl.pl1 >ldd>include>fs_vol_label.incl.pl1 125 3 07/21/88 2036.0 pvte.incl.pl1 >ldd>include>pvte.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 25 set ref 18 57* 63* 71 74* 88* 103* 118* a_drive_name parameter char packed unaligned dcl 25 ref 71 77 a_first_record parameter fixed bin(18,0) dcl 25 set ref 18 71 112* a_n_records parameter fixed bin(18,0) dcl 25 set ref 18 71 113* a_part_name parameter char packed unaligned dcl 25 ref 18 59 71 76 a_pvid parameter bit(36) dcl 25 set ref 18 71 111* a_pvtx parameter fixed bin(17,0) dcl 25 set ref 18 71 110* a_subsystem parameter char(4) packed unaligned dcl 25 ref 71 78 addr builtin function dcl 55 ref 81 92 98 code 000100 automatic fixed bin(35,0) dcl 36 set ref 85* 86 88 100* 101 103 config_$find_2 000016 constant entry external dcl 52 ref 60 disk_name_pvtx$subsys_dev 000014 constant entry external dcl 50 ref 85 drive 3 based char(4) level 2 dcl 1-18 ref 68 drive_name 000101 automatic char(4) packed unaligned dcl 37 set ref 68* 77* 85* error_table_$nopart 000010 external static fixed bin(35,0) dcl 46 ref 63 118 frec 1005 based fixed bin(17,0) array level 3 dcl 2-18 ref 112 label based structure level 1 dcl 2-18 labelp 002112 automatic pointer dcl 2-16 set ref 98* 100* 107 108 112 113 nparts 1003 based fixed bin(17,0) level 2 dcl 2-18 ref 107 nrec 1006 based fixed bin(17,0) array level 3 dcl 2-18 ref 113 null builtin function dcl 55 ref 61 part 1004 based char(4) array level 3 dcl 2-18 ref 108 part_card based structure level 1 dcl 1-18 part_cardp 002110 automatic pointer dcl 1-16 set ref 60* 61 67 68 part_idx 000102 automatic fixed bin(17,0) dcl 38 set ref 107* 108 112 113* part_name 000103 automatic char(4) dcl 39 set ref 59* 60* 76* 108 part_pvtx 000104 automatic fixed bin(8,0) dcl 40 set ref 95* 100* 110 parts 1004 based structure array level 2 dcl 2-18 pvid based bit(36) level 2 dcl 3-26 ref 111 pvt$array 000022 external static fixed bin(17,0) dcl 3-18 set ref 81 pvt$root_pvtx 000012 external static fixed bin(17,0) dcl 48 ref 83 pvt_array based structure array level 1 dcl 3-24 set ref 92 pvt_arrayp 002114 automatic pointer dcl 3-21 set ref 81* 83 92 pvte based structure level 1 dcl 3-26 pvtep 002116 automatic pointer dcl 3-22 set ref 92* 93 111 pvtx 000105 automatic fixed bin(17,0) dcl 41 set ref 85* 92 95 read_disk 000020 constant entry external dcl 53 ref 100 record_buffer 000106 automatic bit(36) array dcl 42 set ref 98 subsys 002106 automatic char(4) packed unaligned dcl 43 set ref 67* 78* 85* subsystem 2 based char(4) level 2 dcl 1-18 ref 67 system_initializing 002107 automatic bit(1) packed unaligned dcl 44 set ref 83* 93 used 4(18) based bit(1) level 2 in structure "pvte" packed packed unaligned dcl 3-26 in procedure "find_partition" ref 93 used 4(18) based bit(1) array level 2 in structure "pvt_array" packed packed unaligned dcl 3-24 in procedure "find_partition" set ref 83 NAMES DECLARED BY DECLARE STATEMENT AND NEVER REFERENCED. Multics_ID_String internal static char(32) initial packed unaligned dcl 2-92 PART_CARD_WORD internal static char(4) initial dcl 1-47 VOLMAP_ASYNC_IDLE internal static fixed bin(17,0) initial dcl 3-113 VOLMAP_ASYNC_READ internal static fixed bin(17,0) initial dcl 3-113 VOLMAP_ASYNC_WRITE internal static fixed bin(17,0) initial dcl 3-113 cold_part_card based structure level 1 dcl 1-32 pvt$max_n_entries external static fixed bin(17,0) dcl 3-19 pvt$n_entries external static fixed bin(17,0) dcl 47 NAMES DECLARED BY EXPLICIT CONTEXT. NO_PART 000073 constant label dcl 63 ref 93 find_partition 000020 constant entry external dcl 18 find_pvtx 000167 constant label dcl 81 ref 69 given_drive 000114 constant entry external dcl 71 THERE WERE NO NAMES DECLARED BY CONTEXT OR IMPLICATION. STORAGE REQUIREMENTS FOR THIS PROGRAM. Object Text Link Symbol Defs Static Start 0 0 426 452 317 436 Length 702 317 24 214 107 0 BLOCK NAME STACK SIZE TYPE WHY NONQUICK/WHO SHARES STACK FRAME find_partition 1138 external procedure is an external procedure. STORAGE FOR AUTOMATIC VARIABLES. STACK FRAME LOC IDENTIFIER BLOCK NAME find_partition 000100 code find_partition 000101 drive_name find_partition 000102 part_idx find_partition 000103 part_name find_partition 000104 part_pvtx find_partition 000105 pvtx find_partition 000106 record_buffer find_partition 002106 subsys find_partition 002107 system_initializing find_partition 002110 part_cardp find_partition 002112 labelp find_partition 002114 pvt_arrayp find_partition 002116 pvtep find_partition THE FOLLOWING EXTERNAL OPERATORS ARE USED BY THIS PROGRAM. call_ext_out return_mac ext_entry_desc THE FOLLOWING EXTERNAL ENTRIES ARE CALLED BY THIS PROGRAM. config_$find_2 disk_name_pvtx$subsys_dev read_disk THE FOLLOWING EXTERNAL VARIABLES ARE USED BY THIS PROGRAM. error_table_$nopart pvt$array pvt$root_pvtx LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC LINE LOC 18 000012 57 000046 59 000047 60 000053 61 000067 63 000073 65 000076 67 000077 68 000102 69 000104 71 000105 74 000147 76 000150 77 000156 78 000163 81 000167 83 000172 85 000201 86 000215 88 000217 89 000220 92 000221 93 000226 95 000233 98 000235 100 000237 101 000255 103 000257 104 000260 107 000261 108 000271 110 000277 111 000301 112 000303 113 000306 114 000310 116 000311 118 000313 119 000316 ----------------------------------------------------------- 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