Answer:
Dynamic linking is when the compiler links the function call with its definition at the run time or the linking of the library routines with the program code takes place at the run time.it is also called as late binding.
Static linking is when the compiler links the function call with its definition at the compile time or the library routines are linked with the program code at the compile time. it is also called as early binding.
a) The performance of the program will be faster as the load time for dynamic linking is reduced as the shared library code is already present in the memory.
b)in static linking the statically linked are larger in size because external programs are buit in the executable files so the memory space required is more whereas in dynamic linking the disk space is not wasted as in dynamic linking only one copy of shared library is kept in memory.
c) the dynamic linking will be slower as it will using moe system memory at the run time
Explanation: