SPRAB89A September 2011 – March 2014
A program may be separately linked such that it is comprised of an executable (file type ET_EXEC) and shared libraries (file type ET_DYN). These files contain the usual dynamic information referenced through a dynamic section via the PT_DYNAMIC program header. The program and its libraries can optionally be dynamically relocated at load time.
Shared libraries are required to be position-independent. Executables may or may not be position independent. Position dependent executables require relocations to the code segment(s) at load time and subject to inefficient use of system resources.