Have you ever wondered what will happen if there is no hierarchy in your schools, colleges or offices?
Don’t you think that there will be too much chaos?
If hierarchy was not there, no jobs or specific jobs would have been designed or maybe everyone would have been doing the same jobs.
As much as hierarchy is essential in real life, it is also important in computer systems for their efficient working.
One of the important modules of a computer system is memory. However, memory is quite limited in a computer system.
Therefore, to decide which part of the memory will perform which function or which part of memory is essential, proper hierarchy is maintained in a computer system as well.
With the help of memory hierarchy, the system’s memory is further divided into multiple levels depending upon the performance of the device.
Here, every component will perform a specific task in the system. This is why memory levels must be assigned in such a way that the system’s access time is reduced.
However, when it comes to designing a memory hierarchy, you need to keep certain factors in mind.
Let’s understand each of the components and factors related to memory hierarchy in mind.
Parts of A Memory Hierarchy
To ensure that the system is operating correctly, the built-in system incorporates additional storage in addition to the main memory.
In a computer system, memory hierarchy is divided into two types:
- Internal Memory
- External Memory
The internal memory of the system can be accessed directly by the processor of the system. This type of memory constitutes components such as CPU registers, cache and the system’s main memory.
The external memory of the system can not be accessed directly by the processor of the system. It generally uses the Input/output module to access the external memory. This type of memory constitutes components such as magnetic tape, optical disk and magnetic tape.
Characteristics Of A Memory Hierarchy
With the help of implementing a memory hierarchy, the system is made more efficient to overcome traditional system memory management problems. A memory hierarchy of a system must have the following characteristics.
The ability of the memory hierarchy defines the amount of data it will be able to store. However, generally, the capacity of memory is increased by moving from top to bottom in the memory hierarchy.
Originally systems were developed without the concept of memory management which resulted in increased speed differences between the registers and the CPU.
The increased gap in the access time results in the slow performance of the system. Hence, to eliminate the gap, there was a requirement for the memory hierarchy. With the help of memory hierarchy, the access time is reduced while the performance of the system is increased.
The access time of a system is defined as the time it takes your system to process and provide the data that you have asked for. When you move from the top to bottom, the access time is more likely to increase in the memory hierarchy.
Cost Per Bit
One important characteristic of the memory hierarchy is its cost per bit. Generally, when we traverse from top to bottom, most likely the component cost will increase. In simple words, the cost of internal memory is expected to be more than that of external memory.
Crucial Components Of A Memory Hierarchy
A memory hierarchy of a system comprises the following components:
The Cache memory of a system stores the data which is most frequently accessed by the system. It is present on the processor of the system and you may not be able to find it on another circuit. However, if your system has only a single core, it is most unlikely to have multiple levels of cache.
Another important level of the memory hierarchy is the magnetic disk. These circular-shaped plates are used in memory to read and write heads. Usually, both faces of a disk are employed by the system and it may stack multiple disks on the spindle through read and write heads.
A magnetic tape is the last level of the memory hierarchy. It is used to create and store the backup of huge data. In order to use the strip, the computer system will have to mount the tape to use the required data.
You can unmount the tape after accessing the data. Magnetic tapes may not be preferred because of their slow access time but are used because of their ability to store huge amounts of data.
To communicate directly with your system, main memory is used. This is the main storage unit of your system. In a computer system, the main memory is the fastest and largest memory that stores data whenever you perform an operation on the system.
Registers are also called static RAM and can be used to store data words. One of the most important registers of your system is a program counter register which can be found in almost every process.
A computer system uses multiple mechanisms like memory hierarchy to maintain the efficiency of the system and use resources efficiently. One such protocol used by the system is the stop-and-wait protocol.
In this protocol, the sender sends the required data to the receiver. When it sends the data, the sender stops and waits till it receives an acknowledgement that the receiver has received the data. After receiving the acknowledgement, the sender proceeds with further actions.
This is an error control mechanism used by the system to ensure that the receiver has received the data in the required form.
With the advancement of technology, computer systems are becoming more complex. However, to make them simpler, different protocols and mechanisms are used including the implementation of the memory hierarchy.
It helps you decrease the access time of the system and at the same time increases the performance of your system.
Besides that, it is important to ensure that you understand the requirement of every piece of equipment to manage memory properly.