Memory management is essentially putting all the parts of the process that will run into memory before the process is executed. For that, all parts of the process must have their own place in physical memory. But not all parts of the process will be executed, such as statements or options that will only be executed under certain conditions. An example is error messages that only appear when an error occurs when the program is run. Functions that are rarely used. Allocation of memory larger than required. Example: array, list, and table. In large capacity memory, these things will not be a problem. However, in very limited memory, this will decrease the utility optimization of the physical memory space. As a solution of these problems, we use the concept of virtual data room. virtual data room is a technique that separates between logical memory and physical memory. This technique hides the physical aspects of memory from the user by making the memory as the virtual address location of unlimited bytes and puts some part of the virtual data room in logical memory.
In contrast to the limitations of physical memory, virtual data rooms can accommodate large-scale programs, beyond the capacity of the available physical memory. The principle of virtual memory to remember is that: “The maximum speed of process execution in virtual memory can be the same, but it never goes beyond the same process execution speed in the system without using virtual data room.” The concept of virtual memory was first proposed by Fotheringham in 1961 on the Atlas computer system at the University of Manchester, England. “As stated above that only part of the program is put in physical memory. This has the advantage of reducing the required I / O process (I / O traffic is low). For example, the program needs to read from disk and insert it in memory every time it is accessed. Space becomes more liberal because of the reduced physical memory used. For example, for a 10 MB program, not all parts are included in the physical memory. Error messages are only included if an error occurs. The increased response, due to decreased I / O load and memory. Increasing number of users who can be served. The wide available memory space allows the computer to receive more requests from users.