Basic memory operations: Linking and loading
The function of a linker is to take as input a collection of object modules and produce a load module that consists of an integrated set of program and data modules to be passed to the loader. It also resolves all the external symbolic references in the load module (linkage).
The nature of the address linkage will depend on the types of load module created and the time of linkage: static, load-time dynamic linking, run-time dynamic linking.
Dynamic linking: Deferring the linkage of external references until load-module is created: load module contains unresolved references to other programs.