A linker combines several object files and libraries and produces an executable. Object files are created by assemblers and compilers and contain both code executable by a CPU and several management data.
Libraries are simply collections of object files.
Executable files were created by linking object and library files. This section explains how the linker is designed to get the right overview how you can easily extend this linker. This sub-section shows how the main library is designed and how it is used by the main program. He can also create a DLL file. An application where this would be useful is when you have written a compiler and want to update the linker to allow several new object formats to be linked in.