Linker and Loader

Linker

Linker is a program whose task is linking various modules in a software. Usually programs are written in line by line. But, programs for large applications writing line by line is not a good idea. Developers divides the programs into various module. combining these modules gives the result. Developers write the code(source code) for each module. These code are compiled to get object files. So there are multiple source code and multiple object files. Here comes the benefit of linker. Linker combine all the object files which are compiled from source code and convert into final executable file/program.

    Sometime in linking of object files may include library files. All these files, object files library files combines into a single executable file sometime it can be an object file or library file.

Loader

Loader is a program whose task is to load programs. Normally, loader is a part of Operating System (OS). The task involves locating the program in secondary storage (sometime called offline storage or auxiliary memory such as Hard-disk drives) to main memory for executing. The program can be an application or sometimes an OS itself.