Difference between Primary and Secondary Memory

Computer Memories store data and instruction. Memory system can be divided into 4 categories:

  • CPU register
  • Cache memory
  • Primary / Main memory
  • Secondary Memory / Mass Storage

They can be represented in an hierarchical form as:



1. Primary / Main memory:
Primary memory is the computer memory that is directly accessible by CPU. It is comprised of DRAM and provides the actual working space to the processor. It holds the data and instructions that the processor is currently working on.

2. Secondary Memory / Mass Storage:
The contents of the secondary memory first get transferred to the primary memory and then are accessed by the processor, this is because the processor does not directly interact with the secondary memory.

Now, Let’s see the difference between Primary memory and Secondary memory:

Sr.No. Primary memory Secondary memory
1. Primary memory is temporary. Secondary memory is permanent.
2. Primary memory is directly accessible by Processor/CPU. Secondary memory is not directly accessible by the CPU.
3. Nature of Parts of Primary memory varies, RAM- volatile in nature. ROM- Non-volatile. It’s always Non-volatile in nature.
4. Primary memory devices are more expensive than secondary storage devices. Secondary memory devices are less expensive when compared to primary memory devices.
5. The memory devices used for primary memory are semiconductor memories. The secondary memory devices are magnetic and optical memories.
6. Primary memory is also known as Main memory or Internal memory. Secondary memory is also known as External memory or Auxiliary memory.
7. Examples: RAM, ROM, Cache memory, PROM, EPROM, Registers, etc. Examples: Hard Disk, Floppy Disk, Magnetic Tapes, etc.

GeeksforGeeks has prepared a complete interview preparation course with premium videos, theory, practice problems, TA support and many more features. Please refer Placement 100 for details

My Personal Notes arrow_drop_up


If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.