⇰ DEMAND PAGING :- A demand paging system is basically advanced version of paging system with swapping where processes reside in secondary memory and pages are loaded into memory only on demand, not in advance. When we want to execute a process, we swap it into memory. Rather than swapping the entire process into memory. Let us consider an executable program loaded from disk into memory. One option is to load the entire program in physical memory at program execution time. It may be possible that we may not initially need the entire program in memory. Suppose a program starts with a list of available options from which the user is to select. Loading the entire program into memory results in loading the executable code for all options, regardless of whether or not an option is ultimately selected by the user. An alternative strategy is to load pages only as they are needed. This technique is known as demand paging. Demand paging is commonly used in virtual memor
Basically an address generated by the CPU is commonly referred as a logical address, whereas an address seen by the memory unit is commonly referred as a physical address.The compile-time and load-time address-binding methods generate identical logical and physical addresses. However, the execution-time address binding scheme results in differing logical and physical addresses. In this case, we usually refer to the logical address as a virtual address. The set of all logical addresses generated by a program is a logical address space. The set of all physical addresses corresponding to these logical addresses is a physical address space. Thus, in the execution-time address-binding scheme, the logical and physical address spaces differ. The run-time mapping from virtual to physical addresses is done by a hardware device called the memory-management unit (MMU). The user program generates only logical addresses and thinks that the process runs in locations 0 to max. However, these logical