System initialization — From where do operating systems obtain the system’s total memory information during boot on legacy PCs?

Difficulty: Easy

Correct Answer: BIOS (firmware reports memory/SMBIOS/INT 15h services)

Explanation:


Introduction / Context:
During early boot, the operating system queries the platform for hardware configuration, including usable memory. On legacy BIOS-based PCs, firmware provides standardized interfaces to report memory maps and sizes.



Given Data / Assumptions:

  • Classic BIOS environment (not pure UEFI with ACPI tables only).
  • OS relies on firmware calls and/or SMBIOS/ACPI data.
  • Question asks which component initializes and reports memory totals.


Concept / Approach:

The BIOS performs POST, detects installed memory, and exposes the results via INT 15h services, E820 memory maps, and SMBIOS/ACPI tables. The OS consumes these to understand total and reserved regions of RAM before establishing its own memory manager.



Step-by-Step Solution:

BIOS runs POST and enumerates memory.BIOS publishes memory data through standardized interfaces (e.g., INT 15h/E820, SMBIOS).OS queries BIOS to obtain total/usable memory and region layout.Therefore, the source is the BIOS.


Verification / Alternative check:

Boot logs of many OSes show calls to firmware memory map services. UEFI successors use similar concepts via UEFI Boot Services and ACPI tables.



Why Other Options Are Wrong:

The CPU does not inventory RAM; RAM cannot self-report; “ROM” is too generic—BIOS is the specific firmware entity responsible.



Common Pitfalls:

Confusing CMOS with BIOS roles; assuming the OS magically knows memory without firmware or probing.



Final Answer:

BIOS (firmware reports memory/SMBIOS/INT 15h services).

Discussion & Comments

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