Previous | Contents | Index |
The Image Section Synopsis section of the linker map file lists the image sections created by the linker. The image sections appear in the order in which the linker created them, which is the same order as the clusters in the linker's cluster list. (For more information about clusters, see Chapter 6.) The section includes other information about these image sections, formatted in columns, as in the following example:
The items in the following list correspond to the numbered items in the preceding figure:
Code | Image Section Type |
---|---|
1 | Shareable fixed image section |
2 | Private fixed image section |
3 | Shareable position-independent image section |
4 | Private position-independent image section |
253 | Stack image section |
Keyword | Meaning |
---|---|
COPY ON REF | Indicates that the image section is a copy-on-reference image section. Because a copy-on-reference image section is readable and writable, but not shareable, each process receives a copy of it. |
DEMAND ZERO | Indicates that the image section is a demand-zero image section. (For more information, see Section 7.4.3.) |
EXECUTABLE | Indicates that the image section contains code. |
FIXUP VECTORS | Indicates that the image section contains the fix-up section. There is always a change-protection fix-up for the fix-up section, so that when the image activator is done, the image activator changes the protection of the image section to READ ONLY. |
NON-SHAREABLE ADDRESS DATA | Indicates that the linker set a READ ONLY page in the image section to WRITE so that the image activator can fix up address references (.ADDRESS) in the image section. The linker creates a change-protection fix-up for these image sections that causes the image activator to set the attributes of the image section back to READ ONLY when it finishes processing the address references. |
READ ONLY | Indicates that the image section is protected against write access. |
READ WRITE | Indicates that the image section allows both read and write access. |
The Program Section Synopsis section lists the program sections that comprise the image, with information about the size of the program section, its starting- and ending-addresses, and its attributes. The Module Name column in this section lists the modules that contribute to each program section. The following example illustrates this format:
The items in the following list correspond to the numbered items in the preceding figure:
Note that, if a routine is extracted from the default system library to
resolve a symbolic reference, the Program Section Synopsis section in a
full map contains information about the program sections comprising
that routine. The Program Section Synopsis section in a default map
does not.
9.2.5 Symbols By Name Section (Alpha/VAX)
The Symbols By Name section lists the global symbols contained in all the modules included in the link operation. The section includes the value of the symbol, in the following format:
+-----------------+ ! Symbols By Name ! +-----------------+ Symbol (1) Value (2) Symbol Value Symbol Value Symbol Value ------ ----- ------ ----- ------ ----- ------ ----- DECC$EXIT 00001FD0-RX DECC$GPRINTF 00001710-RX DECC$MAIN 000007D0-RX MAIN 00010000-R MYSUB 00000010-RX MY_SYMBOL 00000050-RX SYS$IMGSTA 00000340-RX __MAIN 00010078-R |
Note that this section is replaced by the Symbol Cross-Reference
section when you specify the /CROSS_REFERENCE qualifier in the LINK
command. The Symbols by Value section, described in Section 9.2.7,
lists the same symbols by value.
9.2.6 Symbol Cross-Reference Section (Alpha/VAX)
The Symbol Cross-Reference Section, which is produced in place of the Symbols By Name section when you specify the /CROSS_REFERENCE qualifier, lists all of the symbols referenced in the image, along with the module in which they are defined and with all the modules that reference them. The section formats this information as in the following example:
+------------------------+ ! Symbol Cross Reference ! +------------------------+ Symbol (1) Value (2) Defined By (3) Referenced By ... (4) ------ ----- ---------- ----------------- DECC$EXIT 00001FD0-RX DECC$SHR MY_MAIN DECC$GPRINTF 00001710-RX DECC$SHR MY_MAIN DECC$MAIN 000007D0-RX DECC$SHR MY_MAIN MAIN 00010000-R MY_MAIN MYSUB 00000010-RX MY_MATH MY_MAIN MY_SYMBOL 00000050-RX MY_MATH MY_MAIN SYS$IMGSTA 00000340-RX SYS$PUBLIC_VECTORS __MAIN 00010078-R MY_MAIN |
The Symbols By Value section lists all the global symbols in the image in order by value, in ascending numeric order. The linker formats the information into columns, as in the following example:
+------------------+ ! Symbols By Value ! +------------------+ Value (1) Symbols...(2) ----- ---------- 00000010 RX-MYSUB 00000050 RX-MY_SYMBOL 00000340 RX-SYS$IMGSTA 000007D0 RX-DECC$MAIN 00001710 RX-DECC$GPRINTF 00001FD0 RX-DECC$EXIT 00010000 R-MAIN 00010078 R-__MAIN |
Code | Meaning |
---|---|
asterisk(*) | Symbol is undefined. |
+A | Symbol is the alias name for a universal symbol. |
+I | Symbol is the internal name of a symbol that has a universal alias name. |
U | Symbol is a universal symbol. |
R | Symbol is a relocatable symbol. |
X | Symbol is an external symbol. |
WK | Symbol is a weak symbol. (For more information, see Chapter 6.) |
The Image Synopsis section contains miscellaneous information about the image, such as its name and identification numbers, and a summary of various attributes of the image, such as the number of files used to build the image. The following example illustrates the format of this section of a map file. The list following the example provides more information about items in this section that are not self-explanatory.
+----------------+ ! Image Synopsis ! +----------------+ Virtual memory allocated:(1) 00010000 0003FFFF 00030000 (196608. bytes, 384. pages) Stack size: 20. pages Image header virtual block limits: 1. 2. ( 2. blocks) Image binary virtual block limits: 3. 5. ( 3. blocks) Image name and identification: MY_MAIN V1.0 Number of files: 7. Number of modules: 4. Number of program sections: 11. Number of global symbols: 944. Number of cross references: 13. Number of image sections: 20. User transfer address: 00010078 Debugger transfer address: 00000340 Number of code references to shareable images: 6. Image type: EXECUTABLE. Map format: FULL WITH CROSS REFERENCE in file WORK:[PROGS]MY_MAIN.MAP;15 Estimated map length: 148. blocks |
The following list explains the information returned in each line of the Image Synopsis section:
The numbers in parentheses at the end of the line indicate the total size of the image, expressed in bytes and in pagelets. Both these values are expressed in decimal.
9.2.9 Link Run Statistics Section (Alpha/VAX)
The Link Run Statistics section contains miscellaneous statistical
information about the link operation, such as performance indicators,
formatted as in the following example:
+---------------------+ ! Link Run Statistics ! +---------------------+ Performance Indicators Page Faults CPU Time Elapsed Time ---------------------- ----------- -------- ------------ Command processing: 93 00:00:00.18 00:00:00.81 Pass 1: 345 00:00:00.55 00:00:12.04 Allocation/Relocation: 9 00:00:00.04 00:00:00.30 Pass 2: 29 00:00:00.14 00:00:00.62 Map data after object module synopsis: 3 00:00:00.05 00:00:00.31 Symbol table output: 0 00:00:00.00 00:00:00.10 Total run values: 479 00:00:00.96 00:00:14.18 Using a working set limited to 2048 pages and 946 pages of data storage (excluding image) Total number object records read (both passes): 167 of which 0 were in libraries and 0 were DEBUG data records containing 0 bytes Number of modules extracted explicitly = 0 with 0 extracted to resolve undefined symbols 5 library searches were for symbols not in the library searched A total of 0 global symbol table records was written LINK/MAP/FULL/CROSS MY_MAIN,SYS$INPUT/OPT my_math/share |
Previous | Next | Contents | Index |