Linkers and loaders / John R. Levine.

By: Levine, John RMaterial type: TextTextPublisher: San Francisco : Morgan Kaufmann, c2000Description: xv, 256 p. : ill. ; 24 cmISBN: 1558604960 (acid-free paper); 9781558604964 (acid-free paper)Other title: Linkers & loaders [Cover title]Subject(s): Assembling (Electronic computers) | Linkers (Computer programs) | Loaders (Computer programs)DDC classification: 005.4/56 LOC classification: QA76.76.A87 | L48 2000Online resources: Table of contents | Publisher description Also issued online.
Contents:
Linking and Loading What Do Linkers and Loaders Do? Address Binding: A Historical Perspective Linking vs. Loading Compiler Drivers Linking: A True-Life Example Architectural Issues Application Binary Interfaces Memory Addresses Address Formation Instruction Formats Procedure Calls and Addressability Data and Instruction References Paging and Virtual Memory Intel 386 Segmentation Embedded Architectures Object Files What Goes into an Object File? Null Object Format: DOS COM Files Code Sections: UNIX a.out Files Relocation: DOS EXE Files Symbols and Relocation Relocatable a.out UNIX ELF IBM 360 Object Format Microsoft Portable Executable Format Intel/Microsoft OMF Files Comparison of Object Formats Storage Allocation Segments and Addresses Simple Storage Layout Multiple-Segment Types Segment and Page Alignment Common Blocks and Other Special Segments Linker Control Scripts Storage Allocation in Practice Symbol Management Binding and Name Resolution Symbol Table Formats Name Mangling Weak External and Other Kinds of Symbols Maintaining Debugging Information Libraries Purpose of Libraries Library Formats Creating Libraries Searching Libraries Performance Issues Weak External Symbols Relocation Hardware and Software Relocation Link-Time and Load-Time Relocation Symbol and Segment Relocation Basic Relocation Techniques Relinkable and Relocatable Output Formats Other Relocation Formats Relocation Special Cases Loading and Overlays Basic Loading Basic Loading, with Relocation Position-Independent Code Bootstrap Loading Tree-Structured Overlays Shared Libraries Binding Time Shared Libraries in Practice Address Space Management Structure of Shared Libraries Creating Shared Libraries Linking with Shared Libraries Running with Shared Libraries Malloc Hack and Other Shared-Library Problems Dynamic Linking and Loading ELF Dynamic Linking Contents of an ELF File Loading a Dynamically Linked Program Lazy Procedure Linkage with the PLT Other Peculiarities of Dynamic Linking Dynamic Loading at Run Time Microsoft Dynamic-Link Libraries OSF/1 Pseudo-Static Shared Libraries Making Shared Libraries Fast Comparison of Dynamic Linking Approaches Advanced Techniques Techniques for C++ Incremental Linking and Relinking Link-Time Garbage Collection Link-Time Optimization Link-Time Code Generation Java Linking Model
Tags from this library: No tags from this library for this title. Log in to add tags.
    Average rating: 0.0 (0 votes)
Item type Current library Call number Copy number Status Notes Date due Barcode
Books Books Female Library
QA76.76 .A87 L48 2000 (Browse shelf (Opens below)) 1 Available STACKS 51952000083313
Books Books Main Library
QA76.76 .A87 L48 2000 (Browse shelf (Opens below)) 1 Available STACKS 51952000063247

Includes bibliographical references (p. 246-248) and index.

Also issued online.

