Tech moves fast! Stay ahead of the curve with Techopedia!
Join nearly 200,000 subscribers who receive actionable tech insights from Techopedia.
An address space is a range of valid addresses in memory that are available for a program or process. That is, it is the memory that a program or process can access. The memory can be either physical or virtual and is used for executing instructions and storing data.
On a computer, each process and device is allocated an address space, which holds a certain portion of the processor's address space. The processor's address space is typically restricted to the width of its registers and address bus.
Address space is often classified as either flat, where the addresses are represented as incrementally increasing integers that start at zero, or segmented, where the addresses are portrayed as independent segments augmented by offsets. In some systems, the address space may be modified from one format to the other via a process generally known as thunking.
The size of an address space can be made larger than that of physical memory by using a memory management technique called virtual memory. A virtual memory, also known as a page file, is actually a physical file on disk that acts like an additional RAM or RAM module. Thus, an address space consists of both physical memory and virtual memory.