flâneur — a map of the web's best reading

Linkers part 3 – Airs – Ian Lance Taylor

airs.com · 1,002 words · saved by 1 readers

An address space is simply a view of memory, in which each byte has an address. The linker deals with three distinct types of address space. Every input object file is a small address space: the contents have addresses, and the symbols and relocations refer to the contents by addresses. The output program will be placed at some location in memory when it runs. This is the output address space, which I generally refer to as using virtual memory addresses. The output program will be loaded at some location in memory. This is the load memory address. On typical Unix systems virtual memory addresses and load memory addresses are the same. On embedded systems they are often different; for example, the initialized data (the initial contents of global or static variables) may be loaded into ROM at the load memory address, and then copied into RAM at the virtual memory address. Shared libraries can normally be run at different virtual memory address in different processes. A shared library has

Linkers part 3 – Airs – Ian Lance Taylor Linkers part 3 Continuing notes on linkers. Address Spaces An address space is simply a view of memory, in which each byte has an address. The linker deals with three distinct types of address space. Every input object file is a small address space: the contents have addresses, and the symbols and relocations refer to the contents by addresses. The output program will be placed at some location in memory when it runs. This is the output address space, which I generally refer to as using virtual memory addresses . The output program will be l

Explore this link on the map →

related reading