Address space
<operating system, architecture> The range of addresses which a processor or process can access, or at which a
device can be accessed.
The term may refer to either
physical address or
virtual address.
The size of a processor's address space depends on the width of the processor's
address bus and address registers.
Each device, such as a memory
integrated circuit, will have its own local address space which starts at zero.
This will be mapped to a range of addresses which starts at some base address in the processor's address space.
Similarly, each
process will have its own address space, which may be all or a part of the processor's address space. In a
multitasking system this may depend on where in memory the process happens to have been loaded.
For a process to be able to run at any address it must consist of position-independent code.
Alternatively, each process may see the same local address space, with the
memory management unit mapping this to the process's own part of the processor's address space.