Memory mapping is the technique of assigning specific memory locations to specific capabilities. For example, the stack can be "mapped" or placed in memory (usually towards the high end of memory). The "heap" is often placed just below the stack.
Not only are software constructs placed (mapped) into specific locations in memory, but peripherals can be mapped to memory as well. For example, a serial port may have several registers "mapped" into memory at specific locations. The means that if you want to send a message out the serial port, you would perform the same operation as you would writing to memory, except that you would provide the address of the write register of the serial port. In this way, peripherals appear exactly the same as memory.
The technique replaces the older "port" access in which peripherals were accessed via a different set of signals. (basically a different address space which was access via the "port" command rather than the memory read/write).
Chat with our AI personalities