Difficulty: Medium
Correct Answer: Reallocation (relocation of addresses)
Explanation:
Introduction / Context:
Loaders vary from absolute loaders (minimal intelligence) to relocating or linking loaders. In an absolute scheme, the assembler resolves addresses to absolute values during assembly, so the loader simply copies code to a predefined location without further fix-ups.
Given Data / Assumptions:
Concept / Approach:
Determine which tasks are handled pre-load. Absolute loaders do not adjust addresses; relocation (reallocation) is already baked into the object by the assembler. Allocation policies and multi-module linking fall outside the absolute loader’s scope in this basic scenario.
Step-by-Step Solution:
Assemble source with a predetermined origin address.Assembler computes absolute addresses (effectively performing relocation during assembly).Absolute loader transfers bytes to memory at the designated address and begins execution.
Verification / Alternative check:
Inspect the object listing: lack of relocation records confirms the loader need not adjust addresses. Any change in load location would require re-assembly in a pure absolute scheme.
Why Other Options Are Wrong:
Allocation (Option B) is an OS memory manager concern, not the assembler’s job.Linking (Option C) is performed by a linkage editor or linking loader, not by the assembler in the absolute loader model.Loading (Option D) is the loader’s essential task, not the assembler’s.
Common Pitfalls:
Final Answer:
Reallocation (relocation of addresses).
Discussion & Comments