Address is used to uniquely identify the location of something inside the CPU memory. These addresses are divided into two major types, the first being the logical address and the other, physical address. Both having different but somewhat similar functionality.
The logical address serves as a virtual address which is viewable by the user program. The Physical address, however, is not viewable directly by the user program and the logical address is utilized as a resource to access the physical address with the aid of a pointer.
A logical address is also generated by a Central Processing Unit when a program is being executed whereas a physical address is an actual location found within the memory unit. When a logical address is mapped to its corresponding physical address, it becomes a joint a memory management unit between the CPU and the bus that carries the memory since the tasks performed are similar when it gets to the address translation layer and the CPU.
The best way to define such a layer that is created is a data link layer that serves as a connector between the hardware and software of the whole computer network.
What is a Logical Address?
Address of something generated by the central processing unit while a program is running is referred to as a Logical Address. The address is also referred to as a virtual address. This is because it is used as a guideline for the architecture to understand where other things are positioned as it does not stay in the system hence variable
A program that helps in finding the base address is required by the computer in order to find other locations within the system hence the logical address. Another way of understanding the operations of the logical address is a memory block that is used in the beginning within the system. It is combines with a base address to form a physical address that becomes a variant from other kinds of address due to the mapping translator.
What maps the logical address to its correlating physical address is the memory management unit. Load time and Compile-time address binding methods are used to create identical logical address and physical address while run time address binding produces a different logical and physical address. Logical addresses usually range from zero to maximum (0 to max). This is because the user program that generates a logical address assumes that the process runs in locations 0 to max. However, for a logical address to be used, it must be mapped onto a physical address.
Another important fact to note is that the logical memory gets erased in the event the system is rebooted making the information collected variable with time.
What is a Physical Address?
Physical Address is used to identify a physical location within the memory management unit which computes according to the correlating logical address. This address is not directly accessible or viewed by the user program hence a logical address needs to be mapped to it to make it accessible with the aid of pointers which reveal location but not the code. Sets of all corresponding physical addresses existing within the logical address are called physical address space.
When a valid address is utilized as a memory address, it is moved on the base enlist where the memory administration unit changes over sensible locations into physical locations. Address-restricting strategies, gathering time and load-time create Intelligent and physical locations. Physical addresses usually range R + Zero (R+0) to R + maximum (R + max) for a base or relocation register value ‘R’.
Differences Between Logical and Physical Address
Basis of Distinction
The basic way of differentiating between these two addresses is that Logical address is the address of something that the central processing system generates in perspective of a program, while the physical address is the actual address of something that the memory management unit computes.
Set of all addresses generated by the central processing unit are referred to as logical address space. However, Physical address space refers to all physical addresses sets mapped to the corresponding logical addresses.
The logical address exists virtually and does not have a specific location to exist physically in the memory unit hence referred to as virtual address whereas the physical address is an accessible physical location existing within the memory unit.
Binding Method – Identical
Logical and physical addresses that are identical are created by binding methods known as Load time and Compile-time address.
Binding Method – Different
Run-time address binding method generates logical and physical addresses that tend to differ from one another.
Logical address is variable hence will keep changing with the system but the physical address of that object always remains constant. This is why the logical address get erased when the system is rebooted while no change happens to its counterpart, the physical address.
Logical Address vs. Physical Address: Comparison Chart
Summary Logical Address vs. Physical Address
- Logic address is generated by the Central Processing Unit.
- Memory Management Unit is what computes the physical address.
- The user program has the ability to view the Logical address.
- The user program does not have the ability to view the physical address directly.
- All sets of logical addresses are referred to as logical address space.
- Physical address space refers to all sets of physical addresses.
- The logical address is virtual but a physical address can be accessed physically.
- Load time and Compile-time address binding methods are used to create identical logical address and physical address.
- Logical address is variable and changes from time to time.
- Physical address is constant hence does not change.
- Logic address is erased when the system is rebooted.
- Physical address is not affected when the system is rebooted.