Logical address

In computing, a logical address is the address at which an item (memory cell, storage element, network host) appears to reside from the perspective of an executing application program.

A logical address may be different from the physical address due to the operation of an address translator or mapping function. Such mapping functions may be, in the case of a computer memory architecture, a memory management unit (MMU) between the CPU and the memory bus.

There may be more than one level of mapping. For example, on multiprocessor configurations of the IBM S/360, S/370 and successors, IBM distinguishes among

  1. Virtual address seen by the program
  2. Real address, the result of translating a virtual address
  3. Absolute address, the result of mapping a real address using a low-storage prefix assigned to each CPU.

Computer memory

The physical address of computer memory banks may be mapped to different logical addresses for various purposes.

In a system supporting virtual memory, there may actually not be any physical memory mapped to a logical address until an access is attempted. The access triggers special functions of the operating system which reprogram the MMU to map the address to some physical memory, perhaps writing the old contents of that memory to disk and reading back from disk what the memory should contain at the new logical address. In this case, the logical address may be referred to as a virtual address.

Notes

References

See also

Uses material from the Wikipedia article Logical address, released under the CC BY-SA 4.0 license.