Five areas comprise the memory of Cisco devices. These memory areas are used to store static and dynamic device configuration data. These memory areas are as follows:
✦ Read-Only Memory (ROM): The ROM stores programs and data necessary to start up the Cisco device. This memory keeps its contents even when the Cisco device is powered down. ROM is kept on EPROM (erasable programmable read-only memory) chips.
✦ Flash Memory: The flash memory stores the Cisco IOS. Flash memory keeps its contents even when the Cisco device is powered down. Flash memory is kept on EEPROM chips, on PCMCIA cards, or on CompactFlash cards. The PCMCIA and CompactFlash cards can be accessed either internally on the Cisco device motherboard or externally through a PCMCIA or CompactFlash external slot.
✦ Nonvolatile Random-Access Memory (NVRAM): The NVRAM stores the startup configuration. This is the configuration that Cisco IOS loads when it boots up. NVRAM keeps its contents even when the Cisco device is powered down.
✦ Random-Access Memory (RAM): The RAM stores the running configuration. This is the dynamic data that changes while the Cisco device is in normal operation mode. This includes the Address Resolution Protocol (ARP) cache (MAC address tables), routing tables, STP data, VLAN data, Ether Channel configuration data, and temporary buffers. RAM does not keep its contents when the Cisco device is powered down. Upon startup, RAM is initialized with contents from NVRAM.
✦ Configuration Register: The configuration register is a 2-byte (16-bit) area of NVRAM that holds a numeric value that defines how the Cisco device starts up. By default, the value stored in the configuration register instructs the bootstrap program to load the Cisco IOS from flash memory and to load the startup configuration from NVRAM. You can change the value of the configuration register from the ROMMON prompt. To get to the rommon> prompt, you need to break out of the bootstrap process by pressing Ctrl+Break while the Cisco device is booting up.