Difficulty: Easy
Correct Answer: linking loader
Explanation:
Introduction / Context:
Large software systems are built from multiple object modules. Before execution, these modules must be combined, external symbols resolved, and final addresses assigned. The system program that performs this step bridges the gap between separate compilation and a runnable image.
Given Data / Assumptions:
Concept / Approach:
A linking loader (or linker/loader combination) resolves external symbols, performs relocation as needed, and arranges code/data into the final memory image. An assembler translates assembly to object code but does not combine multiple modules. A cross compiler produces code for a different architecture. “Load and go” refers to immediate assembly-to-load workflows without a separate link step across many objects.
Step-by-Step Solution:
Verification / Alternative check:
Toolchains (e.g., ld, link.exe) demonstrate this process: invoking the linker merges objects and emits an executable that the loader places in memory at run/start time.
Why Other Options Are Wrong:
Common Pitfalls:
Equating loading (placing into memory) with linking (resolving symbols); many systems combine them, but the roles remain distinct.
Final Answer:
linking loader.
Discussion & Comments