Suppose that you wrote a C program on a piece of paper and now you want to execute it on your computer. The following are the needed steps: - You use a system program referred to as the editor to enter and edit your program, to name it, and then to save it on disk. Assume that your program is named myprog.c. Then, once saved, it is referred to as the source module. Software manufacturers usually provide an editor with the compiler. - You use a C compiler to translate your program into the computer’s own machine language. This produces the corresponding machine language program and saves it on disk. This program is typically named myprog.o and is referred to as the object module. - You use a system program referred to as the linker to link myprog.o with any operating system modules that may be needed for proper program execution. This produces the corresponding executable program and saves it on disk. This program is typically named myprog.exe and is referred to as the load module. Software manufacturers usually provide a linker with the compiler. The compilation and linking tasks are sometimes combined and referred to as the build task. - You use an operating system program referred to as the loader to load myprog.exe into memory and only then execution begins. The load task is sometimes referred to as the execution task.