Physical memory, also known as primary storage or RAM (Random Access Memory), refers to the memory chips that are physically present in a computer system. These memory chips are responsible for storing data that is currently being used or processed by the computer.

Physical memory is a volatile type of memory, meaning that data is lost when the power is turned off. It is typically made up of small memory chips, either on the motherboard or in the form of a RAM module, that can be easily upgraded or replaced. The amount of physical memory present in a computer system is referred to as its memory capacity.

Physical memory is a finite resource, and the amount of memory that a computer system has will directly affect its performance. When the computer is running low on physical memory, it may start to use the hard drive as virtual memory, which can slow down the performance of the system. To ensure optimal performance, it is important to have enough physical memory for the tasks that the computer is performing.

Memory can also be classified into two broad categories :

  1. Volatile memory: Memory that requires power to retain data. Once power is lost, the data stored in this memory is also lost. RAM (Random Access Memory) is an example of volatile memory.
  2. Non-volatile memory: Memory that does not require power to retain data. Once data is stored, it remains stored even when power is lost. Examples of non-volatile memory include ROM (Read-Only Memory) and flash memory.

Memory hierarchy:

1. Cache Memory:

Cache memory is a small, high-speed memory that is used to store frequently accessed data. It is located on the CPU or in close proximity to it, and it is used to speed up the processing of data. Cache memory is faster than RAM and is used to hold the most recently used data so that the CPU can quickly access it.

2. Register Memory

A register is a small, high-speed memory that is located within the CPU. It is used to hold data that the CPU is currently working on, and it is the fastest type of memory in a computer system. Registers are used to hold data that the CPU is currently processing and they are typically smaller than cache and RAM

3. Main memory or primary memory

The main memory unit that connects directly to the CPU is the primary memory.

  • Random Access Memory: RAM is also known as volatile memory. Generally, RAM is used to store temporary storage of output data, input data, and intermediate results.
    • Static RAM or SRAM
    • Dynamic Ram or DRAM
  • Read-only memory: ROM is not as accessible as RAM and is, therefore, non-volatile memory. Once a ROM chip is programmed it cannot be rewritten or programmed. The only changes you can make in ROM is at the time of manufacturing.
    • Programmable ROM or PROM
    • Electrically Erasable Programmable ROM or EEPROM
    • Erasable Programmable ROM or EPROM

4. Auxiliary memory or secondary memory

Auxiliary memory, also known as secondary storage or external storage, refers to any type of memory that is not directly connected to the computer’s CPU. It is used to store data that is not currently being used by the computer, but that needs to be kept for long-term storage.

  • Magnetic Disk: A magnetic disk is a type of storage device that uses magnetic disks to store data. These disks are coated with a magnetic material and are used in devices such as hard disk drives (HDD) and floppy disks. Magnetic disks can be both internal and external to a computer. They are non-volatile, meaning that the data stored on them is retained even when the power is turned off. They are commonly used for long-term storage and backup.
  • Magnetic Tape: A magnetic tape is a type of storage device that uses magnetic tape to store data. The tape is coated with a magnetic material and is used in devices such as tape drives. Magnetic tapes are mainly used for backup and archival purposes, they are also non-volatile, meaning that the data stored on them is retained even when the power is turned off. They have a higher storage capacity than magnetic disks and can store large amounts of data. However, they are slower in data access and retrieval and require more physical space than disk storage.

Examples of auxiliary memory include:

  1. Hard Disk Drive (HDD): A non-volatile storage device that uses magnetic disks to store data. HDD has a larger storage capacity than RAM and can store large amounts of data even when the computer is turned off.
  2. Solid-State Drive (SSD): A non-volatile storage device that uses flash memory to store data. It is faster and more reliable than an HDD and it is becoming a popular alternative for long-term storage.
  3. USB drive: A USB drive is a small, portable storage device that can be plugged into a computer’s USB port. USB is often used to store and transfer data between computers.
  4. Optical storage devices (CD, DVD, Blu-ray): These are non-volatile storage devices that use laser technology to read and write data on a disk. They are mainly used for backup and archival purposes.
  5. Cloud storage: This is a type of remote storage that allows users to store data on a remote server and access it from anywhere with an internet connection.

Difference Between all of them:

Level1234
NameRegisterCacheMain MemorySecondary Memory
Size    <1 KBless than 16 MB        <16GB       >100 GB
ImplementationMulti-portsOn-chip/SRAMDRAM (capacitor memory)    Magnetic
Access Time  0.25ns to 0.5ns0.5 to 25ns80ns  to 250ns50 lakh ns
Bandwidth20000 to 1 lakh MBytes5000 to 150001000 to 500020 to 150
Managed byCompilerHardwareOperating System Operating System
Backing MechanismFrom cache from Main Memoryfrom Secondary Memoryfrom CD

Advantages :

  • VM supports Swapping.
  • Common data or code may be shared to save memory.
  • The process need not be in memory as a whole.
  • No need for complicated overlay techniques.
  • The process may even be larger than all of the physical memory.
  • Data/code can be read from the disk as needed.
  • Code can be placed anywhere in physical memory without relocation.
  • More processes can be maintained in the Main Memory, increasing the CPU’s effective use.
  • Programs can be compiled with their own address space.
    • No need for the compiler to generate addresses that are unique from addresses for other programs
    • Don’t need to break the program into fragments to accommodate memory limitations

Disadvantages :

  • Memory requirements.
  • Longer memory access times.

Leave a Reply