Game of Zones
I still have an old Apple IIe, fully functional. At those days before the Internet, SW ran “bare-metal” it could access any HW registers, ROM and RAM. Programs even overwrote their own code either as a bug or a weird feature.
Later with the advent of multi-process OS, virtual memory was introduced to prevent one process from overwriting another, and a kernel was set to manage the mapping of physical memory to the various processes through a Memory Management Unit (MMU).