Linkers and Loaders
This is the web site for Linkers and Loaders by
John R. Levine, published
by Morgan-Kauffman in October 1999, ISBN
1-55860-496-0.
The source code
The code is available here.
Errata
Page 26: second paragraph, delete "using the table pointer register as a base register:
Page 33: last paragraph, first line, delete "addresses"
Page 98: the table of segment locations is incorrect. Corrected version:
name | text | data | bss |
main | 1000 - 2016 | 5000 - 531f | 6a4c - 6a9b |
calif | 2018 - 2937 | 5320 - 5537 | 6a9c - 6b9b |
mass | 2938 - 2f4c | 5538 - 5837 | 6b9c - 73db |
newyork | 2f50 - 42df | 5838 - 6a4a | 73dc - 87db |
Page 104: third paragraph, sixth line, "assignment" should be "alignment"
Page 146: project, fourth line, "exported files" should be "exported symbols"
Page 147: project 6.3, first line, "directory" should be "file"
Page 170: first line, "the data" should be "the data address"
Page 180: second paragraph, last line, "decimals" should be "decimal"
Page 181: Figure 8.7, "3000 andy" should be "5000 andy"
Page 215: second line, "offset The" should be "offset, the"
Page 216: fourth line, replace sentence starting "This is a" with "The linker uses the symbol size to determine how much data to copy."
Page 226: Exercise 10.2, fourth line, "calls" should be "names"
Page 241: last paragraph, second line "into logically" should be "into a logically"
Reading or buying the book
You can order the book
at the usual on-line bookstores:
I.E.C.C.
PO Box 727
Trumansburg, N.Y. 14886