When it often seems transparent to the user Cisco routers rely on 4 different
types of memory for it's operations. This is an important concept in the Cisco world and as a Network administrator you need to be familiar with them
The types memory types are: Flash, RAM, ROM, and NVRAM.
Flash Memory: Flash memory is used to store and run the Cisco IOS software - the router's operating system. When a router is powered down, the contents of Flash memory are not lost. However, its contents can be upgraded by "flashing" the chip. While a router is running, the contents of Flash are set to a read-only mode. Flash memory for a Cisco 2500 series router ranges in size from a minimum of 4MB up to a maximum of 16MB. You might consider adding additional Flash memory to meet the space requirements of the IOS version that you have chosen to run. For a Cisco 2501, the base IP version of IOS 12.0 requires a minimum of 8MB of Flash memory. So, if you had a Cisco 2501 that shipped with only 4MB of Flash, you would require at least one additional 4MB SIMM. For IOS versions with more advanced feature sets, it is not uncommon to require at least 16MB of Flash.
RAM: Random Access Memory (RAM) represents the non-permanent or volatile working area of memory on a Cisco router. When the router is powered down, the contents of RAM are lost. By default, RAM is broken up into two main areas - Main Processor Memory, and Shared I/O Memory. Main Processor Memory is where the routing table, ARP tables, and running configuration are stored. Shared I/O Memory is used as a buffer location for temporarily storing packets prior to processing. Most Cisco 2500 routers will have 2MB of RAM soldered to the system board (this amount, however, depends on the revision number of the router), along with one SIMM slot to add additional RAM. The maximum amount of RAM that can be added to a Cisco 2500 is 16MB. If 16MB is added, that provides a maximum of 18MB of available RAM. In cases where a RAM SIMM is installed, its capacity will be used as Main Processor Memory, while the onboard RAM (2MB) will be used as Shared I/O memory. If no SIMM chip is present, that 2MB of on-board RAM will be split between both areas, providing each with 1MB of working space. This should be avoided for performance reasons.
NVRAM: Non-Volatile Random Access Memory (NVRAM) is used as the storage
location for the router's startup configuration file. After the router loads its IOS image,
the settings found in the startup configuration are applied.
When changes are made to a router's running configuration,
they should always be saved to the startup configuration (stored in NVRAM)
or they will be lost when the router shuts down.
Remember that the running configuration is stored in RAM,
which is erased when the router is powered down.
On a Cisco 2500 series router, NVRAM is a relatively tiny 32KB in size.
Knowing what's going on where is an important part of not only understanding how a
Cisco router operates, but will also help to determine the source of problems or issues,should the need arise.