The Big Idea
Although ROM (Read-Only Memory) cannot be changed under normal operation, most modern computers use a special type of ROM—usually EEPROM or Flash ROM—to store firmware such as the BIOS or UEFI.
When a user changes BIOS settings (for example, boot order, CPU features, or fan speeds), those changes are not written directly to the ROM. Instead, they are saved to a small non-volatile memory chip—often a CMOS or NVRAM chip—located on the motherboard.
Step-by-Step Explanation
1. ROM Holds Firmware Code
- The BIOS/UEFI firmware (the program that runs before your operating system starts) is stored in Flash ROM.
- This firmware contains code, not settings — for example:
- How to initialize the CPU, memory controller, and devices
- Instructions for reading the boot drive
- Code for displaying the setup interface (the BIOS menu)
This firmware changes only when you update or flash your BIOS (a process that writes a new firmware image into Flash ROM).
2. Settings Are Stored Separately (CMOS / NVRAM)
- When you change a setting (e.g., changing boot order or enabling virtualization), the BIOS setup utility saves these values in a small memory area:
- Older systems: CMOS RAM (Complementary Metal-Oxide Semiconductor)
- Modern systems: NVRAM (Non-Volatile RAM)
- Both are non-volatile, meaning they keep data even when the computer is powered off.
- CMOS RAM typically holds only a few kilobytes of configuration data.
Example BIOS settings stored in CMOS/NVRAM:
- System clock and date
- Boot sequence (HDD → USB → Network)
- Enabled/disabled devices (integrated GPU, SATA ports)
- CPU voltage/frequency options
- Security passwords (hashed form)
3. Battery Backup
- The CMOS or NVRAM chip is powered by a small CR2032 battery on the motherboard.
- This battery ensures that the configuration data remains intact when the system is unplugged.
- If the battery dies or is removed, the BIOS will revert to default settings, because the configuration data is lost even though the firmware in ROM is still present.
4. Firmware Updates (Flashing the BIOS)
- When you update your BIOS, you are rewriting the contents of the Flash ROM chip itself.
- This is done through a special program that erases and reprograms the chip with new firmware code.
- This is the only time normal users modify ROM contents (and it is risky—if interrupted, the motherboard may fail to boot).
Summary Table
| Component | Type of Memory | What It Stores | Volatile? | Can User Modify? |
|---|---|---|---|---|
| ROM (Flash ROM) | Non-volatile | BIOS/UEFI firmware code | No | Only during firmware update |
| CMOS/NVRAM | Non-volatile | User-configured BIOS settings | Partially (requires battery) | Yes, via BIOS setup |
| RAM | Volatile | Temporary runtime data | Yes | Yes, used by OS and programs |