Basic Memory Hardware Settings

Specifically, for the process, memory ranges from address 0 to the end address that was allocated to it (e.g., address 1024.) However, this chunk of memory is actually located somewhere in the midst of the computer's main memory, starting at some greater address than 0. In other words, the OS gives every process the illusion that its memory is the only existing one (as though other processes don't exist.)

To know where every process's memory chunks are located, the operating system uses 2 registers: the base register (which tells at which address the memory chunk starts) and the limit register (telling how large the chunk is.)

What process is located at the memory's actual 0th address? This is the boot loader program, whose purpose is to boot the operating system as we learned in Topic 2, Slides 42-43.

In order to prevent a process from illegally accessing the memory of another process, the OS will check if the address that the process is trying to access is located within the following interval of addresses: [base, base + limit).