1,885
edits
Changes
→Memory Design
Process B and C may be executing the same program. In this cases, the memory map active while each process is running contains the same program, but different data pages. The program is only loaded into memory once, reducing memory requirements.
Advanced use of the MMU by the operating system enable enables features such as virtual memory (pages which are not in use are placed in storage (on disk) until required), demand-loading (pages of data or software are only retrieved from disk into memory when they are accessed for the first time), and copy-on-write (two processes accessing a copy of the same data page, until one of them writes to the page, at which point the operating system makes a copy of the page and sets up each process to access their own copy - which gives the same result as having two private copies of the page, without using additional memory until absolutely necessary).
The cache size and type, page size, levels of memory maps (one to three levels of indirection are common), and page attributes vary significantly between computer architectures.