The primary distinctions between computer memory and storage are between volatility and non-volatility, and between performance and capacity.
- Volatility vs. non-volatility. Memory, for instance, Random Access Memory (RAM), is volatile. This volatility means that when power to the system is turned off, the data is lost. In contrast, storage is non-volatile, so it retains data even without power.
- Performance vs. capacity. In most cases, storage is much slower than memory. In contrast to storage, RAM is directly connected to the CPU on a wide and fast bus.
Computer memory delivers fast access to data, while computer storage offers greater capacity.
Main Types of Memory
Let’s take a closer look at the three main types of computer system memory: primary, cache, and secondary memory. Perhaps confusingly, “secondary memory” is also known as storage.
Primary memory is random access memory, or RAM. Memory chips receive and process CPU instructions for computing and storage commands. Processor registers each hold small bits of data, and interact with the CPU to perform mathematical calculations and issue instructions for data operations. (Read-only memory, or ROM, resides on the BIOS chip.)
Primary memory is volatile memory that the CPU accesses directly. This definition includes cache memory, but primary memory is the term most often used to describe DRAM memory modules connected to the CPU by a fast bus. DRAM chips store data for CPU calculations. RAM communicates the calculations as a set of instructions to attached/networked storage media.
This is volatile storage that is dependent on uninterrupted power, so when the CPU powers down, so does the memory and any data stored in RAM is lost. Upon startup, the system accesses the OS and starting applications from storage, and repopulates primary memory. Although DRAM is slower than cache memory’s SRAM, it’s architecture and direct connection to the CPU allow it to transfer data considerably faster than secondary memory, or storage.
Cache memory is a high-speed memory cache for high-speed data processing. Cache memory identifies repeated instructions and data located in primary memory, and duplicates to its memory. Instead of the CPU repeatedly accessing slower primary memory for the same instructions and data, it accesses faster cache.
Sometimes called CPU memory, cache typically runs on high-performance SRAM memory modules. The CPU can access the faster cache memory to run performance sensitive operations. Cache memory is usually integrated under the motherboard, or on a different chip with a bus interconnect to the CPU.
Cache memory stores instructions and data that the CPU frequently accesses during computer operations. Instead of having to access this repeated information from primary memory, the CPU can retrieve it faster from high-performance cache memory.
To achieve this level of performance, when the CPU processes data and instructions it first looks in cache memory before primary memory. Cache memory is not monolithic: multilevel caching is even more efficient because the CPU can prioritize repeated data and instructions in high or lower cache performance tiers.
Main Types of Storage (also known as Secondary Memory)
Secondary memory is computer storage, where the system retains applications and data on non-volatile media. The CPU is incapable of directly reading and writing data on storage. It sends a read/write (or load/store) command containing a specific storage address to RAM. The storage controllers receive the command and fulfill the request.
So-called secondary memory is in fact computer storage. There are many different types of storage media including hard disk drives, solid-state drives, tape, thumb drives, and optical disk. Tape maintains a presence for active archives and high availability storage in regulated industries. But HDD and SSD are by far the most common types of storage in the data center.
- Hard disk drive (HDD): The hard disk drive enables the computer system to write and read on the magnetic hard disk. The drive consists of the desk with a moving arm called an actuator, and a read/write head that the actuator physically moves to disk locations. Physical components limit HDD speeds, and the head pauses in position for the individual sector to pass beneath it as the hard disk rotates.
- Solid State Drive: (SDD): A solid state drive is a non-volatile storage medium that stores persistent data on flash memory. In contrast to HDD, SSD has no moving parts so is mechanically more reliable.
Key Differences between Memory and Storage
- Memory includes cache and primary memory in RAM. It formally includes storage as well and secondary memory.
- High-performance data located close to the CPU. SRAM is more expensive than DRAM; and DRAM more expensive than storage media.
- Upgradeable; expensive compared to storage media.
- Stores CPU instructions: cache for better efficiency with frequently repeated instructions, and primary to communicate CPU instructions with other computer devices and components.
- Although storage is also a type of memory, it differs from cache and primary memory because it is non-volatile.
- Slower speeds but much higher capacity at lower cost
- Upgradeable; HDD is affordable, and SSD prices are dropping closer to be commensurate with fast HDD.
- Stores data until scheduled data movement or deletion. Unpowered hard disk and tape will retain data indefinitely. Unpowered SSD may retain data for up to two years, but in practice this period is considerably shorter.