Systems software — loader types: Loaders that allow a program to be relocated at load time are called what?

Difficulty: Easy

Correct Answer: both (a) and (b)

Explanation:


Introduction / Context:
Loaders place compiled code into memory for execution. When the final memory address is unknown until load time, relocation support is required so that address-sensitive instructions are adjusted appropriately.


Given Data / Assumptions:

  • Programs may be loaded at varying base addresses.
  • Relocation records or relocation bits accompany object code.


Concept / Approach:
Terminology varies across literature. A loader that processes relocation information to adjust addresses at load time is called a “relocating loader” and also commonly a “relative loader,” emphasizing addresses relative to a load base.


Step-by-Step Solution:
Identify key capability: adjust address-dependent code and data.Match terms used for such loaders: relocating/relative.Conclude both names describe the same capability.


Verification / Alternative check:
OS and linker/loader texts describe relocation entries processed by relocating loaders. Absolute loaders lack this step.


Why Other Options Are Wrong:
(d) Absolute loaders place code at a fixed, predetermined address and do not relocate. (e) Static binders are linkers that resolve symbols but may still rely on relocation at load time.


Common Pitfalls:
Confusing linking with loading; assuming “absolute” can relocate.


Final Answer:
both (a) and (b).

Discussion & Comments

No comments yet. Be the first to comment!
Join Discussion