Thursday, August 11, 2011


I will try to be as brief as possible about this topic

"A linker is a program that links the object files generated by the compiler and makes them into a single executable file"

Simple and straight forward. But let us discuss, some what more ....

 Consider you are installing Adobe Photoshop or Vice City or NFS most wanted game or any other bigger program. By default, the installer installs a lot of files in the Operating systemdrive:\\programfiles\Adobe\Adobe Photoshop CS3 for Photoshop and in similar folders for others.

Now as per our definition, since a single executable can be made with a linker, why all the remaining object files ( Files ending with .dll .....)

This is due to the fact that the whole program's size will be of some 2-4 GB. If all of it is loaded at a time, the RAM may get overloaded, leaving the system in the busy state. So some intelligent people found a solution to this and implemented as above, naming the new technology as "Dynamic Linking"

Dynamic linking, takes advantage of the fact that the program in execution, doesn't need all the related libraries at a time, but needs them when the user enters a specific area or clicks a button. So it just appears that all the files are loaded when the game starts, but the DLL's (Dynamic Link Libraries) are loaded on demand by the game, so that a lot of RAM is saved.

That's all to say about linker.

I err and I guess most of you do the same, when it comes into using of Programme and Program

Actually Programme is a word present in British English, but absent in American. Also Programme refers to a concert or TV show strictly while Program strictly refers to our Computer science program or software. So be careful and don't go into ambiguity while using these two words

No comments:

Post a Comment