1 Linking and Loading 1 -- 1.1 What Do Linkers and Loaders Do? 1 -- 1.2 Address Binding: A Historical Perspective 1 -- 1.3 Linking vs. Loading 5 -- 1.4 Compiler Drivers 10 -- 1.5 Linking: A True-Life Example 12 -- 2 Architectural Issues 19 -- 2.1 Application Binary Interfaces 20 -- 2.2 Memory Addresses 20 -- 2.3 Address Formation 22 -- 2.4 Instruction Formats 23 -- 2.5 Procedure Calls and Addressability 24 -- 2.6 Data and Instruction References 28 -- 2.7 Paging and Virtual Memory 34 -- 2.8 Intel 386 Segmentation 41 -- 2.9 Embedded Architectures 43 -- 3 Object Files 47 -- 3.1 What Goes into an Object File? 47 -- 3.2 Null Object Format: DOS COM Files 49 -- 3.3 Code Sections: UNIX a.out Files 50 -- 3.4 Relocation: DOS EXE Files 56 -- 3.5 Symbols and Relocation 58 -- 3.6 Relocatable a.out 58 -- 3.7 UNIX ELF 62 -- 3.8 IBM 360 Object Format 71 -- 3.9 Microsoft Portable Executable Format 75 -- 3.10 Intel/Microsoft OMF Files 84 -- 3.11 Comparison of Object Formats 90 -- 4 Storage Allocation 93 -- 4.1 Segments and Addresses 93 -- 4.2 Simple Storage Layout 94 -- 4.3 Multiple-Segment Types 96 -- 4.4 Segment and Page Alignment 96 -- 4.5 Common Blocks and Other Special Segments 98 -- 4.6 Linker Control Scripts 107 -- 4.7 Storage Allocation in Practice 108 -- 5 Symbol Management 117 -- 5.1 Binding and Name Resolution 117 -- 5.2 Symbol Table Formats 118 -- 5.3 Name Mangling 124 -- 5.4 Weak External and Other Kinds of Symbols 129 -- 5.5 Maintaining Debugging Information 129 -- 6 Libraries 135 -- 6.1 Purpose of Libraries 135 -- 6.2 Library Formats 136 -- 6.3 Creating Libraries 141 -- 6.4 Searching Libraries 142 -- 6.5 Performance Issues 144 -- 6.6 Weak External Symbols 144 -- 7 Relocation 149 -- 7.1 Hardware and Software Relocation 150 -- 7.2 Link-Time and Load-Time Relocation 151 -- 7.3 Symbol and Segment Relocation 151 -- 7.4 Basic Relocation Techniques 153 -- 7.5 Relinkable and Relocatable Output Formats 159 -- 7.6 Other Relocation Formats 160 -- 7.7 Relocation Special Cases 162 -- 8 Loading and Overlays 167 -- 8.1 Basic Loading 167 -- 8.2 Basic Loading, with Relocation 168 -- 8.3 Position-Independent Code 169 -- 8.4 Bootstrap Loading 176 -- 8.5 Tree-Structured Overlays 177 -- 9 Shared Libraries 187 -- 9.1 Binding Time 188 -- 9.2 Shared Libraries in Practice 190 -- 9.3 Address Space Management 190 -- 9.4 Structure of Shared Libraries 192 -- 9.5 Creating Shared Libraries 192 -- 9.6 Linking with Shared Libraries 197 -- 9.7 Running with Shared Libraries 197 -- 9.8 Malloc Hack and Other Shared-Library Problems 199 -- 10 Dynamic Linking and Loading 205 -- 10.1 ELF Dynamic Linking 206 -- 10.2 Contents of an ELF File 206 -- 10.3 Loading a Dynamically Linked Program 210 -- 10.4 Lazy Procedure Linkage with the PLT 213 -- 10.5 Other Peculiarities of Dynamic Linking 215 -- 10.6 Dynamic Loading at Run Time 216 -- 10.7 Microsoft Dynamic-Link Libraries 217 -- 10.8 OSF/1 Pseudo-Static Shared Libraries 222 -- 10.9 Making Shared Libraries Fast 223 -- 10.10 Comparison of Dynamic Linking Approaches 224 -- 11 Advanced Techniques 229 -- 11.1 Techniques for C++ 229 -- 11.2 Incremental Linking and Relinking 233 -- 11.3 Link-Time Garbage Collection 235 -- 11.4 Link-Time Optimization 237 -- 11.5 Link-Time Code Generation 238 -- 11.6 Java Linking Model 241.

1 2

There are no comments on this title.

to post a comment.