VIRTUAL MEMORY

What is Virtual memory?


  • Virtual memory is the separation of user logical memory from physical memory.
  • This separation allows an extremely large virtual memory to be provided for programmers when only a smaller physical memory is available. 
  • Virtual memory is a technique that allows the execution of processes which are not completely available in memory. 
  • Following are the situations, when entire program is not required to be loaded fully in main memory.


  1. User written error handling routines are used only when an error occured in the data or computation.
  2. Certain options and features of a program may be used rarely.
  3. Many tables are assigned a fixed amount of address space even though only a small amount of the table is actually used.
  4. The ability to execute a program that is only partially in memory would counter many benefits.
  5. Less number of I/O would be needed to load or swap each user program into memory.
  6. A program would no longer be constrained by the amount of physical memory that is available.
  7. Each user program could take less physical memory, more programs could be run the same time, with a corresponding increase in CPU utilization and throughput.


  • Virtual memory is commonly implemented by demand paging. 
  • It can also be implemented in a segmentation system. 
  • Demand segmentation can also be used to provide virtual memory.


No comments:

Post a Comment